RFC guides
What is an RFC and how is it formed?
The Registro Federal de Contribuyentes is Mexico’s taxpayer identifier. SAT assigns the official key to registered taxpayers.
The structure for an individual
The first four characters come from names and surnames. The next six represent the date of birth in YYMMDD format. The final three include two distinguishing characters and a check digit.
Compound names and surnames
The rules cover names such as María or José when followed by another given name, particles such as de or del, short surnames and people with a single surname. Enter your complete details as they appear on your documents.
RFC and CURP are different
The CURP is a population identifier with 18 characters. An individual’s RFC is a taxpayer identifier with 13 characters. Having a CURP does not mean a person is already registered with SAT.
How this RFC calculation works
This tool estimates an individual’s RFC from their names and date of birth. It does not retrieve a registered RFC. Only SAT can confirm the official key.
Reference and scope
Our reference is the SAT response dated 18 October 2006, folio IFAI 0610100135506, available as an externally hosted public copy. It describes name rules, the distinguishing key and the check digit. Its age matters: it is a historical algorithm reference, not a certification of current registry assignments.
Read the SAT document (public copy, Spanish)Calculation steps
- Normalize case and accents while keeping Ñ distinct in the homonymy calculation. Apply the supported rules for particles, compound given names and short or missing surnames to the four-letter prefix.
- Append the birth date as YYMMDD after rejecting impossible dates and future dates.
- Convert the full name, in surname–surname–given-name order, using the reference’s numeric table. Sum adjacent pairs multiplied by the second digit, take the last three digits of the sum, and divide by 34. The quotient and remainder select the two distinguishing characters.
- Calculate the final check digit with the weighted character table and a modulus of 11. This mathematical check does not prove registration.
Reference examples checked in our tests
These examples come from the historical reference. Only the first row checks a complete 13-character RFC; the other rows check the name prefix and date. They are not live registry lookups.
| Name | Birth date | Expected result | Scope |
|---|---|---|---|
| Emma Gómez Díaz | 1956-12-31 | GODE561231GR8 | Complete reference example |
| José Antonio Camargo Hernández | 1921-12-18 | CAHA211218 | Compound given name; first 10 positions |
| Álvaro de la O Lozano | 1940-12-01 | OLAL401201 | Short surname and particles; first 10 positions |
| Juan Martínez | 1942-01-16 | MAJU420116 | One surname; first 10 positions |
Accents, Ñ and invalid inputs
Our additional implementation checks confirm that José becomes JOSE and Muñoz keeps Ñ; replacing Ñ with N can change the distinguishing key. They also reject 29 February 1900, accept 29 February 2000, and reject missing names or surnames. These are software checks, not official RFC assignments or exhaustive proof of every special case.
Emma Gómez Díaz: the complete example
GODE is the name prefix; 561231 is 31 December 1956; GR is the calculated distinguishing key; 8 is the check digit. Together: GODE561231GR8.
SAT uses its registry to resolve homonyms and avoid duplicate records. This browser calculation cannot reproduce that registry decision. For invoices or official procedures, use the key registered with SAT.
Technical explanation checked against the implementation and automated reference tests on 7 October 2026. This is not an independent tax-professional review.