Skip to content
← All datasets

Georgia Milestones End-of-Grade Assessment by Grade

Georgia Milestones End-of-Grade achievement levels by grade, subject, and demographic for schools, districts, and the state, 2015-2024.

Year coverage
20152024
Updated
annual
Version
1.0.0
Schema hash
692af1c294d3

Detail levels available

StateDistrictSchool · default

Overview

Georgia Milestones End-of-Grade (EOG) assessment results for Georgia public-school students in grades 3-8, disaggregated by individual grade level. Each row is one (entity x grade x demographic subgroup x subject) cell reporting the number of students tested plus the count and percentage of test-takers at each of four achievement levels (Beginning, Developing, Proficient, Distinguished), with derived cumulative developing-or-above and proficient-or-above shares. State, district, and school detail levels. School years 2014-15 through 2023-24; 2019-20 is absent (EOG administration cancelled, COVID-19).

Row grain: One row per year, district_code, school_code, demographic, grade_level, subject.

Key metric

pct_proficient_learner_or_abovePercent Proficient Learner or Above (proportion)

The single headline value most answers want.

Variables

Every column in the fact table. The code is the exact field name the API returns.

ColumnTypeUnitRangeNull?Description
yearYearintegernoEnding calendar year of the school year (e.g., 2024 = 2023-24), from the filename and cross-checked against the file's LONG_SCHOOL_YEAR. 2020 has no rows (EOG cancelled during COVID-19 closures).
Full description
Ending calendar year of the school year (e.g., 2024 = 2023-24), from the filename and cross-checked against the file's LONG_SCHOOL_YEAR. 2020 has no rows (EOG cancelled during COVID-19 closures).
district_codeDistrict CodestringyesGOSA district code (FK to districts dimension): 3-digit zero-padded standard codes or 7-digit state-charter / commission-charter / state-school codes. NULL on state-level rows.
Full description
GOSA district code (FK to districts dimension): 3-digit zero-padded standard codes or 7-digit state-charter / commission-charter / state-school codes. NULL on state-level rows.

Joins districts; adds its label columns.

school_codeSchool CodestringyesGOSA school code, zero-padded to 4 characters (composite FK to schools dimension with district_code; not globally unique on its own). NULL on district- and state-level rows.
Full description
GOSA school code, zero-padded to 4 characters (composite FK to schools dimension with district_code; not globally unique on its own). NULL on district- and state-level rows.

Joins schools; adds its label columns.

demographicDemographicstringnoStudent subgroup the row covers (race, gender, economic, disability, English-learner, etc.); 'all' is all students.
Full description
Canonical demographic subgroup (FK to the global demographics dimension), normalized from bronze SUBGROUP_NAME. This topic uses the split race convention: asian and pacific_islander are separate, mutually exclusive rows (the source publishes both labels in every year). 18 core subgroups in 2015-2019; active_duty and homeless added in 2021; foster_care and military_connected (renaming active_duty) added in 2022. NON-ADDITIVE MILITARY KEYS: active_duty (2021) and military_connected (2022+) never co-occur in a year, but conceptually active-duty dependents are a subset of military-connected students — do not sum the two keys across years as if disjoint.
22 allowed values
  • active_duty
  • all
  • asian
  • black
  • economically_disadvantaged
  • english_learners
  • female
  • foster_care
  • hispanic
  • homeless
  • male
  • migrant
  • military_connected
  • multiracial
  • native_american
  • not_economically_disadvantaged
  • not_english_learners
  • not_migrant
  • pacific_islander
  • students_with_disabilities
  • students_without_disabilities
  • white

Joins demographics; adds its label columns.

grade_levelGrade LevelstringnoGrade tested, 03-08; this is the grade-by-grade breakout that distinguishes this topic from the all-grades rollup.
Full description
Grade of the test-takers in this row, as a canonical 2-char zero-padded string. Bronze ACDMC_LVL is unpadded (3-8) in 2015 and 2019 and zero-padded (03-08) in all other years; gold normalizes both to 03-08. This column is the grain difference vs the all-grades rollup sibling topic.
6 allowed values
  • 03
  • 04
  • 05
  • 06
  • 07
  • 08
subjectSubjectstringnoEOG content area tested (ELA, mathematics, science, social studies, physical science); coverage varies by grade and year.
Full description
EOG academic subject. english_language_arts and mathematics span grades 3-8 in every year; science and social_studies are restricted to grades 5 and 8 from 2017 (social_studies to grade 8 only from 2021); physical_science (2022+) is an 8th-grade accelerated option. The natural grade x subject sparsity is preserved — untested combinations have no rows; rare out-of-pattern audit/retest cells are retained.
5 allowed values
  • english_language_arts
  • mathematics
  • physical_science
  • science
  • social_studies
num_testedNumber TestedintegercountyesNumber of students tested in this (entity x grade x subgroup x subject) cell. NULL when GOSA suppressed the cell (TFS); in 2024 GOSA extended suppression to this column (~30% of rows) while still publishing the rounded percentage distribution.
Full description
Number of students tested in this (entity x grade x subgroup x subject) cell. NULL when GOSA suppressed the cell (TFS); in 2024 GOSA extended suppression to this column (~30% of rows) while still publishing the rounded percentage distribution.
num_beginning_learnerNumber Beginning LearnerintegercountyesCount of students at the lowest achievement level (Beginning Learner). Bronze BEGIN_CNT; NULL when suppressed.
Full description
Count of students at the lowest achievement level (Beginning Learner). Bronze BEGIN_CNT; NULL when suppressed.
num_developing_learnerNumber Developing LearnerintegercountyesCount of students at the second achievement level (Developing Learner). Bronze DEVELOPING_CNT; NULL when suppressed.
Full description
Count of students at the second achievement level (Developing Learner). Bronze DEVELOPING_CNT; NULL when suppressed.
num_proficient_learnerNumber Proficient LearnerintegercountyesCount of students at the third achievement level (Proficient Learner). Bronze PROFICIENT_CNT; NULL when suppressed.
Full description
Count of students at the third achievement level (Proficient Learner). Bronze PROFICIENT_CNT; NULL when suppressed.
num_distinguished_learnerNumber Distinguished LearnerintegercountyesCount of students at the highest achievement level (Distinguished Learner). Bronze DISTINGUISHED_CNT; the most-suppressed metric (~70-76% of rows in recent years — few cells have enough distinguished scorers to clear the threshold).
Full description
Count of students at the highest achievement level (Distinguished Learner). Bronze DISTINGUISHED_CNT; the most-suppressed metric (~70-76% of rows in recent years — few cells have enough distinguished scorers to clear the threshold).
pct_beginning_learnerPercent Beginning LearnernumberproportionyesShare of tested students at the Beginning level, 0-1 scale (bronze 0-100 divided by 100). Published shares are exact to one decimal on the 0-100 scale against num_tested. CAVEAT: on foster_care rows from 2022 onward the four level shares can sum below 1 (students tested but not assigned a level, plus all-zero placeholder rows on fully-suppressed cells) — published GOSA values are preserved exactly.
Full description
Share of tested students at the Beginning level, 0-1 scale (bronze 0-100 divided by 100). Published shares are exact to one decimal on the 0-100 scale against num_tested. CAVEAT: on foster_care rows from 2022 onward the four level shares can sum below 1 (students tested but not assigned a level, plus all-zero placeholder rows on fully-suppressed cells) — published GOSA values are preserved exactly.
pct_developing_learnerPercent Developing LearnernumberproportionyesShare of tested students at the Developing level, 0-1 scale. See pct_beginning_learner for the foster_care caveat.
Full description
Share of tested students at the Developing level, 0-1 scale. See pct_beginning_learner for the foster_care caveat.
pct_proficient_learnerPercent Proficient LearnernumberproportionyesShare of tested students at the Proficient level, 0-1 scale. See pct_beginning_learner for the foster_care caveat.
Full description
Share of tested students at the Proficient level, 0-1 scale. See pct_beginning_learner for the foster_care caveat.
pct_distinguished_learnerPercent Distinguished LearnernumberproportionyesShare of tested students at the Distinguished level, 0-1 scale. See pct_beginning_learner for the foster_care caveat.
Full description
Share of tested students at the Distinguished level, 0-1 scale. See pct_beginning_learner for the foster_care caveat.
pct_developing_learner_or_abovePercent Developing Learner or AbovenumberproportionyesDerived cumulative share at Developing or above (developing + proficient + distinguished), 0-1 scale. Computed at transform time from the published per-level shares; sums of publisher-rounded shares that land within 0.005 above 1.0 are snapped to 1.0 (a share cannot exceed 1).
Full description
Derived cumulative share at Developing or above (developing + proficient + distinguished), 0-1 scale. Computed at transform time from the published per-level shares; sums of publisher-rounded shares that land within 0.005 above 1.0 are snapped to 1.0 (a share cannot exceed 1).
pct_proficient_learner_or_abovePercent Proficient Learner or AbovenumberproportionyesShare of tested students scoring Proficient or Distinguished (proficient-or-above), on a 0-1 scale; the headline achievement measure.
Full description
Derived cumulative share at Proficient or above (proficient + distinguished), 0-1 scale. Computed at transform time from the published per-level shares; rounding overshoot above 1.0 within 0.005 is snapped to 1.0.

Filters

Query parameters the fact endpoint accepts. Comma-separated values are OR within a parameter; multiple parameters AND together.

ParameterKindAllowed valuesNotes
yearyear_exactany value
year_minyear_rangeany value
year_maxyear_rangeany value
detaildetaildistrictsschoolsstatesenum-enforced, default: schools
district_codeforeign_keyany valuemulti-value
school_codeforeign_keyany valuemulti-value
demographicforeign_key
22 allowed values
  • active_duty
  • all
  • asian
  • black
  • economically_disadvantaged
  • english_learners
  • female
  • foster_care
  • hispanic
  • homeless
  • male
  • migrant
  • military_connected
  • multiracial
  • native_american
  • not_economically_disadvantaged
  • not_english_learners
  • not_migrant
  • pacific_islander
  • students_with_disabilities
  • students_without_disabilities
  • white
multi-value, enum-enforced
grade_levelcategorical030405060708multi-value, enum-enforced, pick one
subjectcategoricalenglish_language_artsmathematicsphysical_sciencesciencesocial_studiesmulti-value, enum-enforced, pick one
district_typedimension_attribute
7 allowed values
  • commission_charter
  • resa
  • standard
  • state_agency
  • state_charter
  • state_school
  • state_special
multi-value, enum-enforced
demographic_categorydimension_attribute
12 allowed values
  • aggregate
  • disability
  • economic_status
  • esol
  • foster_care
  • gender
  • grade
  • homeless_status
  • migrant_status
  • military
  • race
  • sped
multi-value, enum-enforced

Example requests

Run these against the base URL — they return live data.

All rows (first page), schools level

curl "https://georgiacivicdata.org/api/v1/education/georgia_milestones_end_of_grade_by_grade_level"

schools data for 2024

curl "https://georgiacivicdata.org/api/v1/education/georgia_milestones_end_of_grade_by_grade_level?year=2024"

Filtered to grade_level = 03 for 2024

curl "https://georgiacivicdata.org/api/v1/education/georgia_milestones_end_of_grade_by_grade_level?year=2024&grade_level=03"

One district (code 601), 2024

curl "https://georgiacivicdata.org/api/v1/education/georgia_milestones_end_of_grade_by_grade_level?district_code=601&year=2024&detail=districts"

Download 2024 as CSV

curl "https://georgiacivicdata.org/api/v1/education/georgia_milestones_end_of_grade_by_grade_level?year=2024&format=csv"

Notes & limitations

NULL handling

  • Suppressed cells (too few students to report) are NULL, never zero.
  • Zero is a real, reported value.

Limitations

Suppressed cells are NULL (not zero). State rows have NULL district_code and school_code; district rows have NULL school_code. 2020 has no rows (EOG cancelled during COVID-19). Grade x subject coverage is naturally sparse and changes over time (science/social_studies grades 5+8 only from 2017, social_studies grade 8 only from 2021, physical_science grade 8 only). Foster Care caveat (2022-2024): the foster_care rows are the only rows whose four per-level shares can fail to sum to 1 — 28 fully-unsuppressed state-level rows carry level counts summing below num_tested (students tested but not assigned a performance level at publication), and partially- or fully-suppressed foster_care cells publish shares covering only the unsuppressed levels, including an all-four-zeros placeholder pattern. The published GOSA values are preserved exactly rather than reconciled.