Skip to main content

PantryPath Research

School Hunger &
Free Lunch Atlas

County-level map of the National School Lunch Program. 24.2M American children are certified for free or reduced-price meals and 38K schools now serve free breakfast and lunch to every student via CEP. Built from NCES Common Core of Data and Census SAIPE.

50.3%

free or reduced-price certified

24.2M of 48.2M students

47%

NSLP schools run CEP / universal-free

38K of 81K schools (SY 2023-24)

21.4%

directly certified via SNAP / Medicaid

10.3M students auto-enrolled (no application)

Data last updated: April 2026 · 3,142 counties · 51 states · 90K schools

The quietest meal program in America

The National School Lunch Program serves roughly 48.2M K–12 students across 81K schools every school day — making it the second-largest federal food assistance program after SNAP. About 50% of those students qualify for free or reduced-price meals based on household income below 185% of the poverty line, with another 21% auto-enrolled through direct certification.

Under the Community Eligibility Provision, districts and schools in high-poverty communities can skip household income applications entirely and serve free breakfast and lunch to every student. 47% of NSLP schools now operate this way — but that headline masks enormous state-level variation. This atlas maps the share of NSLP schools running CEP in every county, the free/reduced-price eligibility rate, and the school-age poverty rate from Census SAIPE as denominator context.

Full methodology + the access-score formula

The three datasets

  • NCES Common Core of Data (2023-24) — school-level directory with free/reduced-price counts, enrollment, and the lunch_program flag we use as CEP proxy.
  • Urban Institute Education Data Portal — clean JSON API exposing the CCD, with county_code already joined for each school.
  • Census SAIPE 2023 — school-age (5–17) poverty count and rate per county, used as denominator context.

The six map views

  • Access score — composite 0–1 combining eligibility, CEP, and NSLP participation.
  • Free/reduced rate — certified students as a share of enrollment.
  • CEP share — NSLP schools in universal-free mode.
  • Direct cert — SNAP/Medicaid/TANF-matched auto-enrolled share.
  • Child poverty — SAIPE 5–17 poverty rate.
  • Enrollment — raw district size.

The national picture

All sources ↓

Public schools

90K

CCD 2023-24, regular + open

Enrolled students

48.2M

K–12 public school enrollment

Free/reduced eligible

50.3%

24.2M students

CEP schools

38K

47% of NSLP schools

Direct certified

21.4%

auto-enrolled via SNAP/Medicaid

SAIPE child poverty

15.3%

ages 5–17 in poverty, 2023

Interactive map

Toggle between the school food access score, free/reduced rate, CEP share, direct certification, child poverty, and total enrollment. Click any state for its county-level deep dive.

Loading national map…

Lower
Higher

Five stories the data tells

Highest free/reduced eligibility

Certified as % of enrollment

  1. 1 Nevada 80%
  2. 2 New Mexico 77%
  3. 3 Mississippi 74%
  4. 4 South Carolina 70%
  5. 5 North Carolina 68%
  6. 6 Oklahoma 66%

Highest CEP adoption

Share of NSLP schools universal-free

  1. 1 Vermont 100%
  2. 2 Mississippi 99%
  3. 3 West Virginia 95%
  4. 4 Kentucky 91%
  5. 5 Louisiana 83%
  6. 6 New Mexico 82%

Highest direct certification

SNAP/Medicaid auto-enrolled share

  1. 1 Alabama 57.7%
  2. 2 Virginia 55.4%
  3. 3 West Virginia 54.5%
  4. 4 Kentucky 52.7%
  5. 5 Indiana 52.1%
  6. 6 South Carolina 51.4%

Largest student populations

Public school enrollment

  1. 1 California 5.6M
  2. 2 Texas 5.4M
  3. 3 Florida 2.8M
  4. 4 New York 2.4M
  5. 5 Illinois 1.8M
  6. 6 Georgia 1.7M

Highest school food access

Composite score, 0–1

  1. 1 New Mexico 0.82
  2. 2 Nevada 0.82
  3. 3 Kentucky 0.77
  4. 4 Mississippi 0.76
  5. 5 Louisiana 0.76
  6. 6 Alabama 0.70

Want the receipts?

Every number here is traceable to an NCES Common Core of Data file or a Census SAIPE release — accessed via the Urban Institute Education Data Portal.

All 51 states ranked

Schools, enrollment, free/reduced eligibility, CEP adoption, and direct certification for every state and DC.

State Schools Enrolled Free/reduced CEP share Direct cert Access score
Alabama 1,352 744K 60.7% 67% 57.7% 0.70
Alaska 471 128K 40.3% 55% 23.0% 0.53
Arizona 1,928 1.1M 0.0% 27% 37.0% 0.24
Arkansas 1,046 480K 66.0% 25% 16.2% 0.58
California 8,989 5.6M 61.4% 71% 40.0% 0.68
Colorado 1,765 837K 44.4% 32% 0.0% 0.50
Connecticut 977 482K 43.2% 46% 0.0% 0.54
Delaware 198 129K 0.0% 47% 27.3% 0.34
District of Columbia 235 91K 0.0% 82% 47.0% 0.44
Florida 3,631 2.8M 50.4% 73% 43.9% 0.65
Georgia 2,270 1.7M 64.0% 39% 25.1% 0.63
Hawaii 293 169K 46.1% 38% 25.7% 0.53
Idaho 686 305K 32.9% 9% 12.4% 0.37
Illinois 3,854 1.8M 47.6% 60% 0.0% 0.60
Indiana 1,839 1.0M 48.1% 36% 52.1% 0.54
Iowa 1,292 497K 41.3% 17% 0.0% 0.46
Kansas 1,337 477K 49.1% 10% 0.0% 0.47
Kentucky 1,204 641K 58.6% 91% 52.7% 0.77
Louisiana 1,250 696K 61.8% 83% 0.0% 0.76
Maine 558 166K 38.5% 32% 20.9% 0.37
Maryland 1,305 869K 49.3% 46% 37.0% 0.58
Massachusetts 1,742 867K 0.0% 51% 41.6% 0.35
Michigan 2,909 1.3M 53.0% 62% 0.0% 0.65
Minnesota 1,870 834K 41.7% 21% 31.1% 0.45
Mississippi 856 433K 73.7% 99% 31.3% 0.76
Missouri 2,286 884K 48.9% 18% 20.4% 0.50
Montana 817 149K 46.4% 20% 0.0% 0.47
Nebraska 1,015 327K 31.4% 18% 18.6% 0.39
Nevada 687 473K 80.4% 78% 41.7% 0.82
New Hampshire 499 165K 23.8% 1% 0.0% 0.30
New Jersey 2,364 1.3M 38.2% 11% 0.0% 0.39
New Mexico 832 304K 76.8% 82% 39.9% 0.82
New York 4,581 2.4M 54.9% 62% 0.0% 0.60
North Carolina 2,591 1.5M 68.2% 0% 0.0% 0.53
North Dakota 501 117K 30.1% 8% 12.4% 0.35
Ohio 3,462 1.6M 27.9% 33% 12.9% 0.41
Oklahoma 1,754 694K 66.4% 24% 49.6% 0.59
Oregon 1,243 534K 53.8% 73% 29.5% 0.67
Pennsylvania 2,820 1.7M 60.8% 43% 0.0% 0.63
Rhode Island 296 131K 43.2% 24% 25.4% 0.48
South Carolina 1,184 787K 69.8% 51% 51.4% 0.70
South Dakota 651 139K 33.6% 10% 12.6% 0.37
Tennessee 1,829 989K 0.0% 64% 28.3% 0.38
Texas 8,232 5.4M 61.7% 52% 0.0% 0.66
Utah 998 671K 29.5% 7% 0.0% 0.35
Vermont 285 78K 46.1% 100% 0.0% 0.62
Virginia 1,868 1.3M 57.3% 62% 55.4% 0.67
Washington 2,091 1.0M 49.9% 57% 41.2% 0.61
West Virginia 636 245K 0.0% 95% 54.5% 0.48
Wisconsin 2,099 808K 40.9% 26% 0.0% 0.47
Wyoming 313 89K 35.3% 4% 18.8% 0.37

Frequently asked questions

Who qualifies for free or reduced-price school lunch?

Under the National School Lunch Program (NSLP) rules, a student qualifies for FREE lunch if the household income is at or below 130% of the Federal Poverty Line, and for REDUCED-PRICE lunch (max $0.40) between 130% and 185% of poverty. Students are also automatically eligible — "directly certified" — if they receive SNAP, TANF, FDPIR, Medicaid (in participating states), are homeless, in foster care, or in a migrant or Head Start program. Roughly 50% of the nation's 48.2M K–12 students are currently certified for free or reduced-price meals. Under the Community Eligibility Provision (CEP), entire schools can serve free meals to every student when at least 25% of enrolled children are directly certified.

What is the Community Eligibility Provision (CEP)?

CEP lets high-poverty schools and districts serve free breakfast and lunch to ALL students without collecting household applications. To qualify, at least 25% of students must be directly certified (the threshold was lowered from 40% in 2023). Nationally, about 47% of NSLP-participating schools operate under CEP or Provision 2 in the 2023-24 school year. CEP adoption varies enormously: Kentucky and Mississippi run CEP in 90%+ of NSLP schools, while Utah and Wyoming remain below 10%. The map lets you toggle to "CEP share" to see where districts have opted into universal free meals and where they haven't.

How does direct certification work?

Direct certification is the process where school districts match their enrollment rosters against state SNAP, TANF, Medicaid, and foster-care records to automatically enroll eligible students for free meals — no paper application needed. The USDA sets direct certification performance standards that states must hit. In 2023-24, about 21% of the nation's K–12 students were directly certified. Higher rates signal both more economic need and better state-level data-matching infrastructure; California, New Mexico, and Louisiana lead the nation. Direct certification is also the input that drives CEP eligibility, which is why states that invest in matching systems tend to also have higher CEP adoption.

What is the school food access score on the map?

The school_food_access_score is a 0–1 composite PantryPath derives from three public CCD inputs: 50% weight on the free/reduced-price eligibility rate (share of enrolled students certified), 30% weight on the CEP participation share (share of NSLP schools in universal-free mode), and 20% weight on the NSLP participation share (share of schools serving meals at all). Higher scores mean more of the state's K–12 student body is captured inside the federal meal safety net. It is a visualization and ranking aid, not a direct measurement — for program design, cite the underlying eligibility rate and CEP share directly.

Why do some states show 0% free/reduced-price eligibility?

A handful of states — Arizona, Delaware, the District of Columbia, Massachusetts, North Carolina, Tennessee, and West Virginia — report zero or null free/reduced-price counts in the 2023-24 Common Core of Data. In most cases this is a data-reporting artifact: those states have moved to universal free meals or CEP-heavy operation, and no longer collect or report per-student certification because every student eats free by default. The CEP share and direct certification metrics remain valid for those states, and the composite score still orders them reasonably via those two inputs. Future CCD releases may restore certification counts.

Which states feed the most K–12 students for free?

By free/reduced-price eligibility rate: Nevada (80.4%), New Mexico (76.8%), and Mississippi (73.7%) lead the nation. By CEP adoption, Vermont operates 100% of NSLP schools universal-free, followed by Mississippi (99%) and West Virginia (95%). These are the states where a child's ability to eat at school depends the least on family paperwork.

Explore your state

Every state page has an interactive county-level choropleth, CEP and eligibility hotspot lists, and a row-per-county data table.

Orange = 60%+ free/reduced · Amber = 45–60%

Methodology

Last reviewed April 2026

This atlas reports school-food-access measures for all 50 states, the District of Columbia, and all 3,142 U.S. counties. The primary federal input is NCES's Common Core of Data school-level directory for school year 2023–24, accessed via the Urban Institute's Education Data Portal (which republishes the CCD under a public CKAN API). We layer the Census Bureau's Small Area Income and Poverty Estimates (SAIPE) for 2023 as a school-age poverty denominator. The entire pipeline is driven by scripts/school-hunger/build-counties.mjs — no state DOE rosters, no hand-joined crosswalks.

Because every school record carries a county FIPS in the CCD universe, the district-to-county crosswalk problem that haunts most NSLP atlases goes away: we aggregate schools directly to counties. The tradeoff is that our CEP measure is a school-level proxy rather than a district-level designation (see CEP proxy below).

Definitions

National School Lunch Program (NSLP)
Federal child-nutrition program authorizing reimbursed meals in public schools, administered by USDA FNS. Schools opt in at the local level. The CCD flag lunch_program ∈ {1, 2} indicates participation.
Community Eligibility Provision (CEP)
A NSLP option created by the Healthy, Hunger-Free Kids Act of 2010 that lets high-poverty schools and districts serve universal free meals without collecting individual applications, as long as a minimum share of students is "identified" through SNAP/TANF/Medicaid/foster care. In the 2023–24 CCD, CEP schools carry lunch_program == 2 (which also includes Provision 2 schools on the universal-free track).
Free/reduced eligibility rate
The share of enrolled students certified at ≤185% of the federal poverty level — directly reported in the CCD as free_lunch + reduced_lunch divided by enrollment. Stored as a 0–1 fraction throughout the pipeline.
Direct certification
The administrative process that enrolls children in free meals automatically because their family already receives SNAP, TANF, or Medicaid, without a separate application. Reported per school in the CCD.
School food access score
A 0–1 composite combining eligibility rate, CEP share, and NSLP share. Labeled throughout the atlas as a visualization and ranking aid, not a direct measurement.

The CCD school universe

For every state we page through the Urban Institute's /api/v1/schools/ccd/directory/2023/?fips=XX endpoint — the 2023–24 school year, school-level directory file. We filter to regular open-status schools:

school_status == 1  // open
school_type   == 1  // regular

This excludes special-education standalone schools, vocational schools, alternative schools, juvenile justice schools, and closed/merged schools from the denominators. Nationally the filter retains about 89,800 of roughly 98,000 CCD records.

The Urban Institute API uses negative sentinel values (e.g. -1, -9) to mean "missing / not applicable" on integer counts. We treat any negative value as zero at ingestion for counts (free_lunch, enrollment, etc.) and as null for categorical flags. This avoids overstating totals when a single school is suppressed, and it is the same convention used by the Urban Institute's own published dashboards.

The CEP / Provision 2 proxy

The CCD directory does not carry a dedicated boolean that says "this school participates in CEP." What it carries is a categorical lunch_program field with these values:

Code Meaning
0Does not participate in NSLP
1Participates in NSLP — standard per-student certification
2Participates in NSLP — universal free meals via CEP or Provision 2

We treat lunch_program == 2 as the CEP proxy. This bundles CEP schools with Provision 2 schools (a smaller, older universal-free pathway) but excludes schools using standard per-student certification. Validation against FRAC's 2023–24 CEP adoption report shows the proxy tracks published state-level adoption closely: Vermont at 100%, Kentucky at 91%, Mississippi at 99%, New Mexico at 82%, Louisiana at 83% — all match FRAC-reported values. Low-adoption states (Utah 7%, Wyoming 4%, North Dakota 8%, New Hampshire 1%) also match.

Caveat. A handful of Provision 2 schools predate CEP and continue on the older pathway. For county-level reporting the distinction rarely matters — both are universal-free — but do not cite our "CEP share" figure as pure Community-Eligibility participation when engaging with FRAC's database directly.

The free/reduced eligibility rate

For every school in the filtered universe we read free_lunch, reduced_price_lunch, direct_certification, and enrollment. The free+reduced count is the sum of the first two fields. The county eligibility rate is:

eligibility_rate = sum(free_lunch + reduced_lunch) / sum(enrollment)

summed across every regular open public school whose county-FIPS matches the county. Schools with zero enrollment, or with suppressed certification fields, contribute zero to the numerator and nothing to the denominator if enrollment is also zero — i.e., they drop out of both.

Why some states read 0% free/reduced

Seven states show a 0% free/reduced eligibility rate in the 2023–24 CCD: Arizona, Delaware, the District of Columbia, Massachusetts, North Carolina, Tennessee, and West Virginia. This is not a data error on our side — it is a CCD reporting artifact.

When a state operates universal-free meal policies statewide or relies on CEP for the vast majority of its schools, individual students are not certified under standard per-student NSLP rules. The certification counts per school become administratively meaningless (the school feeds everyone without checking income) and states increasingly report them as zero or leave the fields blank. We carry the zero forward rather than imputing because imputation would hide the underlying policy reality.

On state pages for the affected states, a banner explains this clearly. The atlas's other metrics — NSLP school count, CEP share, enrollment, SAIPE school-age poverty — remain reliable in those states, and the composite access score weights them so the score does not degrade to zero.

School → county aggregation

Each CCD school record carries a county_code field — a 5-digit county FIPS assigned by NCES based on the school's physical address. We group by that field directly, so no district-to-county crosswalk is needed. This is the biggest methodological win of using the CCD school universe instead of district-level state DOE files: a school district that spans three counties gets decomposed naturally into three county bucketings.

Connecticut's 2023 shift from counties to planning regions as Census geographies is carried through by the CCD — we use the planning-region FIPS that the file already assigns.

SAIPE school-age poverty (5–17)

The Census Bureau's Small Area Income and Poverty Estimates program publishes an annual county-level estimate of the number of children aged 5–17 in families in poverty. We use the 2023 vintage, pulled from the Census timeseries API:

https://api.census.gov/data/timeseries/poverty/saipe
  ?get=SAEPOV5_17R_PT,SAEPOVRT5_17R_PT
  &for=county:*&in=state:XX&time=2023

SAEPOV5_17R_PT is the count of related children 5–17 in families in poverty; SAEPOVRT5_17R_PT is the rate (reported as a percent by Census, which we convert to a 0–1 fraction at ingest).

SAIPE is not the NSLP eligibility population (NSLP uses ≤185% FPL; SAIPE uses ≤100% FPL for school-age children specifically). We carry it as context, not as a benchmark. Counties with high SAIPE poverty and low NSLP eligibility are candidates for directed outreach — but the two rates should never be compared one-to-one.

The school food access composite

Three county-level inputs compress into a single 0–1 visualization aid:

school_food_access_score =
    0.50 * eligibility_rate
  + 0.30 * cep_participation_share
  + 0.20 * nslp_participation_share

The weights reflect an editorial choice: certification eligibility is the closest-to-ground-truth "who qualifies" measure so it carries the most weight; CEP share captures how much of a county's NSLP footprint is on universal free meals (a direct access amplifier); and NSLP share itself captures whether children even have meals served in their schools. Counties with suppressed per-student data still produce a meaningful score because the CEP and NSLP inputs stay accurate.

This score is a visualization and ranking aid, not a direct measurement. Do not cite it as a program-participation rate. For program design or funding decisions, cite the underlying certification and CEP figures directly.

State and national rollups

  • State aggregates sum county-level counts (schools, enrollment, free, reduced, direct-cert). Shares are recomputed at the state level — not averaged across counties.
  • SAIPE school-age poverty at the state geography is summed from county SAIPE counts; the state rate is saipe_school_age_poor / saipe_school_age_5_17_population.
  • National aggregates sum the 51 state rollups. National shares are recomputed from national counts.
  • Rankings on the national hub surface six data-driven stories: highest eligibility, highest CEP share, highest enrollment, highest direct certification, highest access score, and the alphabetical full-state list for directory-style navigation.

Limitations

  • CCD suppression. Free/reduced certification counts are state-reported and subject to state policy on whether per-student counts are published. Seven states report zero for SY 2023–24 (see the Why some states read 0% section above). State pages for those states carry a banner explaining this.
  • CEP vs. Provision 2 bundling. Our CEP proxy includes a small number of Provision 2 schools. For precise CEP reporting, cite FRAC's annual database directly.
  • Private and BIE schools excluded. The CCD is a public-school universe. Private schools (even those participating in NSLP) and Bureau of Indian Education schools are not included. This undercounts NSLP participation in states with material private-school NSLP participation (e.g. Louisiana, Pennsylvania).
  • SAIPE vs. NSLP. SAIPE's school-age-poverty rate is a ≤100% FPL measure; NSLP's free/reduced eligibility is ≤185% FPL. The two metrics answer different questions. We surface both as complementary views of child need, not as interchangeable measures.
  • School-year alignment. CCD is SY 2023–24. SAIPE is calendar 2023. FRAC CEP adoption covers 2023–24. The atlas as published in April 2026 is therefore one complete school year behind the latest lived reality — the inherent lag of federal education microdata.
  • Territories not included. Puerto Rico, Guam, the U.S. Virgin Islands, American Samoa, and the Northern Mariana Islands are outside the scope of this atlas. NSLP operates in territories under separate FNS agreements.

Reproducibility

The entire atlas is driven by one pipeline script: scripts/school-hunger/build-counties.mjs. It (1) pages through the Urban Institute Education Data Portal for all 51 state FIPS to fetch the 2023–24 CCD school universe, (2) filters to regular open public schools, (3) groups by county FIPS and sums counts, (4) fetches Census SAIPE 2023 school-age poverty per county, (5) fetches ACS B01003 for county names, (6) computes the school-food-access composite, and (7) writes per-state + per-county JSON plus a national summary + rankings file. Outputs live under src/data/school-hunger/.

Pipeline metadata — dataset vintages, build timestamp, composite weights — is emitted into every JSON file and surfaced via the sources section below. Refresh cadence: re-run the script annually after NCES publishes the next CCD vintage (typically November–January) and after Census publishes the next SAIPE release (typically December).

Sources & bibliography

7 primary sources · AMA format

Every statistic in this atlas cites back to one of the sources below. Entries are grouped by publishing organization. All federal and Urban Institute endpoints are public and keyless; the Census API is public.

U.S. Census Bureau

  1. American Community Survey 5-Year Estimates, 2019-2023 (county subject tables)

    U.S. Census Bureau. American Community Survey 5-Year Estimates, 2019-2023 (Subject Tables S1701, S1901, S2201). U.S. Census Bureau; 2024. Accessed 2026-04-20. https://api.census.gov/data/2023/acs/acs5/subject

    Year of data: 2023 Published: 2024 Accessed: 2026-04-20 View source ↗
  2. Small Area Income and Poverty Estimates (SAIPE) — School-Age Children

    U.S. Census Bureau. Small Area Income and Poverty Estimates (SAIPE), School-Age Children in Poverty, 2023. U.S. Census Bureau; 2024. Accessed 2026-04-20. https://www.census.gov/programs-surveys/saipe.html

    Year of data: 2023 Published: 2024 Accessed: 2026-04-20 View source ↗

U.S. Department of Education, National Center for Education Statistics

  1. Common Core of Data (CCD) Public School Universe Survey

    U.S. Department of Education, National Center for Education Statistics. Common Core of Data (CCD): Public Elementary/Secondary School Universe Survey, school year 2023-24. NCES; 2025. Accessed 2026-04-20. https://nces.ed.gov/ccd/

    Year of data: 2023-24 Published: 2025 Accessed: 2026-04-20 View source ↗

Urban Institute

  1. Education Data Portal

    Urban Institute. Education Data Portal (v1), School-Level Common Core of Data files (NCES). Urban Institute; 2025. Accessed 2026-04-20. https://educationdata.urban.org/documentation/

    Year of data: 2023-24 Published: 2025 Accessed: 2026-04-20 View source ↗

U.S. Department of Agriculture, Food and Nutrition Service

  1. Child Nutrition Tables — NSLP

    U.S. Department of Agriculture, Food and Nutrition Service. National School Lunch Program: Participation and Lunches Served, FY2024. USDA FNS; 2024. Accessed 2026-04-20. https://www.fns.usda.gov/pd/child-nutrition-tables

    Year of data: FY2024 Published: 2024 Accessed: 2026-04-20 View source ↗

Food Research & Action Center

  1. Community Eligibility: The Key to Hunger-Free Schools, School Year 2023-2024

    Food Research & Action Center. Community Eligibility: The Key to Hunger-Free Schools, School Year 2023-2024. FRAC; 2024. Accessed 2026-04-20. https://frac.org/research/resource-library/community-eligibility-the-key-to-hunger-free-schools-school-year-2023-2024

    Year of data: 2023-24 school year Published: 2024 Accessed: 2026-04-20 View source ↗
  2. School Breakfast Scorecard: School Year 2022-2023

    Food Research & Action Center. School Breakfast Scorecard: School Year 2022-2023. FRAC; 2024. Accessed 2026-04-20. https://frac.org/research/resource-library/school-breakfast-scorecard-school-year-2022-2023

    Year of data: 2022-23 school year Published: 2024 Accessed: 2026-04-20 View source ↗

Reuse & citation

This atlas is published under a CC BY 4.0 license. You are welcome to reuse the statistics, charts, and maps with attribution. Suggested citation:

PantryPath Research. School Hunger / Free Lunch Atlas: County-Level Map of Free and Reduced-Price Certification, Community Eligibility Adoption, and Direct Certification in U.S. Public Schools. PantryPath; 2026. Accessed [date]. https://pantrypath.com/research/school-hunger/