{"main_topic":"education","sub_topic":"georgiainsights","topic":"georgia_student_growth_model_end_of_grade","key":"education/georgiainsights/georgia_student_growth_model_end_of_grade","version":"1.0.0","year_min":2015,"year_max":2023,"year_gaps":[2020,2021,2022],"update_frequency":"annual","detail_levels":["districts","schools","states"],"default_detail":"schools","path_template":"education/georgia_student_growth_model_end_of_grade/year={year}/{detail}.parquet","grain":["year","district_code","school_code","grade_level","subject"],"title":"Student Growth Model (SGM) End-of-Grade Results","summary":"Student growth percentiles on Georgia Milestones grades 4-8 tests by school, district, grade, and subject, 2015-2023.","description":"Georgia Student Growth Model (GSGM / SGP) on End-of-Grade (EOG) Milestones assessments. Each row is a (year x detail_level x geography x subject x grade) cohort's growth-related measures: Median Student Growth Percentile (1-99 ordinal), share of students at or above Typical growth (SGP >= 35), and (in 2023 only) a three-bucket SGP split (Low < 35, Typical 35-65, High > 65). 2015-2019 also report achievement-level percentages (Proficient / Developing Learner and above) on the underlying EOG assessment. Data covers reporting years 2015, 2016, 2017, 2018, 2019, and 2023. No GSGM was reported during COVID years 2020-2022. 2015-2016 report four subjects (ELA, Math, Science, Social Studies); 2017-2019 report only ELA + Math; 2023 reports only ELA + Math.","source":"Georgia Insights (GaDOE) — Georgia Student Growth Model on End-of-Grade Milestones assessments","source_url":"https://georgiainsights.gadoe.org/data-downloads/","endpoint":"/api/v1/education/georgia_student_growth_model_end_of_grade","columns":[{"name":"year","type":"integer","role":"year","nullable":false,"label":"Year","short_description":"","description":"Ending calendar year of the school year (spring year). E.g., 2017 = school year 2016-2017. Data published years are 2015, 2016, 2017, 2018, 2019, 2023.","valid_values":null,"example":2017,"unit":null,"value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"district_code","type":"string","role":"fk_district","nullable":true,"label":"District Code","short_description":"","description":"3-digit GOSA district/system code (FK to districts dimension). 7-digit charter / state-school codes are preserved in full; 2015-2017 school-level rows published under the bare charter SYSTEM codes 782/783 are promoted to the 7-digit campus code (system + school code) used by 2018+ files. NULL for state-level rows.","valid_values":null,"example":"601","unit":null,"value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"school_code","type":"string","role":"fk_school","nullable":true,"label":"School Code","short_description":"","description":"4-digit GOSA school code (FK to schools dimension, composite with district_code). NULL for district- and state-level rows.","valid_values":null,"example":"0177","unit":null,"value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"grade_level","type":"string","role":"categorical","nullable":false,"label":"Grade Level","short_description":"Grade tested, 04 through 08 (grade 3 has no prior score for growth); 'all' is the across-grades aggregate.","description":"Grade level as a zero-padded 2-char string categorical, matching the rest of the per-grade education topics. Per-grade rows carry `\"04\"`-`\"08\"` (EOG SGP is only reported for grades 4-8 because an SGP requires a prior-year score, and grade 3 is the first tested grade). The published AllGrades aggregate (2015-2019 only) is preserved as `\"all\"` because its `sgp_median` cannot be reconstructed from the per-grade medians — analogous to the `\"all\"` value used in the `demographic` column for cross-demographic aggregates. 2023 has no AllGrades row in bronze.","valid_values":["all","04","05","06","07","08"],"example":"04","unit":null,"value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":true,"metric_component":null},{"name":"subject","type":"string","role":"categorical","nullable":false,"label":"Subject","short_description":"The content area tested (english_language_arts, mathematics, science, social_studies).","description":"Snake-case subject label. 2015-2016 report four subjects (english_language_arts, mathematics, science, social_studies); 2017+ reports only english_language_arts and mathematics.","valid_values":["english_language_arts","mathematics","science","social_studies"],"example":"english_language_arts","unit":null,"value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":true,"metric_component":null},{"name":"num_tested","type":"integer","role":"metric","nullable":true,"label":"Number Tested","short_description":"","description":"Number of students who took the EOG assessment. NULL in 2023 (Era 6 does not report this column — see bronze-data-structure.md §Era 6).","valid_values":null,"example":180,"unit":"count","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"num_sgp_received","type":"integer","role":"metric","nullable":true,"label":"Number SGP Received","short_description":"","description":"Number of students with enough prior-year scores to receive a Student Growth Percentile (subset of num_tested in 2015-2019; the only count metric reported in 2023).","valid_values":null,"example":176,"unit":"count","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":"denominator"},{"name":"sgp_received_rate","type":"number","role":"metric","nullable":true,"label":"SGP Received Rate","short_description":"","description":"Share of tested students who received an SGP (num_sgp_received / num_tested). 0-1 decimal scale. NULL in 2023 (not reported).","valid_values":null,"example":0.98,"unit":"proportion","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"sgp_median","type":"number","role":"metric","nullable":true,"label":"SGP Median","short_description":"Median student growth percentile (1-99); 50 is average growth, higher means faster growth than similar peers.","description":"Median Student Growth Percentile on the 1-99 ordinal scale (the true SGP domain — there is no 0 or 100 SGP, so the range guard is tightened from the percentile default [0, 100] to [1, 99]). NOT converted to 0-1 — it's a percentile rank, preserved verbatim per data-cleaning-standards §4. Statewide median is 50 by construction. Values can be `.5` halves (e.g., 44.5). NULL on empty-cohort rows (num_sgp_received == 0): a median is undefined with no students, and bronze's sentinel 0 there is outside the valid 1-99 scale, so it is nulled rather than carried (which is why the tightened [1, 99] guard holds). The mask is recorded in the transform manifest (masked_values).","valid_values":null,"example":47.0,"unit":"percentile","value_min":1,"value_max":99,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"pct_proficient_learner_or_above","type":"number","role":"metric","nullable":true,"label":"Percent Proficient Learner or Above","short_description":"","description":"Share of students at the Proficient Learner achievement level or higher on the EOG assessment (0-1 scale; bronze / 100). NULL in 2023 (metric dropped).","valid_values":null,"example":0.27,"unit":"proportion","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"pct_developing_learner_or_above","type":"number","role":"metric","nullable":true,"label":"Percent Developing Learner or Above","short_description":"","description":"Share of students at the Developing Learner achievement level or higher on the EOG assessment (0-1 scale; bronze / 100). NULL in 2023 (metric dropped).","valid_values":null,"example":0.65,"unit":"proportion","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"pct_sgp_typical_or_high_growth","type":"number","role":"metric","nullable":true,"label":"Percent SGP Typical or High Growth","short_description":"","description":"Share of SGP-scored students with SGP >= 35 (Typical or High growth). 0-1 scale. NULL in 2023 — Era 6 replaced this with the three-bucket SGP split below.","valid_values":null,"example":0.63,"unit":"proportion","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"pct_sgp_low_growth","type":"number","role":"metric","nullable":true,"label":"Percent SGP Low Growth","short_description":"","description":"Share of SGP-scored students in the Low Growth band (SGP < 35). 0-1 scale. Era 6 (2023) only; NULL for 2015-2019.","valid_values":null,"example":0.34,"unit":"proportion","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"pct_sgp_typical_growth","type":"number","role":"metric","nullable":true,"label":"Percent SGP Typical Growth","short_description":"","description":"Share of SGP-scored students in the Typical Growth band (35 <= SGP <= 65). 0-1 scale. Era 6 only; NULL for 2015-2019. NOT the same as pct_sgp_typical_or_high_growth — Era 1-5's `% Typical or High` lumps typical and high together (SGP >= 35).","valid_values":null,"example":0.31,"unit":"proportion","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"pct_sgp_high_growth","type":"number","role":"metric","nullable":true,"label":"Percent SGP High Growth","short_description":"","description":"Share of SGP-scored students in the High Growth band (SGP > 65). 0-1 scale. Era 6 only; NULL for 2015-2019.","valid_values":null,"example":0.34,"unit":"proportion","value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null}],"key_metric":"sgp_median","usage":"Star-schema fact table. Join the districts dimension on district_code; the schools dimension on district_code + school_code. Read directly with DuckDB over Parquet.","limitations":"Suppressed cells are NULL (not zero). State rows have NULL district_code and school_code. District rows have NULL school_code.","null_semantics":{"suppressed_to_null":true,"zero_is_real":true},"available_years":[2015,2016,2017,2018,2019,2023],"schema_hash":"b96869f8e00ff393b0217be9b9e2b932b47f4c1b9d4ac90c24617d90fe5a912f","tags":["education","georgia insights","georgia_student_growth_model_end_of_grade"],"granularity_description":"One row per year, district_code, school_code, grade_level, subject (geography columns are NULL at higher aggregation levels).","example_queries":[{"description":"Latest year (2023), schools detail","query":"SELECT * FROM georgia_student_growth_model_end_of_grade WHERE year = 2023 LIMIT 100"},{"description":"District 601 in 2023","query":"SELECT * FROM georgia_student_growth_model_end_of_grade WHERE district_code = '601' AND year = 2023 LIMIT 100"},{"description":"Filter by grade_level = 04","query":"SELECT * FROM georgia_student_growth_model_end_of_grade WHERE grade_level = '04' AND year = 2023 LIMIT 100"}],"foreign_keys":[{"column":"district_code","target_object":"districts","target_columns":["district_code"],"attribute_columns_added":["district_name","district_census_id","district_type"],"scope":"domain"},{"column":"school_code","target_object":"schools","target_columns":["district_code","school_code"],"attribute_columns_added":["school_name"],"scope":"domain"}],"filters":[{"param":"year","kind":"year_exact","type":"integer","multi_value":false,"enum_enforced":false,"values":null},{"param":"year_min","kind":"year_range","type":"integer","multi_value":false,"enum_enforced":false,"values":null},{"param":"year_max","kind":"year_range","type":"integer","multi_value":false,"enum_enforced":false,"values":null},{"param":"detail","kind":"detail","type":"string","multi_value":false,"enum_enforced":true,"values":["districts","schools","states"],"default":"schools"},{"param":"district_code","kind":"foreign_key","column":"district_code","type":"string","multi_value":true,"enum_enforced":false,"values":null},{"param":"school_code","kind":"foreign_key","column":"school_code","type":"string","multi_value":true,"enum_enforced":false,"values":null},{"param":"grade_level","kind":"categorical","column":"grade_level","type":"string","multi_value":true,"enum_enforced":true,"values":["all","04","05","06","07","08"],"has_total":true,"total_value":"all","requires_single_value":false},{"param":"subject","kind":"categorical","column":"subject","type":"string","multi_value":true,"enum_enforced":true,"values":["english_language_arts","mathematics","science","social_studies"],"has_total":false,"total_value":null,"requires_single_value":true},{"param":"district_type","kind":"dimension_attribute","dimension":"districts","column":"district_type","type":"string","multi_value":true,"enum_enforced":true,"values":["commission_charter","resa","standard","state_agency","state_charter","state_school","state_special"]}],"filter_hints":[]}