An SSN has nine digits written AAA-GG-SSSS: area (3), group (2) and serial (4). It has no check digit. The SSA never assigns area 000, 666 or 900-999, group 00 or serial 0000, and those are the only structural checks available.
Generate U.S. Social Security Numbers for testing: valid-format, never-issued (safe) and famous numbers, in batches, with a seed, export and a rule-by-rule validator.
The Social Security Number (SSN) is the nine-digit identifier the Social Security Administration (SSA) assigns, written AAA-GG-SSSS: a three-digit area, a two-digit group and a four-digit serial. It has no check digit, so the only structural checks are length and the values the SSA never assigns: area 000, 666 and 900-999, group 00 and serial 0000. Since June 25, 2011 numbers are assigned at random and the area no longer points to a state, so a number that passes those rules may belong to a real person. This tool is for software testing. It generates numbers with a valid format, numbers that were never issued and are invalid on purpose, and a short list of famous numbers, all in your browser.
An SSN is written AAA-GG-SSSS: area (3 digits), group (2 digits) and serial (4 digits). There is no check digit, so you cannot tell by arithmetic whether a number was issued. What you can check is the set of values the SSA never assigns.
The SSA lists those exclusions: area 000, area 666 and the 900-999 series, group 00 and serial 0000. A structurally valid SSN therefore has an area from 001 to 899 except 666, a group from 01 to 99 and a serial from 0001 to 9999.
Before that date the area reflected the state, derived from the ZIP code on the application for the card. Groups were assigned in a fixed order (odd numbers 01 to 09, even 10 to 98, even 02 to 08 and finally odd 11 to 99), and the serial ran from 0001 to 9999 inside each group. Because of that order, the SSA published a High Group List that let employers spot some numbers that had not been issued yet.
With randomization the SSA stopped tying the area to a state, froze the High Group List as of June 24, 2011 and started using area numbers that had never been available (still excluding 000, 666 and 900-999). The length did not change and current holders kept their numbers. The result is that the area no longer says where a person was born or applied, and a public list can no longer tell you whether a number was issued.
Valid format is for the happy path of a form, a mask or an API contract that checks the structure. Because numbers are random, such a number can coincide with one belonging to a real person, so keep it inside tests and never in screenshots, demos or public documentation.
Safe for testing is for everything that gets seen by humans and for rejection tests. A 9xx number is never assigned as an SSN, and the SSA itself recommends numbers starting with 000 for examples. A batch of safe numbers with a seed gives you reproducible negative fixtures.
The SSN is one of the most sensitive identifiers in the U.S. and a frequent target of identity theft. A generated number must not be used to impersonate anyone, open an account, apply for credit or work, or pass a real verification. Using identifiers to commit fraud is a crime in the U.S.
Technical limit: this tool has no access to SSA records. A valid-format number can coincide with a real one, and structural validity says nothing about whether a number was issued. Any system that verifies against real records will reject numbers that were never issued.
Paste the code into your HTML and the tool shows up on your page, without J-Kit's navigation and ads. It still runs in the browser of whoever visits your site.
<iframe
src="https://jkit.tools/embed/en-US/ssn-generator"
width="100%"
height="600"
style="border:0"
loading="lazy"
title="SSN Generator"
></iframe>These references help contextualize formulas, standards, APIs and limitations used on this page. They do not replace professional validation when a result has legal, financial, medical or operational impact.
An SSN has nine digits written AAA-GG-SSSS: area (3), group (2) and serial (4). It has no check digit. The SSA never assigns area 000, 666 or 900-999, group 00 or serial 0000, and those are the only structural checks available.
SSA rules: area 001-899 (not 666), group 01-99, serial 0001-9999.
Valid format only: may match a real person's number.
Everything runs in the browser. Analytics gets only the action and options, never the numbers.