Empty is not the same as unavailable
NHTSA can answer an exact search with HTTP 400 while still reporting a successful, genuinely empty result. That specific payload shape is the only one treated as a verified empty source response: the status is 400, the message reports that results were returned successfully, the count is zero, and the results array is present and empty. Any other non-success response is reported as unavailable rather than as zero. A verified empty recall result means the queried source returned no matching model-level campaign at that moment. It is not safety clearance for the vehicle.
Why there is no single score
Complaint counts are raw report volumes. They rise with sales volume, vehicle age, mileage, media attention and the willingness of owners to file. Turning them into a rating would need validated vehicle-population denominators, age normalisation and a method that could be independently reproduced. None of those exist here, so ModelYearFacts publishes the separate evidence blocks and lets the reader compare like-for-like model years instead.
What is deliberately dropped
- Complaint narrative text and any VIN fragment.
- Owner contact and location fields.
- Long ODI investigation summary narratives.
- Model aliases beyond the exact vPIC canonical name.
- Manufacturer ownership relationships, which are not inferred from make names.
- Affiliate identifiers on outbound retailer links.
How current the data is
US dossiers still query official NHTSA and EPA APIs for bounded campaign details, complaint incident fields, identity and configurations. Cross-model search, complaint matrices, recall counts and investigation records use compact reviewed projections generated from the approved imported flat files; each page shows its projection timestamp and links the exact object register. Raw R2 is never bound to the public request path. UK MOT hubs separately ship a compact derived snapshot (make×model aggregates with a 500-test minimum), not live per-test queries and not the 109 million raw MOT rows.
Why CPSC equipment stays separate
The CPSC page selects only notices whose public heading or product name contains an explicit child-passenger, charging, lifting, tyre-care, towing, carrying or in-vehicle accessory term. It does not fuzzy-match long descriptions and does not join a consumer product to a make, model, year or VIN. CPSC remedy and company status can change, so the official notice always controls.
Which pages become permanent
US model-year files are gated on the EPA FuelEconomy.gov catalogue of vehicles sold in the US, which runs from 1984 to 2027 and yields 10,603 dossiers. UK MOT hubs use a separate gate: the compact derived MOT summary, min 500 tests, one URL per canonical make×model slug.
Limits to hold on to
- A complaint is an allegation, not a defect finding.
- An ODI investigation is an agency review, not by itself a defect finding or recall.
- A model-level recall result does not establish whether one VIN is affected.
- An empty result means only that the queried source returned no matching row at lookup time.
- EPA fuel-cost figures are standardised estimates, not quotes or predictions for one driver.
- US dossiers use only US sources. UK MOT statistics appear only on /mot hubs and are not mixed into NHTSA complaint or recall counts.