How to Access NHTSA FARS Data — Every Method, Honestly Compared

Six ways to access NHTSA's Fatality Analysis Reporting System (FARS). What each gives you, what it costs, what it doesn't do.

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.

MethodTypeCostDecoded?Geo queriesBest 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

Try farsapi.com in 30 seconds

Pull aggregate fatal crash stats for any US location, free, no signup:

Run a sample query See an example $9 report API guide

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