LIDDAT

NRIC checksum

Check that an NRIC or FIN adds up, or find the letter it should end in. S, T, F, G and M series.

How the NRIC checksum works

An NRIC or FIN is a series letter, seven digits and a checksum letter, like S1234567D. The last letter is worked out from the rest, so a mistyped number shows up:

SeriesAdds012345678910
S, T0, 4JZIHGFEDCBA
F, G0, 4XWUTRQPNMLK
M3XWUTRQPNJLK

For S1234567: 1×2 + 2×7 + 3×6 + 4×5 + 5×4 + 6×3 + 7×2 = 106; 106 ÷ 11 leaves 7, and the S row’s letter 7 is D, so S1234567D. The first NRIC issued, S0000001, ends in I.

The government doesn’t publish the checksum: this is the method worked out from issued numbers, and the one every published NRIC validator uses (the M series checked against samliew/singapore-nric). See also Wikipedia: National Registration Identity Card.

Questions

What do the letters S, T, F, G and M mean?

S: a citizen or permanent resident born before 2000. T: a citizen or permanent resident born from 2000. F: a foreigner whose long-term pass was first issued before 2000. G: from 2000 to 2021. M: from 2022.

Does an NRIC show the year of birth?

Often, yes. From 1968, an S or T number starts with the holder’s year of birth: S71… for 1971, T05… for 2005. Older numbers start with 0 or 1, in the order they were issued, and 2 or 3 usually means someone born before 1968 who became a permanent resident or citizen later. A FIN’s digits are random. (Wikipedia)

Does a valid checksum mean the NRIC is real?

No. It means the number has the right shape: a mistyped number usually fails, but a made-up one can pass. Only ICA can say whether a number has been issued.

Is the number I type sent anywhere?

No. The checksum is worked out in your browser: the number isn’t sent to us or anyone else, and it never goes into the page’s address.

Can a masked NRIC like S****567D be checked?

No: the checksum needs all seven digits, and a masked number hides some of them.

Car plates end in a checksum letter too: check a car plate · More small things at liddat.com