---
title: "How to Decode a VIN: What All 17 Characters and the Check Digit Mean"
description: "Learn to read any Vehicle Identification Number position by position: country and manufacturer codes, model year table, the check digit calculation with a worked example, free VIN lookups, and how to spot VIN cloning."
last_updated: "2026-06-19"
---

# How to Decode a VIN: What All 17 Characters and the Check Digit Mean

*Technical · 13 min read · September 13, 2026 · by Tajammal Maqbool*

Learn to read any Vehicle Identification Number position by position: country and manufacturer codes, model year table, the check digit calculation with a worked example, free VIN lookups, and how to spot VIN cloning.

## The 17 Characters That Tell a Car's Story

Every car, truck, and motorcycle built for road use since the 1981 model year carries a **Vehicle Identification Number**, or VIN. It is a 17-character code that works like a fingerprint: no two vehicles made within a 30-year window share one.

Most people only look at their VIN when an insurance form, a registration renewal, or a used-car listing asks for it. But those 17 characters are not random. Read correctly, they tell you **where the vehicle was built, who built it, what kind of vehicle it is, its model year, and which factory it came from**. One character even lets you check, with simple arithmetic, whether the whole VIN has been typed correctly.

This guide walks through every position, shows the check digit calculation with a real example, and explains how to use a VIN to protect yourself when buying a used car.

---

## Where to Find Your VIN

Before decoding, you need the number itself. The most common locations are:

- **The dashboard**: on a small plate at the lower driver-side corner, readable from outside through the windshield
- **The driver-side door jamb**: on the manufacturer's certification label
- **Vehicle documents**: the title, registration card, and insurance card
- **The frame or engine bay**: stamped on some vehicles, especially trucks and older models

When buying a used car, **check that the VIN matches in at least three places**: the dashboard plate, the door jamb label, and the title. A mismatch is one of the clearest warning signs of fraud (more on that below).

---

## The Three Sections of a VIN

The modern 17-character format is defined internationally by ISO 3779 and, in the United States, by federal regulation (49 CFR Part 565). It splits into three sections:

| Positions | Section                                   | What it identifies                        |
| --------- | ----------------------------------------- | ----------------------------------------- |
| 1 to 3    | **WMI**: World Manufacturer Identifier    | Country and manufacturer                  |
| 4 to 9    | **VDS**: Vehicle Descriptor Section       | Model details, plus the check digit (9)   |
| 10 to 17  | **VIS**: Vehicle Identifier Section       | Model year, plant, and serial number      |

One rule applies across all 17 positions: **the letters I, O, and Q are never used**, because they are too easily confused with the digits 1 and 0.

---

## Positions 1 to 3: World Manufacturer Identifier

### Position 1: Country or Region of Manufacture

The first character shows **where the vehicle was assembled**, not where the brand is headquartered. Common codes include:

| Code        | Country          |
| ----------- | ---------------- |
| 1, 4, 5     | United States    |
| 2           | Canada           |
| 3           | Mexico           |
| J           | Japan            |
| K           | South Korea      |
| L           | China            |
| S           | United Kingdom   |
| W           | Germany          |
| Y           | Sweden or Finland |
| Z           | Italy            |

This surprises many buyers. A BMW X5 built in South Carolina starts with **5**, and many Hondas and Toyotas built in North America start with **1**, **2**, or **5**, even though the companies are German and Japanese.

### Positions 2 and 3: Manufacturer and Vehicle Type

Together with position 1, these form the three-character WMI, assigned to manufacturers by SAE International on behalf of NHTSA. For example, `1HG` identifies Honda vehicles built in the United States and `WVW` identifies Volkswagen passenger cars built in Germany.

**Small manufacturers** that build fewer than 1,000 vehicles per year use a `9` in position 3. For them, positions 12 to 14 carry the rest of the manufacturer code.

---

## Positions 4 to 8: Vehicle Descriptor Section

These five characters describe the vehicle itself. Each manufacturer defines its own coding scheme, but federal rules require this section to encode attributes such as:

- **Model** or line
- **Body style** (sedan, coupe, SUV, pickup)
- **Engine type**
- **Restraint system** (airbags and seat belt configuration) for passenger cars
- **Gross vehicle weight rating** for trucks and multipurpose vehicles

Because every manufacturer uses a different scheme, you cannot decode positions 4 to 8 from a universal table. A VIN decoder that has each manufacturer's specifications is required (see the free options below).

---

## Position 9: The Check Digit

Position 9 is a **mathematical checksum** calculated from the other 16 characters. It exists so that software can instantly reject a VIN with a typo or an invented number. It is required on vehicles sold in North America, though many vehicles built only for other markets do not use it.

The check digit is always a number from `0` to `9`, or the letter `X`, which stands for 10.

### Step 1: Convert Letters to Numbers

Digits keep their own value. Letters are converted using this transliteration table:

| Letter | A | B | C | D | E | F | G | H | J | K | L | M | N | P | R | S | T | U | V | W | X | Y | Z |
| ------ | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - | - |
| Value  | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 1 | 2 | 3 | 4 | 5 | 7 | 9 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |

### Step 2: Multiply by Position Weights

Each of the 17 positions has a fixed weight:

| Position | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| -------- | - | - | - | - | - | - | - | - | - | -- | -- | -- | -- | -- | -- | -- | -- |
| Weight   | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 10 | 0 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |

Position 9 has a weight of 0, so the check digit does not affect its own calculation.

### Step 3: Add, Divide by 11, and Take the Remainder

Add all the products, divide the sum by 11, and keep the **remainder**. A remainder of 0 to 9 is the check digit; a remainder of 10 becomes `X`.

### Worked Example: 1M8GDM9AXKP042788

This sample VIN appears throughout VIN documentation. Its check digit (position 9) is `X`.

| Pos | Char | Value | Weight | Product |
| --- | ---- | ----- | ------ | ------- |
| 1   | 1    | 1     | 8      | 8       |
| 2   | M    | 4     | 7      | 28      |
| 3   | 8    | 8     | 6      | 48      |
| 4   | G    | 7     | 5      | 35      |
| 5   | D    | 4     | 4      | 16      |
| 6   | M    | 4     | 3      | 12      |
| 7   | 9    | 9     | 2      | 18      |
| 8   | A    | 1     | 10     | 10      |
| 9   | X    | (check digit) | 0 | 0 |
| 10  | K    | 2     | 9      | 18      |
| 11  | P    | 7     | 8      | 56      |
| 12  | 0    | 0     | 7      | 0       |
| 13  | 4    | 4     | 6      | 24      |
| 14  | 2    | 2     | 5      | 10      |
| 15  | 7    | 7     | 4      | 28      |
| 16  | 8    | 8     | 3      | 24      |
| 17  | 8    | 8     | 2      | 16      |

The products add up to **351**. Dividing by 11 gives 31 with a remainder of **10**, and a remainder of 10 is written as `X`. That matches position 9, so the VIN is valid.

Change any single character, for example the final `8` to a `9`, and the sum becomes 353, the remainder becomes 1, and the VIN fails the check.

### What the Check Digit Can and Cannot Tell You

A correct check digit proves the VIN is **well-formed**. It does not prove the VIN belongs to a real vehicle, and it certainly does not prove it belongs to *the vehicle in front of you*. Criminals who clone VINs copy real, valid numbers from legitimate cars, so they pass the check perfectly.

---

## Position 10: Model Year

Position 10 encodes the **model year** using a repeating 30-year cycle of letters and digits. To avoid confusion, it never uses I, O, Q, U, Z, or the digit 0.

| Code | Year | Code | Year | Code | Year |
| ---- | ---- | ---- | ---- | ---- | ---- |
| A    | 2010 | L    | 2020 | Y    | 2030 |
| B    | 2011 | M    | 2021 | 1    | 2031 |
| C    | 2012 | N    | 2022 | 2    | 2032 |
| D    | 2013 | P    | 2023 | 3    | 2033 |
| E    | 2014 | R    | 2024 | 4    | 2034 |
| F    | 2015 | S    | 2025 | 5    | 2035 |
| G    | 2016 | T    | 2026 | 6    | 2036 |
| H    | 2017 | V    | 2027 | 7    | 2037 |
| J    | 2018 | W    | 2028 | 8    | 2038 |
| K    | 2019 | X    | 2029 | 9    | 2039 |

Because the cycle repeats, `L` means either **1990 or 2020**. For passenger cars, multipurpose vehicles, and light trucks under 10,000 pounds, US rules resolve this with **position 7**: a digit there means the 1980 to 2009 cycle, and a letter means the 2010 to 2039 cycle. In practice the age of the vehicle usually makes the answer obvious.

Keep in mind that **model year is not the build date**. A 2027 model year car can be built and sold in 2026. The exact production month is printed on the door jamb label.

---

## Position 11: Assembly Plant

The eleventh character identifies **the factory where the vehicle was assembled**. Codes are assigned by each manufacturer, so a `K` means one plant for Toyota and a completely different plant for Ford. A manufacturer-aware decoder will translate it.

---

## Positions 12 to 17: Production Sequence Number

The last six characters are the vehicle's **serial number**, usually assigned in the order vehicles come off the assembly line. This is what makes each VIN unique among vehicles of the same make, model, year, and plant. For small manufacturers (with a `9` in position 3), positions 12 to 14 are part of the manufacturer code, leaving positions 15 to 17 for the serial.

---

## Free Ways to Decode and Check a VIN

You do not need a paid service to learn the basics about a VIN. These official and non-profit tools are free:

- **NHTSA VIN Decoder (vPIC)**: the US government's decoder returns make, model, body style, engine, plant, and more from the manufacturer's own submitted data
- **NHTSA Recalls lookup**: enter a VIN at nhtsa.gov/recalls to see open safety recalls that have not been repaired
- **NICB VINCheck**: the National Insurance Crime Bureau's free tool shows whether participating insurers have reported the vehicle as stolen and unrecovered, or as a total loss (salvage)
- **NMVTIS**: the National Motor Vehicle Title Information System, accessed through approved low-cost providers, reports title brands such as salvage, junk, and flood damage

Paid history reports (such as Carfax and AutoCheck) add service records, accident reports, and ownership history where available.

---

## Using a VIN to Avoid Used-Car Scams

### VIN Cloning

In a cloning scam, thieves take the VIN from a legitimate car of the same make and model and attach it to a stolen vehicle. The cloned VIN passes the check digit and returns a clean history report, because it *is* a real, clean VIN, just not for this car.

**How to protect yourself:**

- Confirm the VIN on the **dashboard, door jamb, and title all match**
- Look for **scratches, glue, or non-factory rivets** around the dashboard VIN plate
- Check that the **decoded details match the car**: if the decoder says 2.0L four-cylinder sedan and you are looking at a V6 coupe, walk away
- Run the VIN through **NICB VINCheck** and a title history service before paying

### Title Washing

Cars declared a total loss in one state are sometimes re-registered in another with a "clean" title. An NMVTIS report shows title brands across states and is the best defense.

### Odometer Fraud

History reports record mileage at inspections, sales, and services. A report showing 90,000 miles two years ago on a car that now reads 60,000 is a red flag.

---

## Why Developers Need Valid-Looking VINs

Dealership platforms, insurance quote engines, fleet management tools, and parts marketplaces all accept VINs as input. Testing them with real customers' VINs raises privacy concerns, and typing random characters fails validation immediately.

A [random VIN generator](https://myrandomgenerator.com/pages/tools/vin.md) solves this by producing VINs that follow the real structure: a genuine manufacturer WMI, allowed characters only, a correct model year code, and a calculated check digit. They are useful for:

- **Testing VIN input validation**, including check digit logic and character restrictions
- **Seeding staging databases** for dealer management and insurance systems
- **Demoing inventory and fleet dashboards** with realistic data
- **Training and education** on how VINs are structured

For complete vehicle-adjacent test records, pair VINs with the [company name](https://myrandomgenerator.com/pages/tools/company-name.md), [phone](https://myrandomgenerator.com/pages/tools/phone.md), and [ZIP code](https://myrandomgenerator.com/pages/tools/zip-code.md) generators, or explore the full [fake data](https://myrandomgenerator.com/pages/fake-data.md) category. Our guide to [creating test data for development](https://myrandomgenerator.com/pages/blog/using-random-generators-to-create-test-data-for-development.md) shows how to assemble full records.

Generated VINs are for software testing only. Using a fabricated or altered VIN on an actual vehicle or its documents is a serious crime.

---

## Quick Reference: Decoding a VIN at a Glance

| Position | Meaning                     | Decode with                      |
| -------- | --------------------------- | -------------------------------- |
| 1        | Country of assembly         | Country code table               |
| 2 to 3   | Manufacturer                | WMI lookup                       |
| 4 to 8   | Model, body, engine, safety | Manufacturer-specific decoder    |
| 9        | Check digit                 | Weighted sum, remainder of 11    |
| 10       | Model year                  | 30-year year code table          |
| 11       | Assembly plant              | Manufacturer-specific decoder    |
| 12 to 17 | Serial number               | Unique per vehicle               |

---

## Conclusion

A VIN looks like a jumble of letters and numbers, but it is one of the most carefully designed identifiers in everyday life. The first three characters tell you where and by whom the vehicle was built. The next five describe what it is. The ninth is a built-in error check you can verify with a pencil. The tenth gives the model year, the eleventh the factory, and the last six make the vehicle unique.

Knowing how to read it turns a used-car inspection from guesswork into verification: match the VIN in three places, confirm the decoded details match the car, and check its history before you pay.

If you are building software that handles VINs, generate structurally valid test numbers with our Random [VIN](https://myrandomgenerator.com/pages/tools/vin.md) Generator and keep real vehicle data out of your test environments.

## Frequently Asked Questions

### What do the 17 characters of a VIN mean?

Positions 1 to 3 identify the country and manufacturer, 4 to 8 describe the model, body, and engine, 9 is the check digit, 10 is the model year, 11 is the assembly plant, and 12 to 17 are the vehicle's serial number.

### How do I tell the model year from a VIN?

Look at the 10th character. It follows a 30-year cycle: for example A is 2010, L is 2020, S is 2025, and T is 2026. Letters I, O, Q, U, Z and the digit 0 are never used in this position.

### How is the VIN check digit calculated?

Convert letters to numbers with the standard table, multiply each position by its weight (8 7 6 5 4 3 2 10 0 9 8 7 6 5 4 3 2), add the products, and divide by 11. The remainder is the check digit, and a remainder of 10 is written as X.

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

They are excluded so they cannot be confused with the digits 1 and 0 when a VIN is read or typed, which reduces errors in registrations, insurance records, and recalls.

### Where can I decode or check a VIN for free?

The NHTSA vPIC decoder shows vehicle specifications, NHTSA's recall lookup lists unrepaired safety recalls, and NICB VINCheck shows whether participating insurers reported the vehicle stolen or as a total loss.

---

[All articles](https://myrandomgenerator.com/pages/blog.md) · [Home](https://myrandomgenerator.com/pages/index.md)

## Sitemap

See the full [sitemap](https://myrandomgenerator.com/sitemap.md) for all pages.
