Generate a test Singapore NRIC / FIN
A Singapore NRIC/FIN is a prefix letter (S, T, F or G), seven digits, and a check letter. These test values carry a valid check letter but are synthetic.
Synthetic · not collision-guaranteed Validate a number →
F0599267L
Synthetic NRIC/FIN with a valid check letter. Not a real issued number.
Format specification
| Identifier | NRIC / FIN |
|---|---|
| Country | 🇸🇬 Singapore |
| Format | A0000000A |
| Length | 9 characters |
| Checksum | NRIC check letter |
| Example | F2913633P |
| Safe strategy | Synthetic |
| Data quality | Verified against sources |
Validation regex
Matches the canonical value — strip separators and uppercase first: value.replace(/[^A-Za-z0-9]/g, '').toUpperCase()
^[STFG]\d{7}[A-Z]$ References
Common questions
Will these pass my validation?
Yes — they are well-formed NRIC / FIN values (A0000000A) and pass standard format checks, including the NRIC check letter checksum.
Could one belong to a real person?
These are synthetic values. They are format-valid but not drawn from a guaranteed reserved range, so use them only for testing.
Can I generate many at once?
Increase the count, or use the free API and CSV/JSON export for large datasets.
For software testing only. These numbers are synthetic and must never be used
for real-world identification, applications, or to impersonate anyone.