Cómo se calcula la letra del DNI/NIE
La letra de control valida un DNI o NIE español mediante un algoritmo fijo: se divide el número de 8 cifras entre 23 y el resto se usa para elegir una letra de la cadena 'TRWAGMYFPDXBNJZSQVHLCKE' (empezando en el índice 0). En el caso de un NIE, primero se sustituye la letra inicial por un dígito — X pasa a ser 0, Y a 1, Z a 2 — y después se aplica el mismo cálculo. Esto permite tanto generar la letra correcta de un número nuevo como comprobar que un DNI/NIE existente no tiene una errata.
¿Cómo se calcula la letra del DNI/NIE?
Para calcular la letra, toma el número de 8 cifras (en un NIE, sustituye antes la letra inicial por un dígito: X=0, Y=1, Z=2), divídelo entre 23 y usa el resto como índice en la cadena fija 'TRWAGMYFPDXBNJZSQVHLCKE'. Ejemplo: 12345678 mod 23 = 15, y la letra en la posición 15 es 'Z'.
Pasos para calcular o validar
- Si el dato empieza por X, Y o Z (un NIE), sustituye esa letra por 0, 1 o 2 respectivamente para formar un número de 8 cifras.
- En un DNI, usa el número de 8 cifras tal cual.
- Divide el número de 8 cifras entre 23 y guarda el resto (0-22).
- Busca ese resto como posición en la cadena 'TRWAGMYFPDXBNJZSQVHLCKE' (posición 0 = T) para obtener la letra de control.
- Si ya tenías una letra, compárala con la calculada para saber si es válida.
Fórmula
Letra = "TRWAGMYFPDXBNJZSQVHLCKE"[número mod 23]
- número = el número de 8 cifras del DNI, o el del NIE con X/Y/Z sustituidas por 0/1/2
- mod 23 = el resto al dividir entre 23, siempre entre 0 y 22
- la cadena de referencia de 23 letras omite vocales y letras fáciles de confundir con dígitos, por diseño oficial
Ejemplos de números de DNI y su letra
| Número | mod 23 | Letra |
|---|
| 12345678 | 15 | Z |
| 00000000 | 0 | T |
| 87654321 | 21 | X |
| 25000000 | 13 | N |
| 99999999 | 1 | R |
Preguntas frecuentes
¿Cuál es la diferencia entre DNI y NIE?
El DNI (Documento Nacional de Identidad) se expide a ciudadanos españoles y siempre tiene 8 dígitos más una letra. El NIE (Número de Identidad de Extranjero) se expide a residentes extranjeros y empieza por X, Y o Z seguido de 7 dígitos y una letra.
¿Por qué el NIE sustituye su letra por un dígito antes de calcular?
El algoritmo de la letra de control se diseñó para un número de 8 cifras. Como el NIE solo tiene 7 dígitos después de su letra inicial, esa letra se convierte en un dígito (X=0, Y=1, Z=2) para completar el número de 8 cifras antes de aplicar la misma fórmula de módulo 23 que un DNI.
¿Puede esta herramienta detectar un DNI falso o inventado?
Puede confirmar que la letra de control es matemáticamente coherente con las 8 cifras, lo que detecta erratas y números inventados al azar. No puede confirmar que el número haya sido emitido realmente por las autoridades españolas; eso requiere una consulta al registro oficial.
¿Por qué letras como I, O y U nunca aparecen?
La cadena de referencia 'TRWAGMYFPDXBNJZSQVHLCKE' excluye intencionadamente las vocales y las letras visualmente parecidas a dígitos, para reducir errores de transcripción al leer o copiar el documento a mano.
Esta herramienta implementa solo el algoritmo público de la letra de control; no verifica que un DNI/NIE haya sido emitido realmente, esté actualmente en vigor o pertenezca a una persona real. Usa un servicio oficial de la administración para verificar la identidad.