Home NRIC / FIN Singapore

Singapore NRIC / FIN validator

How the NRIC / FIN format works

Format
Prefix letter (S, T, F, G or M) + 7 digits + a check letter
Example
S6083480F

Things to watch for

  • S/T prefixes are issued to citizens and permanent residents by registration era, and F/G/M to foreigners (M since 1 January 2022) — this checks the mod-11 check letter, not who the number was actually issued to
  • The M-series introduced in 2022 uses its own check-letter table, distinct from the table used by the earlier F/G foreigner series
  • An NRIC/FIN is sensitive personal data — this validator runs entirely in your browser and never sends or stores what you type
Regex for NRIC / FIN
^[STFGM][0-9]{7}[A-Z]$

A Singapore NRIC (National Registration Identity Card) or FIN (Foreign Identification Number) is a 9-character identifier: a single prefix letter, seven digits, and a check letter. The prefix indicates who the number was issued to and roughly when — S and T go to citizens and permanent residents depending on registration era, while F, G, and M mark foreigners and pass holders, with M used for the series the Immigration & Checkpoints Authority introduced from 1 January 2022 onward.

How the check letter is derived

The check letter comes from a weighted sum: each of the seven digits is multiplied by a fixed weight, the products are added together, and an era-based offset is folded in before the total is reduced modulo 11. That offset tracks issuing era rather than citizen-or-foreigner status — pre-2000 series share one value, later series share another, and the 2022 foreigner series adds its own on top. The remainder then picks a letter out of one of three lookup tables, and the newest table differs from the older foreigner table at only a single position — close enough that a check letter copied from the wrong table, or a single mistyped digit, still reliably fails validation.

Scope of this check

This tool checks only that the check letter is arithmetically consistent with the prefix and digits supplied — it doesn’t confirm the number was ever issued or that it identifies a real person; that requires an ICA lookup, not a client-side format check. Given how sensitive an NRIC or FIN is, everything happens locally in your browser — nothing is sent to a server or stored anywhere.

Content last reviewed 2026-08-09.

NRIC / FIN FAQ

What's the difference between an NRIC and a FIN?

Both follow the same 9-character format — a prefix letter, 7 digits, and a check letter — but the prefix marks who the number belongs to. S and T are issued to citizens and permanent residents by registration era; F, G, and M mark foreigners and pass holders, with M reserved for the series ICA introduced from 1 January 2022.

Why do S/F and T/G use different check-letter rules?

The weighted sum used to derive the check letter includes an offset added before the total is reduced, and that offset is grouped by when a series started issuing, not by citizen-versus-foreigner status. S and F — both pre-2000 series — share one offset; T and G, introduced later, share a different one. The 2022 M-series adds its own offset and its own check-letter table.

Does a valid NRIC/FIN mean it belongs to a real person?

No — this only confirms the check letter is mathematically correct for the prefix and digits entered, not that ICA actually issued that number to anyone. It isn't a substitute for an ICA lookup. Because an NRIC/FIN is sensitive personal data, this validator runs entirely in your browser and never sends or stores what you type.

← More NRIC / FIN validators