Map About the data
On this page
    Data, methods and how to read them

    Where these numbers come from, and how to use them well

    This site puts public schools, private schools, school districts and colleges in one state on a map, with their history. Every figure comes straight from files that the U.S. Department of Education and the Census Bureau publish. We standardise, organise and chart them; we do not estimate missing values or judge quality.

    • No rankings or ratings
    • Built directly from the federal files
    • Missing is never shown as zero
    • Free and open source
    • …Loading the latest counts

    START HEREPick the path that fits you

    Each part of this page is written for everyone first, with technical detail tucked behind “For analysts” folds you can open when you need them.

    DECISION-MAKERSUsing these numbers well OfficialsStaff

    These figures describe who is enrolled where, and how that has changed. They are a good starting point for a question and a poor place to stop. Here is how to get the most from them without overstating what they show.

    Good questions for this data

    • How has enrollment in a school, district or college changed over time?
    • What does the student population look like by race and ethnicity, grade or age?
    • Where are schools, colleges and private schools located, and what grades or programs do they offer?
    • How do tuition, aid and net price at a college compare with its own past?
    • How do a district’s revenue and spending per student break down?

    Questions it cannot answer

    • Which school or college is “best”. Nothing here is a quality measure.
    • Why a number changed. The data show what, not why.
    • How a school’s students perform on tests. Test scores are not included.
    • What any individual student or family experiences.
    • Anything newer than the latest release for each survey (see coverage).

    Terms that trip people up

    • Enrollment is a head count on one fall date, not a yearly average.
    • Students per teacher is not class size.
    • Free or reduced-price lunch is a rough income signal, and is unreliable where whole schools are enrolled automatically.
    • A share (%) says who is counted, not how any group is doing.
    • Years are school years: 2024 means 2024-25.

    Before you quote a number

    1. Say the year. “Fall 2024”, “school year 2023-24” or “the 2023-24 survey”. Private schools are surveyed every two years, so the latest survey may be older than the year you are looking at.
    2. Say the source. “According to the National Center for Education Statistics’ Common Core of Data” (public schools), “Private School Universe Survey” or “IPEDS” (colleges). Each chart in the chart guide below names its survey.
    3. Check the release. Newer data are marked preliminary or provisional and can be revised. The coverage table shows which stage each year is in.
    4. Look for blanks. An empty bar or “—” means the value was missing, hidden for privacy, or not collected. It does not mean zero.
    5. Compare like with like. Same survey, same definition, ideally the same school or college over time. Differences between places usually reflect size, location and mission before anything else.

    Wording that holds up

    Say

    • “Enrollment was 612 in fall 2023, down from 655 in fall 2019.”
    • “Hispanic or Latino students were 31% of students counted in 2024.”
    • “The college’s published in-state tuition and fees were $9,315 in 2023-24.”

    Avoid

    • “This school is better or worse than that one.”
    • “Enrollment fell because the school got worse.”
    • “Only 20% of students graduate”, from a chart that shows counts of graduates or one cohort’s rate.
    Source: U.S. Department of Education, National Center for Education Statistics, Common Core of Data, school year 2023-24 (final release); accessed through the Education Explorer.A short credit line you can paste under a chart or table.

    SOURCESWhere the data come from Everyone

    Three federal surveys supply the people and places. Two Census Bureau products supply the geography. All are public and free to use.

    Public schools and districts

    Common Core of Data (CCD)

    Each year, every state education agency reports its schools and districts to the National Center for Education Statistics (NCES).

    Contains
    School and district directories, enrollment by grade, race/ethnicity and sex, free and reduced-price lunch eligibility, teachers (FTE), program characteristics, and for districts: finance, graduates, dropouts, English learners and students with disabilities.
    Years here
    …
    Reported by
    State education agencies
    Best for
    Enrollment and demographic trends for a school or district.
    Not for
    Quality or performance. No test scores.

    Original files →

    Private schools

    Private School Universe Survey (PSS)

    NCES surveys private schools every two years to build a list of them and describe their students and teachers.

    Contains
    Enrollment (total, grade, race, sex), teachers, religious orientation, school level and type.
    Years here
    …
    Reported by
    The schools themselves
    Best for
    Seeing which private schools exist, roughly how large, and how that changes.
    Not for
    Annual figures (it is biennial) or a complete count: not every private school responds.

    Original files →

    Colleges

    Integrated Postsecondary Education Data System (IPEDS)

    Colleges and universities that take part in federal student aid programs must report to IPEDS each year.

    Contains
    Enrollment (including online course load), age, residence, admissions, retention, graduation, awards, tuition, net price, financial aid, finances and staff.
    Years here
    …
    Reported by
    The institutions
    Best for
    Following one institution over time across many measures.
    Not for
    Ranking institutions. Missions and student bodies differ too much for that.

    Original files →

    Supporting sources

    Used forSourceNotes
    Public school locationsNCES EDGE school locationsMap points and locale codes. The CCD directory has no coordinates of its own.
    District boundariesCensus TIGER/LineUnified, elementary and secondary districts, simplified for display. The file labelled Y describes the school year ending in Y.
    Missing coordinatesU.S. Census GeocoderUsed only when a source file has no coordinates. Approximate matches are drawn with a dotted outline.
    District financeCensus Bureau, Annual Survey of School System Finances (F-33), published through CCDDollars as reported; not adjusted for inflation.
    BasemapOpenFreeMap, OpenMapTiles, © OpenStreetMap contributorsBackground map only.

    How a number gets from the federal file to your screen

    1. DownloadThe original file from NCES or the Census Bureau, unchanged.
    2. CheckThe pipeline compares each file’s columns to what it expects and stops if anything is added, dropped or renamed.
    3. StandardiseCodes become labels; blanks, suppressed and “not applicable” stay distinct from zero.
    4. ValidateAutomated checks for duplicates, impossible values and mismatched totals must pass.
    5. PublishCompact data files are saved with this site. Your browser reads them directly; no server or account is involved.

    CHART GUIDEWhat each chart shows StaffAnalysts

    Open a school, district or college on the map and use its tabs. This guide lists every chart in the order you will meet them, in plain words, with the survey and years behind it. “Table” is the name you will see in the panel’s Data tab.

    Public schools Common Core of Data
    • Overview

      Enrollment over time

      Students enrolled on the fall count date: total, or split by race/ethnicity, sex or grade. A dashed line and shaded band show the state’s typical school (median and middle half of operating schools).

      Reading tip. The band is context, not a target. Small schools sit well below it by design.

      Table membershipYears 1997-98 on

    • Students

      Race and ethnicity; grades; girls and boys; race within each grade

      Shares of the students counted, and one year’s head count by grade.

      Reading tip. Shares describe composition only. Suppressed small cells are left out.

      Table membershipYears 1997-98 on

    • Students

      Lunch program eligibility

      Students eligible for free or reduced-price lunch.

      Reading tip. Not comparable where a school enrolls all students automatically (Community Eligibility).

      Table lunchYears 1998-99 on

    • Programs

      Status and programs by year

      For each year: operating status, grades offered, level, locale, school type, charter, virtual instruction, Title I, magnet, shared-time and school lunch program.

      Reading tip. Dashed squares mean no record that year. Virtual and Title I fields were added later.

      Table school_directory school_characteristics school_locationYears Directory 1997-98 on; programs 2014-15 on

    • Trends

      Students per teacher; teachers; lunch share; lunch counts

      Enrollment divided by full-time-equivalent teachers; teacher FTE; eligible students as a share of enrollment.

      Reading tip. Students per teacher is not class size, and high values often come from very low reported teacher FTE.

      Table membership staff lunchYears 1998-99 on

    School districts Common Core of Data, Census F-33
    • Overview

      Enrollment over time

      District-reported students, total or by race/ethnicity.

      Reading tip. Can differ slightly from the sum of its schools because of reconciliation.

      Table district_membershipYears 1998-99 on

    • Students

      Race, grades, girls and boys, race within each grade

      Composition of enrollment.

      Reading tip. Composition only.

      Table district_membershipYears As above

    • Students

      English learners and students with disabilities

      Counts divided by district enrollment for the same year.

      Reading tip. Identification practices differ by state and over time.

      Table district_el district_ideaYears English learners to 2018-19; disabilities to 2019-20

    • Students

      Diplomas and other credentials; diploma recipients and dropouts by race and sex

      Counts of completers and of dropouts in grades 9–12, and who they are.

      Reading tip. These are counts, not graduation or dropout rates. Small counts are hidden.

      Table district_graduates district_dropoutYears 2018-19, 2022-23, 2023-24

    • Money

      Revenue and spending per student

      Federal, state and local revenue, and spending by purpose, divided by fall membership.

      Reading tip. Dollars of the year, not adjusted for inflation or local costs. Not a measure of quality.

      Table district_financeYears 2014-15 on

    • Trends

      Staff, finance totals, students

      Series you can switch between, with a CSV download.

      Reading tip. Not every table covers every year.

      Table district_staff district_financeYears Varies

    Private schools Private School Universe Survey
    • Overview

      Enrollment by survey year

      Students, total or by grade, race or sex.

      Reading tip. Gaps between surveys are not missing data.

      Table enrollmentYears Every second year

    • Students

      Race, grades, girls and boys, students per teacher

      Composition and the ratio as reported by the school.

      Reading tip. Girls are shown as total minus boys.

      Table enrollment schoolsYears Every second year

    • Trends

      Teachers; prekindergarten

      Full-time-equivalent teachers and prekindergarten counts.

      Reading tip. Values may be imputed by NCES.

      Table teachers schoolsYears Every second year

    • Details

      Profile by survey year

      Level, affiliation, orientation, type, locale and region at each survey.

      Reading tip. Labels follow the latest codebook.

      Table schoolsYears Every second year

    Colleges IPEDS
    • Overview

      Fall enrollment

      Students enrolled in fall: total, by level, full or part time, gender, or race/ethnicity.

      Reading tip. Race categories changed in 2010, so earlier years are not drawn.

      Table efaYears Back to 1980 where reported (race from 2010)

    • Overview

      How students take their courses

      Fall students taking all, some or none of their courses online.

      Reading tip. NCES does not separate hybrid from in person. Fall 2020 reflects emergency remote teaching.

      Table efadistYears Fall 2012 on

    • Students

      Race share; age; where first-time students come from

      Composition of enrollment, age bands, and state of residence when first admitted.

      Reading tip. Origin shows the closest earlier report if the selected year has none.

      Table efa efb efcYears Age 2003 on; origin in alternate years

    • Students

      Admissions and share admitted

      Applicants, admitted and enrolled first-time undergraduates.

      Reading tip. An admit rate reflects who applies, not quality. Open-admission colleges do not report it.

      Table admYears 2014 on, where reported

    • Students

      12-month headcount; students per faculty; staff and faculty

      Unduplicated students over a year, the student-faculty ratio, instructional staff by rank, salary by rank and staff by occupation.

      Reading tip. Salaries are equated to a 9-month contract; 2016-2020 files give only totals, so those years are blank.

      Table effy efd salis drvhrYears Headcount 2002 on; ratio about 2003 on; faculty 2012 on; occupations 2021 on

    • Outcomes

      Retention; graduation rates; awards within 8 years; degrees awarded

      Students returning the next fall, completion rates, longer-term outcomes including part-time and transfer students, and awards by level.

      Reading tip. Graduation rates cover only first-time, full-time students. Outcome Measures cover more students but are reported by group.

      Table efd drvgr om caYears Retention about 2003 on; graduation 2021 on; Outcome Measures 2015 on

    • Costs

      Tuition; total price; net price; aid

      Published tuition, cost of attendance, what aid recipients pay on average (by family income), the share receiving each kind of aid and average amounts.

      Reading tip. Sticker price is not what most students pay. Net price covers first-time, full-time undergraduates only.

      Table icay drvic sfaYears Tuition 2000 on; aid 2000 on

    • Costs

      Revenue and expenses, every year; per student

      Where money comes from and what it is spent on, in dollars, from whichever finance form the college files.

      Reading tip. Public, private nonprofit and for-profit colleges follow different accounting rules.

      Table ff1a ff2 ff3 drvfYears 1997 or 2002 on

    PLAIN-LANGUAGE GLOSSARYTerms and abbreviations Everyone

    Education data comes with its own vocabulary. Search or scroll.

    METHODSHow the numbers are handled AnalystsStaff

    A few rules apply everywhere on this site.

    Missing is never zero

    If a value was not reported, was hidden to protect privacy, or does not apply, the chart leaves a gap. A real zero is drawn as zero.

    Shares are not rates

    A bar showing that a group is 22% of graduates says who graduated. It does not say how likely that group is to graduate; that needs each group’s enrollment too.

    School years are labelled by their start

    2024 means the 2024-25 school year. Colleges use the fall of the file’s year. Private schools appear in survey years only.

    Nothing is ranked or scored

    There are no rankings, grades or stars. Where a state “typical” band appears, it is labelled context and shown only for years with at least 10 operating schools.

    Releases get revised

    NCES publishes data as preliminary, then provisional, then final; IPEDS replaces provisional files with revised ones. The coverage table shows each year’s stage.

    Totals are not always the sum of parts

    Detail rows can be hidden when counts are small, and subtotals are published alongside detail rows. We never add subtotals to details, so totals may exceed the visible parts.

    For analysts: value flags, identifiers and column rules
    • Flags. Source codes such as −1 (missing), −2 (not applicable), −3 (suppressed), M, N or text flags become empty values. A companion column (value_flag or <column>_flag) records why: reported, derived, adjusted, missing, not_applicable, not_reported, suppressed, not_meeting_standards.
    • IPEDS keeps negative codes as published, because in code columns they are labelled categories (for example “Not available”) and finance values can truly be negative. NCES’s own status columns appear as <column>_flag. Many IPEDS derived tables store numbers as text, with “.” or a letter for missing.
    • Identifiers are text with leading zeros preserved: ncessch (12-digit school), leaid (7-digit district), unitid (college), ppin (private school).
    • Derived values (students per teacher, lunch share, state median and middle half, year summary) are computed by the pipeline’s derive step from the published tables and are stored under data/derived/ and data/meta/. Students per teacher is left empty when teacher FTE is zero.
    • Dictionary. Every table column has an entry (label, description, unit, first and last year, caveat) built from NCES’s own documentation. Hover or focus a field name in a detail panel to read it.

    KNOWN LIMITSWhat to keep in mind, source by source Everyone

    Each source has quirks that can change how a number should be read. The short version comes first; open a group for the detail.

    Public schools (CCD)

    In short: the newest year may be incomplete; lunch eligibility is unreliable where schools enroll everyone automatically; small counts are hidden.

    • The latest year may be a preliminary directory with no enrollment, staff or lunch files yet. The map opens on the latest year that has enrollment.
    • Free and reduced-price lunch counts are not comparable across schools or years where the Community Eligibility Provision or similar rules apply, because eligibility may be reported for all students or carried forward.
    • Race and ethnicity categories were revised in 2009-10 (adding “Two or more races”). Totals are comparable; some rows are subtotals (“No Category Codes”, “Education Unit Total”) and are never added to detail rows.
    • Counts can be suppressed to protect privacy. District totals can differ slightly from the sum of school rows because of reconciliation and adult-education adjustments.
    • Status (open, closed, new, future, changed boundary) is as reported for that year. Closed schools are hidden unless you ask for them.
    • District finance amounts are in dollars of the year, not adjusted for inflation, and item definitions changed over time. The graduate and dropout files hold counts, not rates.
    • Before 2014-15 the files use older layouts: codes were converted to modern labels, and locale codes before 2006 use an older 8-category scheme. In 1997-98 to 2013-14 some states reported totals without race and sex detail, so detail rows may not add up. School years 1986-87 to 1996-97 exist only as fixed-width text and are not included.
    Locations and boundaries

    In short: most points are exact; some are approximate and drawn with a dotted outline.

    • Public school coordinates come from NCES EDGE (2014-15 onward). Where a year has no EDGE file yet, each school’s most recent EDGE point is used; schools with no earlier point, and colleges or private schools without source coordinates, were located from their address. PO boxes cannot be located and some addresses do not match.
    • IPEDS directory files carry coordinates only from about 2008, so institutions that closed earlier have no map location.
    • District boundaries are TIGER/Line vintages (as of January 1 of the labelled year). The newest school year reuses the latest vintage, so a recent boundary change may not appear yet.
    Private schools (PSS)

    In short: a survey every two years, and not every school answers.

    • The survey is conducted every two years (fall of the first year shown). The map shows the latest survey that began in or before the selected year, and says so.
    • School names and permanent IDs are in the public files from 2005-06 (and a few earlier years), so earlier surveys cannot be linked to schools or mapped. They remain in the data tables.
    • Questionnaire item numbers belong to each survey, and value labels follow the 2023-24 codebook, so definitions can differ in earlier years. NCES may impute values (see the imputation flags).
    Colleges (IPEDS)

    In short: different surveys use different definitions, so charts from different tabs are not interchangeable.

    • Fall enrollment race/ethnicity categories changed in 2010, so the race charts start there. 12-month headcount, completions (awards, not students) and admissions are separate surveys with their own definitions.
    • Student aid columns ending in a digit (for example npist0) are positional: the same name refers to different award years in different files.
    • Finance forms differ by institution type (public GASB, private nonprofit FASB, for-profit) and are only roughly comparable. The “every year” finance charts group the three forms into shared categories and show any remainder as “Other”.
    • Graduation-rate files hold cohort counts, exclusions and completions; a rate is computed only within one cohort. Faculty salaries for 2016-2020 are published only as total outlays, so those years are blank.
    • IPEDS files before 2000 use different layouts and many more table families. They are in the data tables, but not on the map or in the charts, and column definitions may differ.

    COVERAGEWhich years exist, and how final they are StaffAnalysts

    One row per table in the data. The strip shows the years available, coloured by release stage. This is read live from the site’s own data files, so it is always current.

    • Final
    • Provisional
    • Preliminary
    • Revised
    • As published (older files)
    • Stage not labelled

    Loading…

    TECHNICAL REFERENCEReuse the data or rebuild it DevelopersAnalysts

    Everything the site displays is a plain file you can download. There is no API and no database server.

    Open files

    Data are Parquet files, one per table and year:

    data/<dataset>/<table>/<year>.parquet

    • ccd, pss, ipeds: the survey tables as published, standardised.
    • derived: school metrics and profiles computed from them.
    • geo: points, district boundaries and the search index.
    • meta: dictionary, value labels, row counts, release versions.

    Guarantees

    • Files are deterministic: the same input always writes the same bytes.
    • A new NCES release that adds, drops or renames a column stops the build instead of being guessed at.
    • Validation (uniqueness, ranges, totals, file counts) must pass before any data are committed.
    • Raw downloads are never committed; every step can be re-run from the original sources.

    Try it now

    Any tool that reads Parquet over the web can query these files. For example, in DuckDB:

    SELECT *
    FROM read_parquet('…/data/ccd/membership/2024.parquet')
    LIMIT 10;

    Or in Python with pandas:

    import pandas as pd
    df = pd.read_parquet('…/data/ipeds/efadist/2024.parquet')
    df.head()
    For developers: rebuild, extend, contribute
    • Pipeline. Python and DuckDB, in pipeline/. Commands include update (download, check, standardise, derive), validate and derive. Column maps are year-ranged YAML files, so a new release is usually a short edit.
    • One state at a time. The state shown is set by a single configuration file; another state is built by adding a file and running the pipeline.
    • Web app. Svelte, MapLibre, DuckDB-WASM (reads the Parquet files in your browser) and Observable Plot, in web/. It is static, with no backend, and runs from any web host.
    • Tests. pytest for the pipeline, vitest for chart logic, and Playwright checks for the map, charts, tooltips, touch layout and accessibility (axe, light and dark).
    • Accessibility. Charts have text alternatives, tooltips are available on touch and keyboard, and colour is never the only cue (markers also differ in shape).

    CITE AND REUSECredit, license and feedback Everyone

    Education Explorer. Data: U.S. Department of Education, National Center for Education Statistics (Common Core of Data, Private School Universe Survey, IPEDS); U.S. Census Bureau (TIGER/Line, Geocoder). , accessed .

    The underlying federal data are public. The code is open source under the MIT license; see DATA_ATTRIBUTION.md for each source’s terms.

    Statistical use only. NCES public-use data are for statistical purposes. Do not use them to try to identify individuals.

    Found something wrong, or a number that looks odd? Open an issue with the school or college, the year and what you expected. The more specific, the faster it can be checked against the source file.