As an insurance agent for the best car insurance agency in Washington state, drivers license (and identification card) numbers have always been a part of my job. I have used them often enough that I have the pattern that the state uses memorized so that if someone tells me their driver’s license number I can usually tell them their birthday. It can be fun to tell people that you can tell their birthday from their checkbook (this was written back in the day when we did not have debit cards and people actually had their driver’s license number printed on their checks). They do not realize that the driver’s license number they have printed on the check tells all.
Washington state encodes your last name, first initial, middle initial, and your date of birth into your driver’s license number. A Washington Identification Card uses the same number as the driver’s license for someone who does not or cannot drive. This [online program](http://www.highprogrammer.com/cgi-bin/uniqueid/dl_wa) by [Alan De Smet](http://www.highprogrammer.com/alan/) will calculate a drivers license number for you if you want a good guess at what someone’s license number would be.
His site also has the best explanation I could find of how the system works:
These license numbers look like the following:
– `WOO**JT546KA` – “John T. Woo” born on May 1st, 1946
– `WALKECR579DU` – “Christopher R. Walken” born on March 31st, 1943
– `LLLLLFMYYXmd` – Pattern deciphered below
**Drivers License Status**
You can go online and check the status of a Washinton License or ID Card number. The screen shot on the right shows what information is available online.
**Deciphering the Number**
**LLLLL** – Last Name, truncated – The first five characters are the first five letters of the last name. If the name is shorter than five characters, the extra space is padded with asterisks (*).
**F** – First Initial
**M** – Middle Initial – If no middle initial the space is padded with an asterisk (*).
**YY** – Year of birth, encoded – This is 100 minus the the two digit year of birth. So someone born in 1998 will be 2 (100-98), as will someone born in 1898.
**X** – Checksum – This can be calculated if you like math but first you must have the rest of the license figured out.
**m** – Month of birth, encoded. Look up your birth month on this table. There are two options. In general the state will use the first column. If another person has generated the same license number as you, they’ll use the second column. This is most often needed for twins. (I have no idea what they do after that.)
Month | 1st| 2nd || Month | 1st| 2nd
Jan | B | S || Jul | M | 4
Feb | C | T || Aug | N | 5
Mar | D | U || Sep | O | 6
Apr | J | 1 || Oct | P | 7
May | K | 2 || Nov | Q | 8
Jun | L | 3 || Dec | R | 9
**d** – Day of month of birth, encoded – Look up the code for your birth’s day of month.
Date | Code | | Date | Code | | Date | Code | | Date | Code
1 | A | | 11 | J | | 21 | 1 | | 31 | U
2 | B | | 12 | K | | 22 | 2
3 | C | | 13 | L | | 23 | 3
4 | D | | 14 | M | | 24 | 4
5 | E | | 15 | N | | 25 | 5
6 | F | | 16 | W | | 26 | 6
7 | G | | 17 | P | | 27 | 7
8 | H | | 18 | Q | | 28 | 8
9 | Z | | 19 | R | | 29 | 9
10 | S | | 20 | 0 (number) | | 30 | T
Now back to the checksum, X.
Once you have figured out the rest of the license number you can alternate adding and subtracting the numeric value of each character. The checksum is the single digit remaining, ignoring negative signs or the fact it might be more than 9. In other words, answers of 6, 16 and -6 will all have a checksum digit of 6. The mathematical way to write this is:
checksum = (L1 – L2 + L3 – L4 + L5 – F + M – Y1 + Y2 – M + D) mod 10;
For letters and the asterisk use the numbers in the table below to calculate the checksum:
Value | Letter | Letter | Letter | Letter
1 | A | J | | |
2 | B | K | S | |
3 | C | L | T | |
4 | D | M | U | * |
5 | E | N | V | |
6 | F | O | W | |
7 | G | P | X | |
8 | H | Q | Y | |
9 | I | R | Z | |
(sorry, my table plugin broke)
Use to convert the letters in the license number into numbers, before calculating the checksum (the 8th character in the license number).
So, using our Christopher Walken example above, we calculate the checksum this way:
6-1+3-2+5-3+9-5+7-4+4=19 so we use the 9 as the checksum.