Skip to content
Toova
All Tools

CURP Generator for Mexican Test Data

Private by design — runs entirely in your browser

A CURP is the Mexico unique 18-character personal identifier. Toova generates syntactically valid CURPs in your browser — perfect for testing, fixtures, and demo data. The generated values pass front-end validators but are not registered with any official authority.

What it is

A CURP (Clave Única de Registro de Población) is the unique 18-character identifier issued by the Mexican government to every resident. Its 18 characters encode initials from the person's name, date of birth, sex, state of birth, and a check digit. Toova generates syntactically valid CURPs with the correct check digit.

How the algorithm works

The check digit is computed across positions 1-17: each character's value (digits 0-9 → 0-9, letters A-Z → 10-35) is multiplied by a weight from 18 down to 2, summed, and the check digit is (10 - sum mod 10) mod 10. Random initials, state codes, and date components produce a value that passes form validators but is not assigned in RENAPO.

Frequently Asked Questions

Are these CURP numbers real?
No. They satisfy the official algorithm but are not registered in any Mexico authority's database. Front-end validators accept them; an official lookup would reject them.
Can I use a generated CURP in production?
Only for testing — fixtures, demo screens, form validators. Using a generated CURP to impersonate someone or evade tax law is fraud.
Why does my validator accept these?
Because most CURP validators check the mathematical formula (or format for prefix-based IDs), not the registry. Toova's outputs pass the math.
Does Toova store or log the CURPs I generate?
No. All generation runs in your browser via crypto.getRandomValues. There are no outbound requests.