Generate invalid-by-design SSN test strings
This tool produces strings that match the exact shape of a US Social Security number so they pass front-end format validation, while guaranteeing they can never be a real SSN. It does this by using area numbers in the 900–999 range, which the Social Security Administration has never issued. The result is safe seed data for forms, masking tests, and validation logic — and is useless to a fraudster.
How it works
A Social Security number has the form AAA-GG-SSSS:
- Area number (AAA) — historically tied to geography. This tool fixes it to 900–999, a block the SSA never assigns, so the number is invalid by construction.
- Group number (GG) —
01–99; never00. The tool picks01–99. - Serial number (SSSS) —
0001–9999; never0000. The tool picks0001–9999.
Because the area number is in the forbidden range, no combination this tool emits can ever equal a real SSN, regardless of the group and serial digits.
Tips and notes
- Use the plain 9-digit format when your input field strips dashes, and the dashed format for display tests.
- Generate a batch to test SSN masking, partial-reveal UI, and duplicate-detection logic.
- Never store these as if they were real customer data, and never use any SSN-shaped value to deceive a person or institution.
- A correct format here is intentionally a non-SSN — that is the safety guarantee.