National Insurance Number generator (United Kingdom)
A UK National Insurance Number (NINO) is formatted AA NNNNNN A — two prefix letters, six digits, and a suffix letter A–D. These test values use a valid, non-reserved prefix.
Synthetic · not collision-guaranteed Validate a number →
PA 599267 B
Synthetic NINO with a valid, non-reserved prefix.
Format specification
| Identifier | National Insurance Number (NINO) |
|---|---|
| Country | 🇬🇧 United Kingdom |
| Format | AA NNNNNN A |
| Length | 9 characters |
| Checksum | None |
| Example | SH 913633 C |
| Safe strategy | Synthetic |
| Data quality | Verified against sources |
National Insurance Number: what each part means
| AA | Prefix letters. D, F, I, Q, U and V are never used, O is never the second letter, and administrative prefixes (BG, GB, KN, NK, NT, TN, ZZ) are never issued to people — these test values respect all of those rules. |
|---|---|
| NNNNNN | Six-digit serial number with no embedded personal meaning. |
| A | Suffix letter A–D. Purely administrative — it originally indicated which quarterly cycle a physical card was issued in. |
Validation regex
Matches the canonical value — strip separators and uppercase first: value.replace(/[^A-Za-z0-9]/g, '').toUpperCase()
^[A-Z]{2}\d{6}[A-D]$ References
Common questions
Will these pass my validation?
Yes — they are well-formed National Insurance Number values (AA NNNNNN A) and pass standard format checks.
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.