Skip to content
← All datasets

District Salaries and Benefits

What Georgia school districts spend on salaries and benefits by staff category, with that spending as a share of district revenue and expenditures, 2011-2024.

Source
GOSA
Year coverage
2011–2024
Updated
annual
Version
1.1.0
Schema hash
ffaac60d83b2

Detail levels available

StateDistrict · default

Overview

Salary and benefit expenditures for Georgia public school districts (with RESA service-agency aggregates and the official state rollup) by staff category — teachers and paraprofessionals, school administration, and general administration — plus those salary+benefit totals as a share of four district revenue and expenditure bases. The underlying district revenue and expenditure ledgers those shares are computed against are published in the `k12_revenues` (revenue by funding source) and `k12_expenditures` (expenditure by function) topics. Published by GOSA for school years 2010-11 through 2023-24.

Row grain: One row per year, district_code, school_code, staff_category.

Key metric

salaries_and_benefits — Salaries and Benefits (currency)

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
yearYearinteger——noEnding (spring) calendar year of the school year (e.g. 2024 for 2023-24), parsed from the source's LONG_SCHOOL_YEAR and cross-checked against the filename.
Full description
Ending (spring) calendar year of the school year (e.g. 2024 for 2023-24), parsed from the source's LONG_SCHOOL_YEAR and cross-checked against the filename.
district_codeDistrict Codestring——yesGOSA district code (FK to districts dimension): 3-digit zero-padded county/city codes or 7-digit state-charter codes. Codes 850-888 are the 16 Regional Education Service Agencies (RESAs) — service-agency aggregates kept at district detail (the dimension types them 'resa'); exclude them when analyzing traditional LEAs. NULL on state-level rows.
Full description
GOSA district code (FK to districts dimension): 3-digit zero-padded county/city codes or 7-digit state-charter codes. Codes 850-888 are the 16 Regional Education Service Agencies (RESAs) — service-agency aggregates kept at district detail (the dimension types them 'resa'); exclude them when analyzing traditional LEAs. NULL on state-level rows.

Joins districts; adds its label columns.

school_codeSchool Codestring——yesGOSA school code (composite FK to schools dimension with district_code). Always NULL in this district-only topic — the source reports no school-level detail (enforced by a quality check).
Full description
GOSA school code (composite FK to schools dimension with district_code). Always NULL in this district-only topic — the source reports no school-level detail (enforced by a quality check).

Joins schools; adds its label columns.

staff_categoryStaff Categorystring——noWhich staff the dollars cover: teachers_and_paraprofessionals, school_administration, or general_administration (one row per category).
Full description
Staff category the row's salary and benefit dollars cover: teachers_and_paraprofessionals, school_administration (principals and school-level administrators), or general_administration (district-office administration). Every entity carries exactly one row per category per year.
3 allowed values
  • general_administration
  • school_administration
  • teachers_and_paraprofessionals
salariesSalariesnumbercurrency—yesTotal salary dollars paid for the staff category. Rare small negatives are real refunds/restatements published by the source and preserved (one 2024 row at -2,000.00); no range check applies.
Full description
Total salary dollars paid for the staff category. Rare small negatives are real refunds/restatements published by the source and preserved (one 2024 row at -2,000.00); no range check applies.
benefitsBenefitsnumbercurrency—yesTotal benefit dollars paid for the staff category. Rare small negatives are real refunds/restatements published by the source and preserved (one row each in 2011, 2012, and 2022; minimum -191,629.60); no range check applies.
Full description
Total benefit dollars paid for the staff category. Rare small negatives are real refunds/restatements published by the source and preserved (one row each in 2011, 2012, and 2022; minimum -191,629.60); no range check applies.
salaries_and_benefitsSalaries and Benefitsnumbercurrency—yesTotal salary plus benefit dollars the district spent on this staff category in the year.
Full description
Total salary plus benefit dollars for the staff category. Equals salaries + benefits within $1 in every row (source-published total; enforced by a quality check).
pct_revenue_gf_title_lotteryPercent Revenue Gf Title Lotterynumberratio—yesSalaries+benefits for the category as a share of district revenue from General Fund / Title / Lottery sources (0-1 decimal scale; source publishes 0-100 and is divided by 100). A ratio, not a bounded proportion: the 2021 file (school year 2020-21, the COVID year) systematically publishes values above 1.0 — including the state rollup — with a maximum of 1.2346 (2021 values run ~2x adjacent years across all metrics; likely a two-year-cumulative publication); preserved as published.
Full description
Salaries+benefits for the category as a share of district revenue from General Fund / Title / Lottery sources (0-1 decimal scale; source publishes 0-100 and is divided by 100). A ratio, not a bounded proportion: the 2021 file (school year 2020-21, the COVID year) systematically publishes values above 1.0 — including the state rollup — with a maximum of 1.2346 (2021 values run ~2x adjacent years across all metrics; likely a two-year-cumulative publication); preserved as published.
pct_revenue_total_k12Percent Revenue Total K12numberratio—yesSalaries+benefits for the category as a share of total district K-12 revenue (0-1 decimal scale; source publishes 0-100 and is divided by 100). The share is computed by GOSA against a total-revenue base that is NOT numerically reproducible from the `k12_revenues` topic (the implied base runs ~1.25-1.43x that ledger in every year), so do not divide this topic's dollars by that topic's totals. A ratio, not a bounded proportion: the 2021 file publishes values up to 1.0413 (2021 values run ~2x adjacent years across all metrics; likely a two-year-cumulative publication); preserved as published.
Full description
Salaries+benefits for the category as a share of total district K-12 revenue (0-1 decimal scale; source publishes 0-100 and is divided by 100). The share is computed by GOSA against a total-revenue base that is NOT numerically reproducible from the `k12_revenues` topic (the implied base runs ~1.25-1.43x that ledger in every year), so do not divide this topic's dollars by that topic's totals. A ratio, not a bounded proportion: the 2021 file publishes values up to 1.0413 (2021 values run ~2x adjacent years across all metrics; likely a two-year-cumulative publication); preserved as published.
pct_expense_gf_title_lotteryPercent Expense Gf Title Lotterynumberratio—yesSalaries+benefits for the category as a share of district expenditures from General Fund / Title / Lottery funds (0-1 decimal scale; source publishes 0-100 and is divided by 100). A ratio, not a bounded proportion: the 2021 file systematically publishes values above 1.0 — the state Teachers and Paraprofessionals rollup is 1.0798 and the maximum is 1.2731 (2021 values run ~2x adjacent years across all metrics; likely a two-year-cumulative publication); preserved as published.
Full description
Salaries+benefits for the category as a share of district expenditures from General Fund / Title / Lottery funds (0-1 decimal scale; source publishes 0-100 and is divided by 100). A ratio, not a bounded proportion: the 2021 file systematically publishes values above 1.0 — the state Teachers and Paraprofessionals rollup is 1.0798 and the maximum is 1.2731 (2021 values run ~2x adjacent years across all metrics; likely a two-year-cumulative publication); preserved as published.
pct_expense_total_k12Percent Expense Total K12numberratio—yesSalaries+benefits for the category as a share of total district K-12 expenditures (0-1 decimal scale; source publishes 0-100 and is divided by 100). The share is computed by GOSA against a total-expenditure base that is NOT numerically reproducible from the `k12_expenditures` topic (the implied base runs ~1.28-1.44x that ledger in every year), so do not divide this topic's dollars by that topic's totals. A ratio, not a bounded proportion: the 2021 file publishes values up to 1.2103 (2021 values run ~2x adjacent years across all metrics; likely a two-year-cumulative publication); preserved as published.
Full description
Salaries+benefits for the category as a share of total district K-12 expenditures (0-1 decimal scale; source publishes 0-100 and is divided by 100). The share is computed by GOSA against a total-expenditure base that is NOT numerically reproducible from the `k12_expenditures` topic (the implied base runs ~1.28-1.44x that ledger in every year), so do not divide this topic's dollars by that topic's totals. A ratio, not a bounded proportion: the 2021 file publishes values up to 1.2103 (2021 values run ~2x adjacent years across all metrics; likely a two-year-cumulative publication); preserved as published.

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—
detaildetaildistrictsstatesenum-enforced, default: districts
district_codeforeign_keyany valuemulti-value
school_codeforeign_keyany valuemulti-value
staff_categorycategoricalgeneral_administrationschool_administrationteachers_and_paraprofessionalsmulti-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
school_leveldimension_attributeelementarymiddlehighk12othermulti-value, enum-enforced
localedimension_attributecitysuburbtownruralmulti-value, enum-enforced

Example requests

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

All rows (first page), districts level

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

districts data for 2024

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

Filtered to staff_category = general_administration for 2024

curl "https://georgiacivicdata.org/api/v1/education/salaries_and_benefits?year=2024&staff_category=general_administration"

One district (code 601), 2024

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

Download 2024 as CSV

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

Notes & limitations

NULL handling

  • Zero is a real, reported value.

Limitations

State rows have NULL district_code. school_code is always NULL — this is a district-only topic (no school-level detail exists at the source). District-detail rows include the 16 Regional Education Service Agencies (district codes 850-888), which are service-agency aggregates rather than school districts — exclude district_code between '850' and '888' when analyzing traditional LEAs. The published state row's composition changes in 2014: for 2011-2013 it equals the sum of ALL district-detail rows (RESAs and 7-digit state charters included, exact to floating-point), while from 2014 onward it equals the sum of traditional 3-digit districts only, excluding both the 850-888 RESAs and every 7-digit state-charter code (summing all district rows overshoots the state row by 2.6-4.7% in those years). The four pct_* columns are decimal ratios that legitimately exceed 1.0 in 2021 (school year 2020-21): category spending exceeded the chosen bases that year, up to 1.2731 — the 2021 file runs ~2x adjacent years across all metrics (dollars included), consistent with a two-year-cumulative publication. No suppression exists in this topic — NULL never means suppressed.