{"main_topic":"education","sub_topic":"gosa","topic":"retained_students","key":"education/gosa/retained_students","version":"1.0.0","year_min":2004,"year_max":2024,"year_gaps":[],"update_frequency":"annual","detail_levels":["districts","schools","states"],"default_detail":"schools","path_template":"education/retained_students/year={year}/{detail}.parquet","grain":["year","district_code","school_code","demographic"],"title":"Retained (Held-Back) K-12 Students","summary":"Students held back a grade in Georgia public schools, with counts and the race/gender makeup of the retained group, by school and district, 2004-2024.","description":"Georgia Office of Student Achievement (GOSA) Retained K-12 dataset. For every Georgia public school, school district, and the state as a whole, reports the total number of students retained (held back) in grades K-12 during the school year, the total K-12 enrollment (2011 onward only), and a demographic breakdown of the retained population — counts and shares of retained by race and gender. The race axis carries six canonical codes (`native_american`, `asian_pacific_islander` — the bronze `Asian`/`Asians` label is a combined Asian/Pacific Islander bucket, with no separate Pacific Islander row — `black`, `hispanic`, `multiracial`, `white`); gender is `male`/`female`. Coverage spans the 2003-04 school year (filename year 2004) through the 2023-24 school year (filename year 2024) — 21 files.","source":"Governor's Office of Student Achievement (GOSA)","source_url":"https://gosa.georgia.gov/dashboards-data-report-card/downloadable-data","endpoint":"/api/v1/education/retained_students","columns":[{"name":"year","type":"integer","role":"year","nullable":false,"label":"Year","short_description":"","description":"Ending calendar year of the school year (2024 = 2023-2024). Sourced from the bronze `School Year` / `School_Year` column for 2011-2024 (cross-checked against the filename); from the filename for 2004-2010 (no year column in those eras).","valid_values":null,"example":2024,"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 code (zero-padded) for standard districts; 7-digit code for state charter / state school networks. NULL for state-level aggregate rows. FK to districts dimension.","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 (zero-padded). NULL for district- and state-level aggregate rows. FK to schools dimension (composite key with district_code).","valid_values":null,"example":"0103","unit":null,"value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":false,"metric_component":null},{"name":"demographic","type":"string","role":"fk_demographic","nullable":false,"label":"Demographic","short_description":"Student subgroup the row covers (race or gender); 'all' is the whole retained group. Race uses the combined asian_pacific_islander bucket.","description":"Canonical demographic code (FK to demographics dimension). `all` is the overall retained cohort; race uses the combined `asian_pacific_islander` bucket (pre-1997 OMB convention: the six race-bucket retained counts sum exactly to the total retained at the state row in every year, so Pacific Islanders are folded in, never published separately); gender is `male`/`female`. Race values are mutually exclusive with each other, as are gender values; `all` overlaps both axes.","valid_values":["all","asian_pacific_islander","black","female","hispanic","male","multiracial","native_american","white"],"example":"black","unit":null,"value_min":null,"value_max":null,"null_meaning":null,"key_metric_grain_contributor":true,"metric_component":null},{"name":"num_retained","type":"integer","role":"metric","nullable":true,"label":"Number Retained","short_description":"","description":"Number of K-12 students in this demographic at this entity who were retained (held back) during the school year. For `demographic = all`, the total retained count. NULL when suppressed.","valid_values":null,"example":13,"unit":"count","value_min":null,"value_max":null,"null_meaning":"Suppressed by GOSA (cell below the privacy reporting threshold; `TFS` / `Too Few Students` markers, plus blank cells in 2009).","key_metric_grain_contributor":false,"metric_component":"numerator"},{"name":"num_students","type":"integer","role":"metric","nullable":true,"label":"Number Students","short_description":"","description":"Total K-12 enrollment at this entity. Populated only on `demographic = all` rows in 2011 and 2013-2024. NULL for every non-`all` row (bronze publishes no per-demographic enrollment) and for every row in 2004-2010 (the wide-era bronze publishes no enrollment at all — its total columns are retained counts). 2012 is fully NULL: the 2012 bronze `Total Enrolled` is corrupt (inflated ~17x at every detail level, state row 27,864,309 vs ~1.65M expected) and is NULLed per the known-source-defect rule; 2012 `num_retained` is internally consistent and preserved. With `num_retained` on `all` rows this yields an overall retention rate.","valid_values":null,"example":3237,"unit":"count","value_min":null,"value_max":null,"null_meaning":"Enrollment not published for this cell: every non-`all` demographic row (no per-demographic enrollment exists), every row in 2004-2010 (the wide-format bronze publishes no enrollment column) and in 2012 (corrupt source enrollment, NULLed per §4b), plus 8 2016 `all` rows whose source enrollment was unpublished. NOT a suppression marker.","key_metric_grain_contributor":false,"metric_component":"denominator"},{"name":"pct_of_retained_cohort","type":"number","role":"metric","nullable":true,"label":"Percent of Retained Cohort","short_description":"Share of this entity's retained students who are in this demographic, on a 0-1 scale; a makeup share, NOT a retention rate, and NULL on the 'all' row.","description":"Share of the entity's total retained cohort who belong to this demographic, 0-1 scale (bronze 0-100 divided by 100; whole-percent precision in 2011-2024). NOT a within-demographic retention rate. In 2009 the published White and Multiracial percent columns are corrupt (both repeat the Male share); for those two demographics in 2009 the share is derived as num_retained / total retained from the internally consistent counts instead.","valid_values":null,"example":0.22,"unit":"proportion","value_min":null,"value_max":null,"null_meaning":"NULL on `demographic = all` rows (the share is 100%% by definition and not emitted) and when suppressed.","key_metric_grain_contributor":false,"metric_component":null}],"key_metric":"pct_of_retained_cohort","usage":"Star-schema fact table. Join the districts dimension on district_code; the schools dimension on district_code + school_code; the demographics dimension on demographic. Read directly with DuckDB over Parquet.","limitations":"`num_students` (total K-12 enrollment) is available only on `demographic = all` rows for 2011 and 2013-2024. It is NULL for every non-`all` demographic row (bronze has no per-demographic enrollment), for every row in 2004-2010 (the wide-format bronze publishes no enrollment column), and for all of 2012 (corrupt bronze `Total Enrolled`, inflated ~17x, is NULLed); 8 2016 `all` rows are also NULL where source enrollment was unpublished. An overall retention rate (`num_retained` / `num_students`) is therefore computable only on `demographic = all` rows in 2011 and 2013-2024. `pct_of_retained_cohort` is a SHARE of the total retained cohort that belongs to each demographic (it sums toward 1.0 across race demographics and across gender demographics within an entity), NOT a within-demographic retention rate; it is NULL on `demographic = all` rows (100% by definition). Suppressed cells (cohort below the privacy threshold) null `num_retained` and `pct_of_retained_cohort`.","null_semantics":{"suppressed_to_null":true,"zero_is_real":true},"available_years":[2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024],"schema_hash":"9a026e84857d0d0136be180ff026b8048541bc83f9f39b8af94c71c926420296","tags":["education","governor's office of student achievement","retained_students"],"granularity_description":"One row per year, district_code, school_code, demographic (geography columns are NULL at higher aggregation levels).","example_queries":[{"description":"Latest year (2024), schools detail","query":"SELECT * FROM retained_students WHERE year = 2024 LIMIT 100"},{"description":"District 601 in 2024","query":"SELECT * FROM retained_students WHERE district_code = '601' AND year = 2024 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"},{"column":"demographic","target_object":"demographics","target_columns":["demographic"],"attribute_columns_added":["demographic_label","demographic_category"],"scope":"global"}],"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":"demographic","kind":"foreign_key","column":"demographic","type":"string","multi_value":true,"enum_enforced":true,"values":["all","asian_pacific_islander","black","female","hispanic","male","multiracial","native_american","white"]},{"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"]},{"param":"demographic_category","kind":"dimension_attribute","dimension":"demographics","column":"demographic_category","type":"string","multi_value":true,"enum_enforced":true,"values":["aggregate","disability","economic_status","esol","foster_care","gender","grade","homeless_status","migrant_status","military","race","sped"]}],"filter_hints":[]}