The short answer
FARS data is public domain. There are six practical access methods covering different use cases: NHTSA's official Crash API (programmatic, free, but limited), NHTSA's annual CSV dumps (batch processing), NHTSA's Crash Viewer web GUI (one-off lookups), Google BigQuery's public dataset (SQL analysis), the BTS geospatial portal (mapping/GIS), and third-party REST wrappers like farsapi.com (decoded labels, radius queries, joined to traffic volume).
Pick by your use case, not by who has "the most data" — they all start from the same NHTSA source. The differences are in how the data is delivered and what processing has been done before you receive it.
Comparison at a glance
Last reviewed 2026-05-08. NHTSA's official URLs and file paths verified; year coverage and freshness on third-party platforms (BigQuery, Kaggle) change over time — check those listings directly for the current state.
| Method | Type | Cost | Decoded? | Geo queries | Best for |
|---|---|---|---|---|---|
| NHTSA Crash API | REST API (JSON/XML/CSV) | Free | Numeric codes | State + county only | Programmatic access where you can decode codes yourself |
| NHTSA annual CSV dumps | File downloads (CSV/SAS/DBF) | Free | Numeric codes + lookup tables | Not applicable (file) | Loading into your own database, deepest historical reach (1975+) |
| NHTSA Crash Viewer (web GUI) | Web app | Free | Decoded | State + county only | One-off researcher / journalist lookups, no programming |
| Google BigQuery (nhtsa_traffic_fatalities) | SQL data warehouse | Free up to 1TB/mo queries | Numeric codes | SQL-defined (any expression) | Ad-hoc SQL analytics, joining FARS to your other data in BigQuery |
| BTS Geospatial portal | ESRI shapefiles / GeoJSON / WMS | Free | Some decoded | Native (vector layers) | Mapping in QGIS, ArcGIS, or web mapping libraries |
| farsapi.com | REST API (JSON) | Free tier + $19/mo + $9/report | Decoded labels everywhere | Radius / intersection / state / county | Building products on top — labels decoded, radius search, AADT-joined, recall context |
Each method, in detail
1. NHTSA Crash API
URL: https://crashviewer.nhtsa.dot.gov/CrashAPI/ (note the /crashviewer/ prefix — easy to miss).
NHTSA's official REST API exposing FARS records. Free, no authentication. Returns JSON, XML, or CSV. Coverage typically reaches back to ~2010 with the most recent year available about 18 months after the calendar year ends.
Strengths: No signup, no key, run a query right now. Multiple output formats. Data is direct from the agency.
Limitations: Hard 5,000-record cap per request (you can't pull a multi-year national dataset in one call). No radius or intersection queries — only state + county. Returns numeric codes you have to decode using NHTSA's Coding Manual (DOT HS 813 798). No aggregate / statistics endpoints. Schema drifts year-over-year — fields rename, columns disappear (the DRUNK_DR column was removed from ACCIDENT.csv starting 2021).
Best for: a developer who wants the canonical source and is comfortable handling code decoding and schema drift in their own pipeline.
2. NHTSA annual CSV / SAS / DBF dumps
URL: https://www.nhtsa.gov/file-downloads?p=nhtsa/downloads/FARS/
One zip file per year, ~50-150MB. Contains the full table set: ACCIDENT, VEHICLE, PERSON, plus subtables (CEVENT, DISTRACT, DRIMPAIR, MANEUVER, VIOLATN, etc.). Available from 1975 forward — this is the deepest historical archive of any access method.
Strengths: Goes back to 1975 (the API does not). Self-contained zips that load cleanly into a relational DB. No rate limits — download once, use locally.
Limitations: File-based, not queryable. Numeric codes (decoding requires the Coding Manual). Each year's release has a slightly different schema (column add/remove/rename per year), so loading multi-year data requires per-year normalization logic.
Best for: data engineers loading FARS into a warehouse, academic researchers who need pre-2010 data, or anyone building a custom pipeline.
3. NHTSA Crash Viewer (web GUI)
URL: https://cdan.nhtsa.gov/
NHTSA's web-based query interface — the friendly version of the Crash API. Decoded labels, drill-down by state/county/year/crash, summary tables, exportable CSVs.
Strengths: Decoded labels. No code required. Good for fact-checking a specific number.
Limitations: Not programmatic. Slow for any query that returns more than a few hundred records. State + county filtering only. Sessions expire — not suitable for automation.
Best for: journalists, students, and researchers doing one-off lookups.
4. Google BigQuery — bigquery-public-data.nhtsa_traffic_fatalities
URL: https://console.cloud.google.com/marketplace/product/nhtsa/nhtsa-traffic-fatalities
Google maintains the FARS dataset as a public BigQuery dataset. Standard SQL access, queryable in seconds across the entire dataset, free up to 1TB of queries per calendar month per Google account.
Strengths: Full SQL — joins, aggregations, window functions, geo functions all work natively. Fast for analytics. Easy to join to your own BigQuery data. No file downloads, no decoding pipeline.
Limitations: Numeric codes (BigQuery doesn't bundle decode lookups). Year coverage and update cadence are set by Google, not NHTSA — historically there's been some lag and not every year is always present. Verify the current coverage on the Marketplace listing before committing a project to it. Requires a Google Cloud account.
Best for: SQL-comfortable analysts running ad-hoc queries, especially when joining FARS to other BigQuery public data (Census, weather, etc.).
5. BTS Geospatial portal
URL: https://geodata.bts.gov/
The Bureau of Transportation Statistics publishes FARS-derived geospatial layers as ESRI shapefiles, GeoJSON, and WMS/WFS endpoints. Designed for mapping use cases.
Strengths: Native geospatial format. Loads directly into QGIS, ArcGIS, Mapbox, Leaflet. Polygon-based queries are easy.
Limitations: Layers are usually published as snapshots (e.g., a single year), not the full historical archive. Schema is mapping-oriented, not analytical — fewer fields than the source ACCIDENT/VEHICLE/PERSON tables. Update frequency varies by layer.
Best for: GIS analysts, traffic engineers, planners doing map-based work.
6. farsapi.com (this site)
URL: https://farsapi.com — REST API, JSON output.
A modern wrapper around the NHTSA FARS data. Pre-decoded labels (no numeric codes), schema-normalized across years, joined to FHWA HPMS road segments for traffic volume (AADT), and pre-joined to NHTSA Recalls API for per-vehicle recall context.
Strengths: Radius and intersection queries (the killer feature for legal and safety work — none of NHTSA's own products support this). Decoded human-readable labels in every response (vehicle make = "Ford", not 12). Multi-year schema drift handled — query 2017-2023 in one call without code-decoding logic. Aggregate statistics endpoints (state ranking, hotspots, year-over-year trends). FHWA HPMS traffic volume joined to ~80% of crashes for per-VMT rate analysis. NHTSA recall context attached to each vehicle. AI-narrated intersection reports. Free tier (statistics + intersection previews) and paid tiers ($19/month for full data, $9 per intersection report).
Limitations: Year coverage is currently 2017-2023 — for pre-2017 data you need NHTSA's CSV dumps. Paid features behind a key. Smaller team than the federal agency, so fewer support guarantees than NHTSA's official products.
Best for: developers building products (insurance underwriting, legal discovery, fleet safety, transportation engineering) where decoded labels, radius queries, and AADT context save weeks of pipeline work.
How to choose
- I want to see a number for one location, today, no code: NHTSA Crash Viewer (web GUI).
- I'm building an academic paper covering 1975-present: NHTSA annual CSV dumps. Nothing else goes that far back.
- I'm running ad-hoc SQL analytics inside Google Cloud: BigQuery's nhtsa_traffic_fatalities dataset.
- I'm building a map of fatal crashes: BTS geospatial portal.
- I'm building a product that needs radius queries, decoded labels, and joined traffic volume: farsapi.com (or build it yourself from CSVs over a few weeks).
- I want raw FARS through the official agency without value-add: NHTSA's Crash API.
Try farsapi.com in 30 seconds
Pull aggregate fatal crash stats for any US location, free, no signup:
Related: Does NHTSA FARS have an API? · FARS API vs NHTSA CrashAPI feature comparison · FARS API vs state crash data APIs · Working with NHTSA FARS data: schema gotchas