ยท 9 min read

What's in Your Car's VIN Barcode

Open the driver's door and there is usually a barcode on the label in the frame. It holds your vehicle identification number, and those 17 characters say more than most owners realise: who built the car, where, which model year, and whether the number has been copied down correctly.

Most cars carry a barcode that their owners never look at. It is on the certification label in the driver's door frame, and often on the window sticker of a new car too. Scan it and you get 17 characters of plain text: the vehicle identification number, or VIN.

The VIN is not secret and it is not personal data on its own. It is the key that every recall database, parts catalogue, insurer and history-report service uses to identify one specific vehicle. Each section of it means something, and one character exists purely to catch a wrong digit. You can take one apart below.

Decode a VIN

Type or paste the 17 characters from the barcode label, the windscreen plate or your registration document. Nothing leaves your browser.

Where the Barcode Is, and What Kind It Is

  • Driver's door frame. The certification label on the B-pillar or the edge of the door usually prints the VIN as a Code 39 barcode. Code 39 was a natural fit: it handles uppercase letters and digits, needs no check character of its own, and was already the automotive industry's standard for parts labels.
  • Window sticker on a new car. Showroom stickers commonly repeat the VIN as a barcode for dealers' scanners. Some manufacturers also add a 2D code that links to the build sheet.
  • Windscreen plate and documents. The plate visible through the windscreen and the registration document carry the VIN as printed characters, usually without a barcode.

Your phone's built-in camera will usually ignore a Code 39 barcode, because default camera apps look for QR codes. A scanner app that supports linear formats reads it instantly; which barcodes your phone can actually scan explains the gap. If you have a photo of the label, the scanner in our guide to scanning codes on a computer reads Code 39 from an image as well.

The 17 Characters, Section by Section

The structure comes from ISO 3779 and, for vehicles sold in the United States, from the federal rule 49 CFR Part 565. Using the classic example VIN 1M8GDM9AXKP042788:

PositionsExampleNameWhat it tells you
1โ€“31M8World manufacturer identifier (WMI)The maker and the country it registered in. The first character gives the region: 1โ€“5 North America, Jโ€“R Asia, Sโ€“Z Europe, 6โ€“7 Oceania, 8โ€“9 South America, Aโ€“C Africa.
4โ€“8GDM9AVehicle descriptor section (VDS)Model, body style, engine and restraint system, in a code each manufacturer defines for itself.
9XCheck digitCalculated from the other 16 characters. Catches a misread or a typo.
10KModel yearOne character from a 30-year cycle (see below).
11PPlantWhich assembly plant built the vehicle, coded by the manufacturer.
12โ€“17042788Serial numberThe production sequence number.

Two rules apply across the whole string. A VIN never contains the letters I, O or Q, because they are too easily confused with 1 and 0. And it is always exactly 17 characters for vehicles built since 1981; anything older predates the standard.

How the Check Digit Works

Position 9 is computed, not assigned. Each letter is first converted to a number (A=1 to H=8, J=1 to R=9 skipping Q, S=2 to Z=9; digits stay as they are). Each of the 17 values is multiplied by a fixed weight, the products are added, and the total is divided by 11. The remainder is the check digit, written as X when it is 10.

Position1234567891011121314151617
Character1M8GDM9AXKP042788
Value14874491โ€“27042788
Weight876543210098765432
Product8284835161218100185602410282416

The products add up to 351. 351 divided by 11 leaves a remainder of 10, so the check digit is X, which is exactly what position 9 holds. Position 9 itself has a weight of 0, so it never affects its own calculation.

The check digit is mandatory for vehicles sold in North America and China. Many European and Japanese domestic-market vehicles do not use it, so a mismatch on one of those is not, by itself, a sign of anything wrong.

Reading the Model Year

Position 10 cycles through 30 codes: the letters A to Y without I, O, Q, U or Z, then the digits 1 to 9. The cycle restarted in 2010, so A means 1980 or 2010 and K means 1989 or 2019. For North American cars and light trucks, position 7 settles which: a digit there means the earlier year, a letter the later one. In the example VIN, position 7 is 9, so K is 1989.

CodeYearCodeYearCodeYear
E2014L2020T2026
F2015M2021V2027
G2016N2022W2028
H2017P2023X2029
J2018R2024Y2030
K2019S202512031

The model year is not the build date. A car built in the autumn is usually sold as the following model year, so a 2027 model can roll off the line in 2026. The build month is printed separately on the door-frame label.

What a VIN Can and Cannot Tell You

Decoding the VIN yourself gives you the manufacturer, region, model year and plant. The manufacturer-defined section (positions 4 to 8) needs that maker's own tables to turn into a model and engine, which is what VIN-lookup services hold.

What a VIN does not contain is anything about the owner: no name, no address, no registration number. That is why it is printed openly on the dashboard. It is, however, the key to a vehicle's history. With it you can check for open safety recalls: in the United States through NHTSA's recall lookup at nhtsa.gov/recalls, and in the UK through the government's vehicle recall checker.

Spotting a Cloned VIN

A stolen car is sometimes given the VIN of a legitimate one of the same model, so that checks come back clean. The check digit does not help here: a cloned VIN is copied from a real car, so it is valid. What catches it is consistency. Before buying a used car, compare the VIN in three places: the windscreen plate, the door-frame label, and the registration document. Then compare the model year code against the age of the car, and the region code against where it is supposed to have been built. Any mismatch is a reason to walk away and report it.

Frequently Asked Questions

What type of barcode is a VIN barcode?

Usually Code 39, a linear barcode that encodes uppercase letters and digits. Some newer labels add a 2D code such as Data Matrix or QR alongside it. The content is the same 17-character VIN either way.

Why won't my phone camera scan the VIN barcode?

Default camera apps look for QR codes and generally ignore linear barcodes such as Code 39. Use a scanner app that supports Code 39, and hold the phone so the whole barcode fits across the frame with a little space either side.

Is it safe to share my VIN?

Generally yes. It identifies the vehicle, not the owner, and it is visible through the windscreen anyway. Buyers routinely ask for it to run history checks. Be wary only when someone wants the VIN together with your registration number and personal details, which is the combination used in vehicle fraud.

What does it mean if the check digit does not match?

Most often a character was misread or mistyped: an 8 for a B, a 5 for an S, a 2 for a Z. Re-check the VIN against the plate. If the vehicle was built for North America and the VIN on the plate itself fails the check, treat it as a warning sign. Vehicles built for some other markets simply do not use the check digit.

Can I tell the exact model from the VIN?

Partly. Positions 1 to 3 give the manufacturer and positions 10 and 11 the year and plant, which anyone can decode. Positions 4 to 8, which describe the model and engine, follow each manufacturer's own coding, so you need their tables or a VIN-lookup service.

Why are there no I, O or Q characters in a VIN?

To prevent misreading. I and O look too much like 1 and 0, and Q too much like 0, both on a stamped metal plate and to a barcode reader recovering from a smudge. Leaving them out makes every VIN character unambiguous.

Scan the VIN Barcode With Your Phone

Default camera apps skip the Code 39 barcode on a door-frame label. Scan & Generate reads Code 39, Data Matrix, PDF417 and every other common format, and keeps a history you can export to CSV.

More Barcodes, Decoded

The same field-by-field treatment for other everyday barcodes: boarding passes, driver's licences and train tickets.