National Identity Generator
Generate and validate checksum-valid national IDs for 18 countries — for testing only.
These numbers are mathematically valid but randomized (Test Data).
Examples
Validate the built-in Turkish test value
Country: Turkey
Identity number: 10000000146Valid Identity Number
Country: Turkey
Formatted: 10000000146
Details:
Valid Turkish Identity Number
10th check digit: 4
11th check digit: 6The validator recomputes both check digits. Passing this check means the value is format-valid test data, not proof that an authority assigned it to a person.
Validate a formatted Brazilian CPF fixture
Country: Brazil
Identity number: 529.982.247-25Valid Identity Number
Country: Brazil
Formatted: 529.982.247-25
Details:
Valid CPF
Check digits: 2, 5Non-digit separators are removed before the two CPF check digits are calculated and the accepted value is formatted again.
Reject a reserved US SSN area
Country: United States
Identity number: 666-12-3456Invalid Identity Number
Invalid area number: 666. Cannot be 000, 666, or 900+The US validator rejects 000, 666, and 900-or-higher area numbers before checking the group and serial portions.
About this tool
The National Identity Generator creates checksum-valid national identification numbers for 18 countries — including the Turkish TC Kimlik number, US Social Security Number, Saudi National ID/Iqama, Emirates ID, Brazilian CPF, Singapore NRIC/FIN and Egypt's National ID (الرقم القومي). Every number is algorithmically correct: it passes the country's official format and check-digit rules, but it is synthetic test data that belongs to no real person.
Use it to seed development databases, test KYC and onboarding flows, exercise form validation, or build demos — without ever touching real personal data. Validator mode runs the same country rules against any number you paste and tells you exactly which rule fails.
Everything runs locally in your browser: numbers are generated with client-side JavaScript and are never sent to a server, logged, or stored.
How to use
Pick a country
Choose one of the 18 supported countries — for example Turkey, the United States, Saudi Arabia, Singapore or Egypt. The format rules adjust automatically.
Generate or validate
Click Generate for a fresh, checksum-valid test number, or switch to the validator tab and paste an existing number to check its format and check digits.
Copy into your tests
Copy the result with one click and drop it into your fixtures, database seeds or QA scenarios.
Use cases
Testing country-specific form rules
Exercise input masks, separators, length checks, and check-digit branches without copying identity data from a real user.
Building deterministic QA fixtures
Use format-valid test values to cover accepted and rejected onboarding or KYC form paths in development and staging.
Demonstrating localized interfaces
Populate demos with the expected visual shape for each supported country while clearly labeling every value as synthetic test data.
Diagnosing validator failures
Paste a fixture into Validator mode to see whether length, prefix, check digit, or check letter caused the rejection.
Supported countries & ID types
| Country | ID type |
|---|---|
| Turkey (TR) | TC Identity Number — 11 digits |
| United States (US) | Social Security Number (SSN) — 9 digits |
| Germany (DE) | Identification Number (IdNr) |
| United Kingdom (UK) | National Insurance Number (NINO) |
| Saudi Arabia (SA) | National ID / Iqama — 10 digits |
| United Arab Emirates (AE) | Emirates ID — 15 digits |
| Qatar (QA) | Qatar ID (QID) |
| Kuwait (KW) | Civil ID |
| Canada (CA) | Social Insurance Number (SIN) — 9 digits |
| Spain (ES) | DNI / NIE |
| Brazil (BR) | CPF — 11 digits |
| France (FR) | INSEE / NIR |
| Italy (IT) | Codice Fiscale |
| Netherlands (NL) | BSN (Burgerservicenummer) |
| Sweden (SE) | Personnummer |
| Norway (NO) | Fødselsnummer |
| Egypt (EG) | National ID (الرقم القومي) — 14 digits |
| Singapore (SG) | NRIC / FIN — 9 characters |
Common mistakes
Mistake:Treating a checksum-valid result as proof that the number is genuine, assigned, or owned by the person presenting it.
Fix:Use the result only as format-valid test data. The tool does not query an issuing authority or establish identity, ownership, or assignment.
Mistake:Sending generated values to production identity, government, financial, or verification systems.
Fix:Keep generated values in isolated tests, fixtures, demos, and staging environments; use approved sandbox identifiers for external integrations.
Mistake:Assuming every country receives the same depth of validation.
Fix:Review the selected rule before relying on it. Some implementations verify checksums, while Germany is marked as simulated format validation and Italy performs only a simplified format check.
Mistake:Validating a value under the wrong country because two schemes have a similar length.
Fix:Select the issuing country explicitly and test both formatted and unformatted variants expected by your application.
Frequently asked questions
Related guides
Phone Number Formats by Country: E.164, NANP, and How to Test Them
How phone numbers are structured per country — calling codes, area codes, mobile vs landline vs toll-free — and how to generate test numbers in international, national, raw, or tel: format without using a real subscriber.
How to Generate Fake Addresses for Testing (the Right Way)
Realistic test addresses per country, postcode formats that match local rules, and how to seed a test database without inventing data that points at a real home.
Driver's License Number Formats by Country and State
How driver's license numbers are structured across 21 countries and all 50 US states, why some states use Luhn check digits, and how to generate structurally valid test data without impersonating real people.
References & standards
Related tools
Address Generator
Generate realistic addresses in the correct format for 21 countries — single-line, multi-line, JSON or HTML — plus a postcode validator. Test data only, runs in your browser.
ASCII Text Art Generator
Turn text into large ASCII art banners with multiple figlet fonts
Credit Card Generator
Generate Luhn-valid test credit card numbers for development and QA (not real cards)
Driver's License Generator
Generate driver's license numbers in the correct format for 21 countries and all 50 US states, plus a format and Luhn validator — test data only, runs in your browser.
Email Signature Generator
Build a clean, cross-client HTML email signature — name, title, company, and contact links with an accent color and a live preview
Favicon Generator
Generate favicons (16x16, 32x32) from any image.