Vehicle identification number
|
- For other uses of Vin, see Vin (disambiguation).
Vehicle identification numbers (VINs) are used to uniquely identify motor vehicles. Prior to 1981 there was not an accepted standard for these numbers, so different manufacturers used different formats. Modern day VINs consist of 17 characters that do not include the letters I, O or Q.
Contents |
Parts of the VIN
There are two different standards for the Vehicle Identification Number. The ISO standard, 3779, is copied by the European Union. In North America, a more stringent (but compatible) system is used.
The VIN is composed of the following sections:
Standard | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | ||
ISO 3779 | WMI | VDS | VIS | ||||||||||||||||
North American | Manufacturer Identifier | Vehicle Attributes | Check Digit | Model Year | Plant Code | Sequential Number |
World Manufacturer Identifier
The first three characters uniquely identify the manufacturer of the vehicle using the World Manufacturer Identifier or WMI code. A manufacturer that builds less than 500 vehicles per year uses a 9 as the third digit and the 12th, 13th and 14th position of the VIN for a second part of the identification. Some manufacturers use the third character as a code for a vehicle category (e.g., bus or truck), a division within a maufacturer, or both. For example, within 1G (assigned to General Motors in the United States), 1G1 represents Chevrolet passenger cars; 1G2, Pontiac passenger cars; and 1GC, Chevrolet trucks.
WMI Regions
The first character of the WMI is the region in which the manufacturer is located. In practice, each is assigned to a country of manufacture. Common auto-manufacturing countries are noted.
WMI | Region | Notes |
A-H | Africa | AA-AH = South Africa |
J-R | Asia | J = Japan KL-KR = South Korea L = China MA-ME = India MF-MK = Indonesia ML-MR = Thailand PA-PE = Philippines PL-PR = Malaysia |
S-Z | Europe | SA-SM = United Kingdom SN-ST, W = Germany SU-SZ = Poland TA-TH = Switzerland TJ-TP = Czech Republic TR-TV = Hungary VA-VE = Austria VF-VR = France VS-VW = Spain VX-V2 = Yugoslavia XS-XW = USSR X3-X0 = Russia YA-YE = Belgium YF-YK = Finland YS-YW = Sweden ZA-ZR = Italy |
1-5 | North America | 1, 4, 5 = United States 2 = Canada 3 = Mexico |
6-7 | Oceania | 6A-6W = Australia 7A-7E = New Zealand |
8-0 | South America | 8A-8E = Argentina 8X-82 = Venezuela 9A-9E, 93-99 = Brazil 9F-9J = Colombia |
List of common WMIs
The Society of Automotive Engineers assigns WMIs to countries and manufacturers. The following table contains a list of commonly used WMIs, although there are many others assigned.
WMI | Manufacturer |
JA | Isuzu |
JF | Fuji Heavy Industries (Subaru) |
JH | Honda |
JM | Mazda |
JN | Nissan |
JS | Suzuki |
JT | Toyota |
KL | Daewoo |
KMH | Hyundai |
KN | Kia |
SAL | Land Rover |
SAJ | Jaguar |
SCC | Lotus Cars |
TRU | Audi |
VF1 | Renault |
VF3 | Peugeot |
VF7 | Citroën |
VSS | SEAT |
WAU | Audi |
WBA | BMW |
WBS | BMW |
WDB | Mercedes-Benz |
WMW | MINI |
WP0 | Porsche |
WVW | Volkswagen |
WV2 | Volkswagen |
YK1 | Saab |
YS3 | Saab |
YV1 | Volvo Cars |
ZDF | Ferrari Dino |
ZFA | Fiat |
ZFF | Ferrari |
1F | Ford Motor Company |
1G | General Motors |
1GC | Chevrolet |
1GM | Pontiac |
1L | Lincoln |
1M | Mercury |
1N | Nissan USA |
1VW | Volkswagen USA |
1YV | Mazda USA |
2F | Ford Motor Company Canada |
2M | Mercury |
2G | General Motors Canada |
2G1 | Chevrolet Canada |
2G1 | Pontiac Canada |
2HM | Hyundai Canada |
3F | Ford Motor Company Mexico |
3G | General Motors Mexico |
3VW | Volkswagen Mexico |
9BW | Volkswagen Brazil |
4F | Mazda USA |
4M | Mercury |
4S | Subaru-Isuzu Automotive |
4US | BMW USA |
5L | Lincoln |
6F | Ford Motor Company Australia |
6H | General Motors-Holden |
6MM | Mitsubishi Motors Australia |
6T1 | Toyota Australia |
Vehicle Descriptor Section
The 4th through 9th positions in the VIN are the Vehicle Descriptor Section or VDS. This is used, according to local regulations, to identify the vehicle type and may include information on the platform used, the model, and the body style. Each manufacturer has a unique system for using this field.
North American Check Digit
One element that is fairly consistent is the use of position 9 as a check digit to verify the VIN. This is compulsory for vehicles in North America and is used faily consistently even outside this rule.
Vehicle Identifier Section
The 10th through 17th positions are used as the Vehicle Identifier Section or VIS. This is used by the manufacturer to identify the individual vehicle in question. This may include information on options installed or engine and transmission choices, but often is a simple sequential number. In fact, in North America, the last five digits must be numeric.
North American Model Year
One consistent element of the VIS is character number 10, which is required (in North America) to encode the model year of the vehicle.
North American Plant Code
Another consistently-used element (which is compulsory in North America) is the use of the 11th character to encode the factory of manufacture of the vehicle. Although each manufacturer has their own set of plant codes, their location in the VIN is standardized.
Model year encoding
Besides the three letters that are not allowed in the VIN itself (I, O and Q), the letter U and the digit 0 are not used for the year code. Note that the year code can be the calendar year in which a vehicle is built, or a model or type year allocated by the manufacturer. The year 1980 is encoded as "A", and subsequent years increment through the allowed letters, so that "Y" represents the year 2000. 2001 through 2009 are encoded as the digits 1 through 9.
Check digit calculation
Firstly, find the numerical value associated with each letter in the VIN. (I, O and Q are not allowed.) Digits use their own values.
A: 1 | J: 1 | |
B: 2 | K: 2 | S: 2 |
C: 3 | L: 3 | T: 3 |
D: 4 | M: 4 | U: 4 |
E: 5 | N: 5 | V: 5 |
F: 6 | W: 6 | |
G: 7 | P: 7 | X: 7 |
H: 8 | Y: 8 | |
R: 9 | Z: 9 |
Secondly, look up the weight factor for each position in the VIN except the 9th (the position of the check digit).
1st: ×8 | 5th: ×4 | 10th: ×9 | 14th: ×5 |
2nd: ×7 | 6th: ×3 | 11th: ×8 | 15th: ×4 |
3rd: ×6 | 7th: ×2 | 12th: ×7 | 16th: ×3 |
4th: ×5 | 8th: ×10 | 13th: ×6 | 17th: ×2 |
Thirdly, multiply the numbers and the numerical values of the letters by their assigned weight factor, and sum the resulting products. Divide the sum of the products by 11. The remainder is the check digit. If the remainder is 10, the check digit is the letter X.
Example
Consider the hypothetical VIN 1M8GDM9A_KP042788, where the underscore will be the check digit.
VIN: 1 M 8 G D M 9 A _ K P 0 4 2 7 8 8 Value: 1 4 8 7 4 4 9 1 0 2 7 0 4 2 7 8 8 Weight: 8 7 6 5 4 3 2 10 0 9 8 7 6 5 4 3 2 Products: 8 28 48 35 16 12 18 10 0 18 56 0 24 10 28 24 16
The sum of all 16 products is 351. Dividing by 11 gives a remainder of 10, so the check digit is "X" and the complete VIN is 1M8GDM9AXKP042788.
Perl source code
sub calcVINcheckdigit { my %lettervalue = ("A", 1, "B", 2, "C", 3, "D", 4, "E", 5, "F", 6, "G", 7, "H", 8, "J", 1, "K", 2, "L", 3, "M", 4, "N", 5, "P", 7, "R", 9, "S", 2, "T", 3, "U", 4, "V", 5, "W", 6, "X", 7, "Y", 8, "Z", 9, "1", 1, "2", 2, "3", 3, "4", 4, "5", 5, "6", 6, "7", 7, "8", 8, "9", 9, "0", 0); my @positionweight = (8, 7, 6, 5, 4, 3, 2, 10, 0, 9, 8, 7, 6, 5, 4, 3, 2); my @vinchar = split(//, $_[0]); my $total = 0; for (my $ctr = 0; $ctr < 17; $ctr++) { $total += $lettervalue{$vinchar[$ctr]} * $positionweight[$ctr]; } return (($total % 11) == 10) ? "X" : ($total % 11); }
See also
- AnalogX VIN decoder (http://www.analogx.com/cgi-bin/cgivin.exe?Mode=Decode)
- list of Ford VIN codes
- List of GM VIN codes
- Mercedes-Benz VIN codes
- Subaru VIN codes
- Toyota VIN codeszh:车辆识别号码