Decode VIN
Batch Validate
Test VIN Generator

Decode & Validate a VIN

Enter a 17-character VIN. The check digit is validated instantly in your browser; vehicle specs load from the official NHTSA vPIC database. No VIN is ever stored or logged.

1HGCM82633A004352 JHMCM56557C404453 WP0AA2A93BS788158
Valid VIN

Batch Validate VINs

Paste multiple VINs, one per line. The ISO 3779 check digit for each VIN is verified locally in your browser — no data is sent anywhere.

#VINStatusCheck DigitNotes

Generate a Valid Test VIN

Generate a structurally valid 17-character VIN with a correct ISO 3779 check digit. Perfect for testing your own VIN validation code, form fields, and API integrations.

Note: A valid check digit proves the VIN is mathematically well-formed. It does not prove the vehicle exists. Use it to test software, not to certify a real vehicle.

How VIN Decoding Works

A Vehicle Identification Number, or VIN, is a 17-character code stamped on every vehicle built for sale since 1981. It is not a random string. Each section stores a specific fact about the car. The first three characters are the World Manufacturer Identifier, or WMI, which tells you the country and brand. Characters four through eight are the Vehicle Descriptor Section, which encodes the model, body style, engine, and restraint system. Position nine is a check digit, a mathematical value computed from the other sixteen characters using the ISO 3779 algorithm. Character ten is the model year code, and character eleven identifies the assembly plant. The final six characters are the vehicle's unique serial number. A decoder reads these fields and translates them into plain language.

The check digit is not a security feature — it is an error-detection code. It catches single-character typos and most digit transpositions, which is exactly what happens when someone hand-copies a VIN from a windshield, title, or door sticker. To compute it, each character is converted to a number (letters A-H are 1-8, J-N are 1-5, P-Z use a fixed map, digits keep their value), then each value is multiplied by a fixed weight (8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2). The products are summed and divided by 11. A remainder of 10 is written as the letter X; otherwise the remainder is the check digit. If the computed value matches position 9, the VIN passed the check.

For full vehicle details, this tool calls the National Highway Traffic Safety Administration's public vPIC (Vehicle Product Information Catalog) API — the same official source used by dealers, insurers, and state DMVs. The lookup is free, requires no API key, and returns make, model, model year, body class, engine, and assembly plant data.

Why AI Cannot Replace This Tool

Large language models cannot decode a VIN reliably. They predict text patterns rather than querying a database, so they tend to invent make and model details that look plausible but are wrong. Even the check digit, which is a simple weighted arithmetic sum, trips them up because they do not perform exact arithmetic. A VIN decoder that pulls live data from the official NHTSA vPIC catalog is deterministic: the same VIN always returns the same result, with no guessing, no hallucination, and no outdated training data. It also keeps the VIN private, because validation of the check digit happens entirely in your browser and the lookup calls the government's public API directly.

  • AI models hallucinate make/model/year from VIN patterns instead of querying real data
  • The ISO 3779 weighted mod-11 check digit requires exact arithmetic AI cannot perform reliably
  • NHTSA vPIC returns authoritative, up-to-date vehicle specifications
  • Deterministic results — the same VIN always decodes to the same answer
  • Your VIN stays private — check digit math runs locally, and the lookup uses the public government API
  • Batch validation of many VINs at once is trivial here, tedious and error-prone for AI

Frequently Asked Questions

How do I find my VIN?

The VIN is usually visible through the lower corner of the driver's-side windshield, on the driver's-side door jamb sticker, on the firewall under the hood, and on vehicle registration and insurance documents. Motorcycles stamp it on the steering neck. Trailers stamp it on the left front frame.

What is a VIN check digit and why does it matter?

The check digit is the 9th character of a 17-character VIN. It is computed from the other 16 characters using the ISO 3779 weighted mod-11 algorithm and acts as an error-detection code. If the 9th character does not match the computed value, the VIN was either typed wrong or tampered with. NHTSA requires every US-market VIN (since 1981) to satisfy this equation, so a failed check is a red flag when copying a VIN or inspecting a vehicle.

Does a passing check digit mean the VIN is real?

No. A passing check digit only proves the VIN is mathematically well-formed and free of typos. Someone can fabricate a 17-character string and compute a legal check digit for it. To confirm a VIN corresponds to a real vehicle, run it through a decoder that queries the NHTSA vPIC database and, for history (title brands, theft, recalls, accidents), a title-history service that accesses state records.

What does the VIN decode tell me about a car?

From the VIN alone you get the manufacturer, country of assembly, model year (encoded in position 10), body class, and a rough idea of the engine. Querying NHTSA vPIC adds make, model, model year, displacement, cylinders, drive type, fuel type, and assembly plant location. It does not reveal ownership history, odometer readings, accident records, or current market value — those require a paid title-history report.

Can a VIN be shorter than 17 characters?

Vehicles built before 1981 used shorter VINs (5 to 13 characters) that are not standardized and cannot be validated with the ISO 3779 check digit. Every vehicle produced for the US and Canadian market since the 1981 model year must use the standardized 17-character format. This tool validates the modern 17-character standard only.

Which characters are never used in a VIN?

The letters I, O, and Q are never used in a VIN because they look too similar to the digits 1 and 0. If you see one of those letters in a VIN, it is a typo. All other letters A-Z (except I, O, Q) and digits 0-9 are allowed.

Is my VIN sent to a server?

The check digit validation runs entirely in your browser, so the VIN never leaves your device for that step. The optional vehicle lookup sends the VIN to the National Highway Traffic Safety Administration's public vPIC API, which is the same official source used by dealers and insurance companies. No VIN is stored, logged, or sold by this tool.

What is the model year code in a VIN?

Position 10 of a VIN is a code that encodes the model year on a rotating 30-year cycle. For example, A = 1980 or 2010, S = 1995 or 2025, T = 1996 or 2026. Because the code repeats every 30 years, it tells you the decade of production but not the exact year — position 11 (plant code) and the WMI help narrow it down. A complete table is shown below.

VIN Model Year Code Chart

Position 10 of a VIN encodes the model year. Codes repeat every 30 years.

CodeYearCodeYearCodeYear
A1980 / 2010L1990 / 2020Y2000 / 2030
B1981 / 2011M1991 / 202112001 / 2031
C1982 / 2012N1992 / 202222002 / 2032
D1983 / 2013P1993 / 202332003 / 2033
E1984 / 2014R1994 / 202442004 / 2034
F1985 / 2015S1995 / 202552005 / 2035
G1986 / 2016T1996 / 202662006 / 2036
H1987 / 2017V1997 / 202772007 / 2037
J1988 / 2018W1998 / 202882008 / 2038
K1989 / 2019X1999 / 202992009 / 2039
Codes are position 10 characters. The cycle repeats every 30 years, so combined with the WMI (first 3 chars) and position 11 plant code you can narrow the actual year.

Related Tools