Prepared for FCPS technical/compliance review.
College Match's live college data comes from the College Scorecard API, operated by the U.S. Department of Education:
Base endpoint: https://api.data.gov/ed/collegescorecard/v1/schools.json
Access: via api.data.gov, a federal government API gateway, using a registered API key
Coverage: accreditation, acceptance rates, SAT/ACT score ranges, tuition, net price, graduation rates, and enrollment for every Title IV-eligible postsecondary institution in the United States
Update cadence: the Department of Education refreshes College Scorecard data annually following each award year's IPEDS (Integrated Postsecondary Education Data System) collection cycle
This is the same underlying federal dataset used by sites like collegescorecard.ed.gov, and the same IPEDS data that feeds most third-party college search and ranking tools.
If the API is unreachable (no network, API key not configured, or the request fails), the app falls back to a static, bundled dataset of 100+ colleges (CollegeDatabase.swift) so the app remains functional offline.
Action item before FCPS deployment: the static fallback dataset currently has no per-record provenance or "as of" date attached to it — each entry is hardcoded without a note on which year's data it reflects. Before this goes in front of Sethi, we should either (a) add a lastVerified or sourceYear field to the static records, or (b) regenerate the static file directly from a dated College Scorecard pull and document that generation date here. Right now we cannot tell a reviewer "this static entry is current as of X" with certainty, and that's a fair question for IT/compliance to ask.
Rankings (CollegeRankings: US News, Forbes, WSJ, QS) are stored as static integers in the database and are not part of the Scorecard API. These should be sourced and dated separately, or removed/labeled as "approximate" if their origin can't be confirmed.
Mascot, school colors, Greek life, Division I status — cosmetic/ campus-life fields not present in Scorecard data; these are manually entered in the static fallback file.
Essay prompts (EssayPromptDatabase.swift) are independently maintained, not derived from a government source.
The admissions probability shown in ChanceMeView (ChanceCalculator) is not a government or third-party figure — it's a formula computed inside the app, using the college's Scorecard-sourced acceptance rate and SAT/ACT ranges as inputs, adjusted by the student's own GPA/score gap and a few small additive boosts (legacy, first-gen, activity strength), then capped by selectivity tier. The app already discloses this is an estimate, not a guarantee, in the UI — that disclaimer should stay visible wherever the chance percentage appears.
College Match sources institutional admissions, cost, and outcomes data from the U.S. Department of Education's College Scorecard API, a public federal dataset built from IPEDS reporting. No student-identifying data is sent to or received from this API — it is queried using only college identifiers (name, state, etc.), never student information. A static, offline copy of a subset of this data ships with the app as a fallback for connectivity loss.