Singapore NRIC / FIN Generator & Validator
Generate structurally valid Singapore NRIC and FIN numbers for test data. Supports S, T, F, G, and M prefixes with correct checksum. Also validates any existing IC number.
Generated numbers are structurally valid (correct checksum) but fictitious — for test data only.
How to use
- 1Pick a prefix
Select S for Singapore citizen/PR, T for post-2000 citizen/PR, F/G for foreigners, or M for long-term pass holders. Choose "Any" to cycle through all prefixes.
- 2Set the count
Choose how many numbers to generate (up to 50). All will have valid checksums.
- 3Copy and use
Click "Copy" on any individual result or "Copy all" to grab the full list as newline-separated text.
- 4Validate a number
Switch to the Validate tab, paste any NRIC or FIN, and the tool instantly verifies the checksum and shows the prefix type.
Examples
Prefix: S
S1234567D
Prefix: T
T0123456F
Prefix: M
M1234567K
Frequently asked
S = Singapore citizen or PR born before 2000. T = citizen or PR born from 2000 onwards. F = foreigner on a long-term pass issued before 2000. G = foreigner on a long-term pass issued from 2000. M = foreigner on a long-term pass issued from 2022.
The 7 digits are multiplied by weights [2, 7, 6, 5, 4, 3, 2] and summed. An offset is added (S=0, T=4, F=0, G=4, M=3) and the result is taken mod 11. The remainder indexes into a lookup table to give the final letter.
No. Generated numbers satisfy the checksum algorithm and are structurally valid, but they are randomly generated and not linked to any real person. Use them only for software testing and development.
No. These are for test environments only. Using fake NRIC numbers in live systems or official forms is illegal under Singapore law.
Related tools
- UEN Generator & ValidatorGenerate structurally valid Singapore UEN (Unique Entity Number) for test data.
- UUID GeneratorGenerate cryptographically-strong UUIDs in bulk. Supports v4 (random), v7 (time-
- Password GeneratorGenerate strong random passwords with configurable length, character sets, and a
- .env File ParserParse a .env file and see it as a JSON object. Handles comments, quoted values,
- Base ConverterConvert numbers between binary, octal, decimal, and hexadecimal. Supports huge n
- Credit Card ValidatorValidate credit card numbers with the Luhn algorithm and detect the brand: Visa,