U.S. vehicle research libraryPrimary-source editorial policy
Check a VIN

VIN Check Digit Calculation: The Federal Formula

Calculate VIN position 9 with the official transliteration values, position weights, modulo-11 formula and a complete worked example.

By VIN Lookup Research DeskPublished 2026-08-25Reviewed 2026-08-25United States
Original table2 official sources reconciled

Read the notes and limitations before applying any single field to a title, purchase, or safety decision.

Direct answer

To calculate a VIN check digit, convert each letter to its federal numeric value, multiply all 17 positions by the fixed weights 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; remainder 10 is written X.

The algorithm in five steps

  1. Normalize the VIN to 17 uppercase characters and reject I, O and Q.
  2. Replace each letter with its value from the federal transliteration table; numerals retain their face value.
  3. Multiply each value by the fixed weight for that VIN position. Position 9 has weight zero because it is the result being tested.
  4. Add all 17 products and calculate total modulo 11.
  5. Use remainder 0–9 as the digit. Write X when the remainder is 10.
check digit = (sum of transliterated character values × position weights) mod 11If the result is 10, the displayed check digit is X.

VIN character values

Federal VIN transliteration values
Assigned valueCharacters
1A, J, 1
2B, K, S, 2
3C, L, T, 3
4D, M, U, 4
5E, N, V, 5
6F, W, 6
7G, P, X, 7
8H, Y, 8
9R, Z, 9
00

Fixed weight for every VIN position

Position weights used in the VIN check digit calculation
VIN positionWeight
18
27
36
45
54
63
72
810
90 (check digit)
109
118
127
136
145
154
163
172

Worked example: 1G4AH59H4G118341

This is the worked example printed in 49 CFR 565.15. Position 9 is excluded from the arithmetic by its zero weight, even though the finished VIN displays 4 there.

Every multiplication in the federal example VIN
PositionCharacterValueWeightProduct
11188
2G7749
344624
4A155
5H8432
655315
799218
8H81080
9400
1055945
11G7856
121177
131166
1488540
1533412
1644312
171122
411 mod 11 = 4The products total 411. Dividing by 11 leaves remainder 4, so position 9 is 4.

What a passing checksum does—and does not—prove

A correct check digit is useful for catching many transcription errors. It does not prove that a VIN plate is original, that the VIN belongs to the physical vehicle, or that title and history records are clean.

  • A mistyped VIN can occasionally produce the same remainder.
  • A deliberately fabricated 17-character string can be built with valid checksum arithmetic.
  • Some vehicles outside the U.S. federal scope may not use position 9 the same way.
  • Always compare the dashboard VIN, certification label, title and decoded vehicle identity.
Evidence

Primary sources behind this reference

Open the underlying public source and verify that its scope matches the question you are asking.

  1. 49 CFR Part 565 — Vehicle Identification Number RequirementsElectronic Code of Federal Regulations
  2. NHTSA VIN DecoderNational Highway Traffic Safety Administration
Quick answers

Frequently asked questions

Why is X allowed in VIN position 9?

X represents a modulo-11 remainder of 10. It is the only letter that can be the calculated check digit.

Is the VIN check digit always position 9?

Under the U.S. federal 17-character VIN requirements, yes. Vehicles outside that scope can require different treatment.

Does a valid VIN checksum prove the car is legitimate?

No. It verifies the arithmetic of the string, not the physical plate, title, ownership or history.