Method and data

This page lists every source the site uses, the rules the tools apply, how the data is refreshed and what the tools cannot do.

1. Reading the VIN in the browser

The first pass applies 49 CFR Part 565 without any network request: 17 characters, no I, O or Q; the check digit of position 9 with the transliteration table and weights 8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2, remainder of the sum divided by 11, 10 written X; the model year from position 10 in the 30-code cycle, the seventh character choosing between 1980-2009 and 2010-2039 for light vehicles; the maker from the first three characters, completed by positions 12 to 14 when the third is a 9. The maker table holds 679 codes downloaded from vPIC (GetWMIsForManufacturer, DecodeWMI).

2. Federal lookups

Your browser then calls, directly: vPIC DecodeVinValuesExtended for the factory record; the NHTSA Recalls API recallsByVehicle with the make, model and year vPIC returned and also with the version code of the trim (Mercedes-Benz files a 2019 C-Class C300 under "C 300" and "C300", not "C-Class"; Lexus files RX recalls under "RX" and "RX350"), every campaign found being counted once; the NCAP Safety Ratings API for the model, else the series (a BMW 330i is rated as "3 Series"), with the versions of the same drive type and door count shown first; and the fueleconomy.gov menus and vehicle records, where each EPA name is scored against the vPIC drive type, doors, body, electrification and trim (a 2020 Camry SE 4x2 is the "Camry LE/SE", not the AWD or hybrid version; a 2020 X5 xDrive40i is not an "X5 M"), then the engine is matched by displacement and cylinders. No request goes through our servers.

3. Recall tables on the brand and model pages

The tables come from NHTSA's flat file FLAT_RCL_POST_2010, downloaded and parsed by scripts/data/build-recalls.py. A campaign is one NHTSA number of type V (vehicle); equipment, tire and child seat campaigns are excluded. Its year is the year NHTSA received the Part 573 report. "Vehicles covered" is the potentially affected population the maker declared for the whole campaign, so a campaign naming two brands counts its vehicles for each. Rows NHTSA marks "redundant" or "duplicate" are dropped. This build uses the file dated October 15, 2026, whose latest campaign was received on October 9, 2026: 9,581 vehicle campaigns received since 2016.

4. Ratings and fuel economy

NCAP ratings of the model pages come from the Safety Ratings API, read on October 16, 2026 for model years 2015 onward. EPA figures come from vehicles.csv and the fuel prices of fueleconomy.gov, read on October 16, 2026: regular $4.33, premium $5.37, diesel $6.18 a gallon, electricity $0.15 per kWh. The yearly cost is miles divided by combined mpg times the price, or miles times kWh per 100 miles divided by 100 times the electricity price. The median used for comparison is that of the 816 gas, diesel and hybrid versions of model year 2026: 22 mpg.

5. Federal rules applied by the calculators

Free recall remedy: 15 calendar years from the first sale to the recall notice, 5 for tires (<a href="https://www.law.cornell.edu/uscode/text/49/30120" target="_blank" rel="nofollow noopener noreferrer">49 U.S.C. 30120(g)</a>). Odometer disclosure exemption: 10 years for model year 2010 and older, 20 years from model year 2011 (<a href="https://www.law.cornell.edu/cfr/text/49/580.17" target="_blank" rel="nofollow noopener noreferrer">49 CFR 580.17</a>). NCAP rollover stars: five below a 10 % risk, then one star less for each 10 points, one star above 40 %.

6. Updates

A scheduled job runs every Monday: it downloads the recall file, the EPA file and the NCAP ratings again, rebuilds the data, runs the tests and republishes the site. The example decodes shown before you type (the VIN 1FTFW1CT5DFC10312 and the motorcycle pattern JYARN23E*9A) are real API answers stored at build time.

7. Tests

The engine is covered by automated tests: the name matching against the real model lists of the probe (Camry, Civic, Rogue, Grand Cherokee, X5, RX, C-Class, GLE), check digits computed by hand on several VINs, every year code against the federal table, the seventh-character rule, the free remedy and odometer rules at their limits, rollover bands, the fuel cost formula against hand calculations, and the parsers and name matching against stored real responses from vPIC, the Recalls API, NCAP and fueleconomy.gov.

8. Limits

  • A decode reflects what the maker filed for a VIN pattern. Blank fields mean "not reported", and some imports or low-volume vehicles are missing from vPIC.
  • Recall lists cover a model and year. Whether one vehicle is affected or repaired comes from the maker, through <a href="https://www.nhtsa.gov/recalls" target="_blank" rel="nofollow noopener noreferrer">NHTSA’s VIN search</a>.
  • Model names differ between agencies. On 24 real VIN patterns of 20 common models (script scripts/data/probe-matching.mjs, run on October 16, 2026), the matching found recalls for 23 (the 24th, a 2020 Mazda CX-5, has no recall in NHTSA's file), NCAP ratings for 24 and an EPA record for 24, against 21, 22 and 22 before the version codes and the scoring were added; it can still miss an unusual name, and the recall check lets you pick the name NHTSA uses.
  • NCAP does not test every version every year, and does not rate motorcycles or heavy trucks; the EPA does not rate vehicles above 8,500 lb GVWR except medium-duty passenger vehicles.
  • Title brands, accidents, odometer history and theft are not in these sources; see <a href="https://vehiclehistory.bja.ojp.gov/" target="_blank" rel="nofollow noopener noreferrer">NMVTIS</a>.

Corrections: contact page; policy: editorial policy.

Federal sources behind this page

Published by

Publisher of a free VIN decoder that reads NHTSA and EPA records without a paid report

Data updated on · Editorial policy · Contact

Recall, rating and fuel economy data for 2026, pulled from NHTSA and EPA on