education

K-12 expenditures for every Georgia public school, school district, and the state as a whole, by spending function, publ

K-12 expenditures for every Georgia public school, school district, and the state as a whole, by spending function, published by the Governor's Office of Student Achievement (GOSA). Each row reports the total dollar amount and the per-FTE (full-time-equivalent student) dollar amount for one of 11 expenditure functions — instruction, pupil services, instructional support, school administration, general administration, maintenance and operations, transportation, media, school food services, debt services, and renovation and capital projects — covering school years 2010-11 through 2023-24. This is the full function-level spending ledger: all expenditures, broken out by function. The revenue side of the same GOSA report lives in the sibling topic k12_revenues (K-12 revenues by funding source, district/state detail); the two topics split the retired combined revenues_and_expenditures topic (one measure family per fact table) and share one bronze source, so they join cleanly on year and district_code. Distinct from the per_pupil_expenditure topic (FESR methodology), which is an included-cost per-pupil spending series whose totals intentionally differ from this full ledger.

Filterable categorical columns (comma-separated values union; multiple columns AND together):

  • expenditure_function — one of: debt_services, general_administration, instruction, instructional_support, maintenance_and_operations, media, pupil_services, renovation_and_capital_projects, school_administration, school_food_services, transportation

Detail levels available: districts, schools, states (default: schools)

Year coverage: 2011–2024 (14 years, no gaps)

NULL handling: zero is a real value.

Source: Governor's Office of Student Achievement (GOSA)

get/api/v1/education/k12_expenditures

Request

  • Base URL: https://georgiacivicdata.org
  • URL: https://georgiacivicdata.org/api/v1/education/k12_expenditures
  • Auth: none declared

Query parameters

yearinteger nullable

Exact year

year_mininteger nullable

Inclusive lower bound

year_maxinteger nullable

Inclusive upper bound

district_codestring nullable

Comma-separated list of GOSA district codes (e.g. 601,602)

school_codestring nullable

Comma-separated list of GOSA school codes. Combine with district_code for unique school keys.

county_fipsstring nullable

Comma-separated list of 5-digit county FIPS codes (e.g. 13121,13067)

tract_geoidstring nullable

Comma-separated list of 11-digit census tract GEOIDs (e.g. 13121011100)

block_group_geoidstring nullable

Comma-separated list of 12-digit census block group GEOIDs (e.g. 131210111001)

demographicstring nullable

Comma-separated demographic codes (e.g. all,black,hispanic)

detailstring nullable

Detail level (whatever the topic publishes — e.g. schools, districts, counties, or states).

limitinteger nullable

Page size

offsetinteger

Page offset

columnsstring nullable

Comma-separated output columns to return (fact columns plus joined dimension attributes). Defaults to all.

format'json' | 'csv' | 'parquet'

Response format: json | csv | parquet

Response

Paginated rows. JSON returns an envelope with data and pagination; CSV/Parquet return raw bytes with X-Total-Count header.

unknown required

Changes

No recorded changes to this operation across all 1 revision of this API.