Vehicle Identification Number (VIN) Validator
Validate 17-character structure, absence of forbidden letters (I, O, Q), and 9th position check digit under ISO 3779.
How does validation work?
The Vehicle Identification Number (VIN) is a 17-character alphanumeric code standardized by ISO 3779 and US NHTSA (FMVSS 115) to identify motor vehicles.
Structured in 3 sections: WMI (1-3, manufacturer), VDS (4-8, model attributes), Check Digit (9, calculated via Mod 11 weights), and VIS (10-17, year, plant, serial). Letters I, O, and Q are strictly prohibited.
Anatomy & Structure of the VIN / Chassis (ISO 3779)
The 17-character alphanumeric VIN is divided into 3 functional sections strictly standardized by ISO and NHTSA (letters I, O, and Q are prohibited):
| Position | Field | Length | Meaning & Regulatory Rule | Example |
|---|---|---|---|---|
| 1 to 3 | WMI | 3 chars | World Manufacturer Identifier: identifies the geographic region, country, and vehicle manufacturer. | 1FA |
| 4 to 8 | VDS | 5 chars | Vehicle Descriptor Section: vehicle model attributes, engine type, body style, and safety features. | 6P8TH |
| 9 | Check Digit | 1 char | Mathematical check digit computed via weighted Modulo 11 (0 to 9 or 'X' for 10). | 4 |
| 10 | VIS (Year) | 1 char | Model year codified per the ISO/SAE 30-year table (e.g., R=2024, S=2025, T=2026). | T |
| 11 | VIS (Plant) | 1 char | Assembly plant code or manufacturing facility identifier. | A |
| 12 to 17 | VIS (Serial) | 6 chars | Sequential vehicle production serial number. | 123456 |
Check Digit Validation Algorithm (ISO 3779 / FMVSS 115)
The 9th character of the VIN is calculated using a weighted Modulo 11 check algorithm:
CheckDigit = (Σ (Value(c[i]) × Weight[i])) % 11 (Remainder 10 = 'X')
- 1. Alphanumeric Transliteration: each letter is mapped to a numeric value from 1 to 9 per ISO 3779 (excluding I, O, and Q).
- 2. Positional Weight Multiplication: each of the 17 characters is multiplied by its official positional weight: [8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2]. Position 9 has weight 0.
- 3. Sum and Modulo 11: all 17 products are summed and divided by 11 to obtain the integer remainder (Sum % 11).
- 4. Control Character Assignment: if the remainder is 10, the check digit is the uppercase letter 'X'. For remainders 0 to 9, the digit is the number itself.