Come si Calcola il Codice Fiscale: Guida Completa all'Algoritmo

Scopri nel dettaglio come viene calcolato il codice fiscale italiano: dall'estrazione delle consonanti dal cognome e nome, alla codifica di data e luogo di nascita, fino al calcolo del carattere di controllo. Una guida passo per passo con esempi pratici.

Introduzione all'algoritmo del codice fiscale

Il codice fiscale italiano è un codice alfanumerico di 16 caratteri che identifica in modo univoco ogni cittadino e residente ai fini fiscali. L'algoritmo per il suo calcolo è stato definito dal Decreto del Presidente della Repubblica n. 605 del 29 settembre 1973 e successivi aggiornamenti dall'Agenzia delle Entrate.

Il codice viene generato a partire da cinque dati anagrafici fondamentali: cognome, nome, data di nascita, sesso e comune (o stato estero) di nascita. Ogni dato viene codificato in un segmento specifico del codice fiscale secondo regole precise e deterministiche.

L'intero processo si basa su operazioni di estrazione di consonanti e vocali, conversioni numeriche e una funzione di checksum che garantisce l'integrità del codice. Comprendere questo algoritmo è fondamentale per chi lavora in ambito fiscale, amministrativo o informatico.

Codifica del cognome (posizioni 1–3)

I primi tre caratteri del codice fiscale derivano dal cognome della persona. L'algoritmo prevede i seguenti passaggi:

  1. Si eliminano tutti gli spazi e i caratteri speciali dal cognome.
  2. Si estraggono le consonanti nell'ordine in cui appaiono.
  3. Se le consonanti sono tre o più, si prendono le prime tre.
  4. Se le consonanti sono meno di tre, si aggiungono le vocali nell'ordine in cui appaiono, fino a raggiungere tre caratteri.
  5. Se il cognome ha meno di tre lettere in totale, si completano i caratteri mancanti con la lettera X.

Ad esempio, per il cognome "Rossi": le consonanti sono R, S, S → il codice cognome è RSS. Per il cognome "Hu": consonante H, vocale U, completamento con X → HUX.

Per i cognomi composti (es. "De Rossi"), gli spazi vengono eliminati e il cognome viene trattato come un'unica stringa: "DEROSSI" → consonanti D, R, S → DRS.

Codifica del nome (posizioni 4–6)

I caratteri dalla posizione 4 alla 6 derivano dal nome della persona. La regola è simile a quella del cognome, con una differenza importante:

  1. Si estraggono tutte le consonanti dal nome.
  2. Se le consonanti sono quattro o più, si prendono la prima, la terza e la quarta consonante (saltando la seconda).
  3. Se le consonanti sono esattamente tre, si prendono nell'ordine.
  4. Se le consonanti sono meno di tre, si integrano con le vocali, come per il cognome.
  5. Se il nome ha meno di tre lettere, si completa con X.

Questa regola speciale per i nomi con quattro o più consonanti serve a ridurre i casi di omocodia, cioè la generazione di codici fiscali identici per persone diverse.

Esempio: per il nome "Mario", le consonanti sono M, R → meno di tre, aggiungiamo la vocale A → MRA. Per il nome "Giovanni", le consonanti sono G, V, N, N → quattro consonanti, si prendono la 1ª, 3ª e 4ª → GNN.

Codifica della data di nascita e del sesso (posizioni 7–11)

Le posizioni 7–11 codificano l'anno di nascita, il mese e il giorno di nascita combinato con il sesso.

Anno (posizioni 7–8)

Si prendono le ultime due cifre dell'anno di nascita. Ad esempio, per l'anno 1985 → 85; per il 2003 → 03. Questa rappresentazione è ambigua (non distingue il secolo), ma viene disambiguata dai registri ufficiali.

Mese (posizione 9)

Il mese viene codificato con una lettera secondo la seguente tabella:

LetteraMese
AGennaio
BFebbraio
CMarzo
DAprile
EMaggio
HGiugno
LLuglio
MAgosto
PSettembre
ROttobre
SNovembre
TDicembre

Giorno e sesso (posizioni 10–11)

Per i maschi, si inserisce il giorno di nascita così com'è (da 01 a 31). Per le femmine, si aggiunge 40 al giorno di nascita (da 41 a 71). Questo semplice meccanismo permette di codificare il sesso all'interno dello stesso campo.

Esempio: un maschio nato il 15 → 15; una femmina nata il 15 → 55.

Codice catastale del comune di nascita (posizioni 12–15)

Le posizioni 12–15 contengono il codice catastale (o codice Belfiore) del comune di nascita. Si tratta di un codice alfanumerico di 4 caratteri assegnato dall'Agenzia del Territorio a ogni comune italiano.

Il formato è una lettera seguita da tre cifre (es. H501 = Roma, F205 = Milano, L736 = Torino). I codici che iniziano con la lettera Z identificano stati esteri (es. Z404 = Francia, Z112 = Germania).

L'elenco dei codici catastali è ufficialmente mantenuto dall'Agenzia delle Entrate e viene aggiornato periodicamente in caso di accorpamento o creazione di nuovi comuni. Per trovare il codice catastale del tuo comune, puoi utilizzare il nostro strumento di Codice Fiscale Inverso.

Calcolo del carattere di controllo (posizione 16)

L'ultimo carattere del codice fiscale è il carattere di controllo, calcolato sui primi 15 caratteri con un algoritmo specifico che permette di rilevare errori di trascrizione.

  1. Si assegna un valore numerico a ciascuno dei primi 15 caratteri, con tabelle diverse per le posizioni dispari (1ª, 3ª, 5ª, ...) e pari (2ª, 4ª, 6ª, ...).
  2. Si sommano tutti i 15 valori ottenuti.
  3. Si calcola il resto della divisione per 26 (modulo 26).
  4. Il risultato (un numero da 0 a 25) viene convertito nella lettera corrispondente dell'alfabeto: A=0, B=1, C=2, ..., Z=25.

Le tabelle di conversione per le posizioni pari assegnano valori lineari (A/0=0, B/1=1, C/2=2, ...), mentre le posizioni dispari utilizzano una tabella non lineare più complessa per massimizzare la capacità di rilevamento errori.

Se il carattere di controllo calcolato non corrisponde al 16° carattere del codice fiscale, il codice è formalmente non valido. Puoi verificarlo con il nostro strumento di verifica.

Esempio completo: calcolo del CF di Mario Rossi

Calcoliamo il codice fiscale per Mario Rossi, maschio, nato il 1° agosto 1985 a Roma:

  1. Cognome "Rossi": consonanti R, S, S, I → prime tre consonanti → RSS
  2. Nome "Mario": consonanti M, R → meno di tre, aggiungiamo vocale A → MRA
  3. Anno 1985: ultime due cifre → 85
  4. Mese agosto: dalla tabella → M
  5. Giorno 1, maschio: giorno invariato → 01
  6. Comune Roma: codice catastale → H501
  7. Carattere di controllo: calcolato sui primi 15 caratteri → Z

Risultato finale: RSSMRA85M01H501Z

Gestione dell'omocodia

L'omocodia si verifica quando due o più persone condividono gli stessi dati anagrafici (cognome, nome, data e luogo di nascita, sesso) e genererebbero quindi lo stesso codice fiscale. In Italia questo fenomeno riguarda circa lo 0,5% della popolazione.

Per risolvere l'omocodia, l'Agenzia delle Entrate sostituisce progressivamente le cifre numeriche del codice (partendo dalla più a destra) con lettere secondo una tabella di conversione:

CifraLettera
0L
1M
2N
3P
4Q
5R
6S
7T
8U
9V

L'ordine di sostituzione parte dall'ultima cifra numerica (posizione 15) e procede verso sinistra. Ad ogni sostituzione il carattere di controllo viene ricalcolato. Questa procedura è gestita esclusivamente dall'Agenzia delle Entrate.

Domande Frequenti

Posso calcolare il codice fiscale da solo senza strumenti online?

Sì, è teoricamente possibile calcolarlo a mano seguendo l'algoritmo descritto in questa guida. Tuttavia, il calcolo del carattere di controllo richiede tabelle di conversione complesse, quindi è consigliabile utilizzare uno strumento automatico per evitare errori.

Il codice fiscale calcolato online è ufficiale?

No, il codice fiscale ufficiale è quello rilasciato dall'Agenzia delle Entrate. Il calcolo online produce un CF corretto nella stragrande maggioranza dei casi, ma in situazioni di omocodia il CF ufficiale potrebbe differire da quello calcolato algoritmicamente.

Perché il nome usa una regola diversa dal cognome?

La regola speciale per i nomi con quattro o più consonanti (si prendono la 1ª, 3ª e 4ª) è stata introdotta per ridurre i casi di omocodia, poiché in Italia molti nomi comuni condividono le prime tre consonanti (es. "Francesco" e "Francesca").

Come funziona il calcolo per gli stranieri?

Per i cittadini nati all'estero, il codice catastale (posizioni 12–15) inizia con la lettera Z seguita da tre cifre che identificano lo stato estero di nascita. Il resto dell'algoritmo rimane identico.

Calcola Codice Fiscale