Skip to content

Rate & confidence intervals ​

Every compute response reports a rate with a 95% confidence interval, plus the numerator and denominator it was built from.

The rate ​

rate = N / (D_miles / 1_000_000)
  • N: the weighted count of crashes matching your selections (outcome, vehicle class, road type, weather, light, crash year, and so on). If under-reporting adjustment is on, Blincoe multipliers are applied here.
  • D_miles: calibrated vehicle-miles traveled for the selected road groups and vehicle classes. D_billions is the same value in billions.
  • rate: incidents per million miles (IPMM).

Numerator details ​

  • Outcome is a nested filter: each outcome (observed_any_injury, airbag, ka, fatal, and the rest) is a subset of police_reported.
  • Under-reporting: the adjusted option applies Blincoe et al. 2023 (NHTSA) multipliers, PDO ×2.48, non-fatal injury ×1.47, fatal ×1.0.
  • Crash year: geofence cities carry a crash_year column. Selecting multiple years pools their crashes and scales the denominator by the number of years, so the rate stays an annual mean.

Denominator details ​

  • Calibrated VMT (default) blends state-DOT roadway-inventory totals with FHWA VM-4 per-class fractions. VM-4 is pinned to the 2023 Highway Statistics release, the same year as every served denominator, and one release is used in every region. The fractions sum to one, so a selection covering every vehicle class is unaffected by the release. Single-class rates depend on it.
  • denominator_vmt (California only) toggles between the Caltrans CPRD total and an HPMS functional-class total.
  • multiplier_vmt selects the exposure source inside the operator-weighting multiplier. It is relevant only when operator_weighting=robotaxi, and ignored when operator_weight is set explicitly.

Operator weighting (geofence) ​

When operator_weighting=robotaxi, the rate is paired with a Chen 2025 spatial multiplier that re-weights region exposure toward where an ADS operator actually drives, using the operator's rider-only mileage. It applies only when every selected road type is a surface street. rate_non_dyn is always returned for reference. rate_dyn and multiplier are null when the operator mileage layer is not loaded.

The applied multiplier can be overridden with operator_weight, a positive number. When set, the headline becomes rate_dyn = rate_non_dyn × operator_weight and the CI scales by it, substituting a custom operator weight for the computed default. Leave it unset (null) to use the computed value. The override takes effect only on the same dynamic path: operator_weighting=robotaxi, surface-only, operator mileage present.

Confidence intervals ​

Routes and depots return a ci_method choice:

  • Fay-Feuer (default): a weighted-Poisson interval with a phantom-event correction for zero-crash legs.
  • Empirical Bayes: a Gamma-Poisson interval using between-cell rate variance.

Geofence intervals use the same weighted-Poisson machinery. rate_low and rate_high are the 95% bounds, and route responses also expose the propagated variance.

Data & licensing ​

Outputs are derived statistics only (rates, counts, bounds). The API never redistributes raw third-party crash records. Crash data comes from public state sources (TxDOT CRIS, CHP/CCRS SWITRS, ADOT ALISS, Nevada DOT, IDOT), exposure from FHWA HPMS and state DOT inventories, weather from NOAA ISD, and ADS exposure from a published operator dynamic benchmark.

Litigation caveat

Safety data compiled for federal highway-safety programs is shielded under 23 U.S.C. § 409 in many states. Do not market these outputs as litigation evidence, and do not use crash data to solicit involved parties.

Attribute every published figure. Full per-source citations live in the project's data license register.

Derived statistics only. Attribute every published figure. Maintained by Valgo.