Why are the letters I, O and Q not allowed in my VIN?
A 17-character VIN never contains I, O or Q. If the checker flags one, the character is almost always the number 1 or the number 0 instead.
Check the review date and linked sources for context. Live availability, prices and record coverage can vary by VIN, source, jurisdiction and time.
A 17-character VIN never contains the letters I, O or Q. The standard leaves them out so they cannot be mistaken for the digits 1 and 0. When you type one, the checker names the exact position — 'The letter O at position 7 is not allowed in a VIN' — and suggests the digit to try instead. It also selects that character in the field so you can retype it directly.
- If you read an O or an I off a windshield plate or a document, it is the digit 0 or 1.
- The error message gives you the position number, so you can count to the exact character rather than re-reading all 17.
- Q has no lookalike digit, so the message asks you to check that character against the vehicle or registration instead of guessing.
What the error message tells you
Once the field holds exactly 17 characters, the validator scans for I, O and Q before it does anything else with the value; an empty, short or over-long entry gets the character-count message first. When it finds one, the checker returns the character, its one-based position and a suggestion: an O suggests checking whether it should be the number 0, an I suggests the number 1, and a Q asks you to check the character on the vehicle or registration. The search form then focuses the field and selects that single character, so typing the replacement overwrites it.
The exclusion is built into the arithmetic as well. The check-digit calculation refuses any value containing I, O or Q, and the letter-to-number table it uses has no entry for those three letters at all.
Fixing it in the field
The input accepts 17 characters, uppercases what you type and strips spaces, dashes and other punctuation, and a counter shows how many of the 17 you have entered. So you can paste a VIN with hyphens from a listing and only the character substitution is left to fix.
After the character is corrected, the checker runs one more test: the North American check digit in position 9. If that does not match, you get a separate message, which usually means a different character was misread somewhere in the VIN. Compare against the physical VIN rather than the listing text when the two disagree.
Steps
- Read the position number in the message and count to that character.
- Replace O with 0 and I with 1.
- For a flagged Q, re-read the character from the vehicle or the registration.
- Check the counter reads 17 of 17.
- If the check-digit message appears next, re-read the whole VIN from the physical plate.
What this does not cover
- The checker can tell you a character is impossible; it cannot tell you which character the VIN actually has.
- A VIN that passes the character and check-digit tests is well-formed, not proven to belong to the car in front of you.
- Older or non-North-American vehicles may not use the 17-character format the checker expects.
Sources reviewed
Open the underlying public source and verify that its scope matches the question you are asking.
Frequently asked questions
Does a VIN ever contain the number 0?
Yes. Digits 0 through 9 are all valid. It is the letter O that is excluded, which is why the checker suggests swapping a typed O for the digit 0.
Why does it say my VIN is not 17 characters?
That is a different message. The form counts only letters and digits, so punctuation is stripped; if the count is short or long, the message tells you how many characters to add or remove.
Does lowercase matter?
No. The field uppercases whatever you type, so a lowercase l or o is treated the same as the uppercase letter and flagged the same way.
What is the check digit message about?
Position 9 of a North American VIN is a checksum over the other sixteen characters. If it does not match, the format is valid but at least one character is probably misread.