ItalIntelItalIntel

Guida tecnica

Fonti dati, metodologia, granularità, frequenze e licenze.

Catalogo delle fonti

Ogni KPI esposto su ItalIntel proviene da una fonte ufficiale e mantiene la dichiarazione esplicita di granularità, frequenza e licenza. Il registry completo dei KPI numerici è versionato nel repository (file apps/api/registry/datasets.yaml). Anagrafica, zona climatica, link al sito ufficiale e alla voce Wikipedia e la foto del comune provengono invece da dataset statici (Wikidata + ENEA) allineati per codice ISTAT e gestiti lato front-end, non dal pipeline SDMX/DB. Tutti gli altri KPI numerici — comprese le fonti più recenti (AGCOM banda larga, ISTAT accessibilità ai trasporti) — sono nel registry come gli altri indicatori, con la stessa dichiarazione di granularità e licenza.

Demografia

FonteDescrizioneGranularitàFrequenzaLicenza
ISTATPopolazione residente al 1° gennaio per comune — serie dal 2019ComuneAnnualeCC BY 3.0 IT
ISTATRicostruzione intercensuaria della popolazione residente: backfill storico una tantum della serie 2001–2018 (stessa serie del flusso anagrafico)ComuneUna tantumCC BY 3.0 IT
ISTATPopolazione straniera residenteComuneMensileCC BY 3.0 IT
ISTATStranieri residenti per area geografica di cittadinanza (Europa, Africa, Asia, America, Oceania) — serie 2018–2024ComuneAnnualeCC BY 3.0 IT
ISTATBilancio demografico: nascite, decessi, iscritti in anagrafe, saldo naturale, saldo totale — serie 2019–2025ComuneAnnualeCC BY 3.0 IT
ISTATGrado di istruzione della popolazione 9+ (censimento permanente): % con titolo terziario (laurea/ITS/dottorato)ComuneAnnualeCC BY 3.0 IT
EurostatSperanza di vita alla nascitaRegione (NUTS2)AnnualeCC BY 4.0

Economia & lavoro

FonteDescrizioneGranularitàFrequenzaLicenza
MEF BDAPDichiarazioni IRPEF per comune: contribuenti, reddito imponibile, imposta netta, reddito imponibile medio per contribuente. Dal 29/05/2026 anche la composizione del reddito per fonte (pensione, lavoro dipendente, lavoro autonomo, impresa, fabbricati) con frequenza dei dichiaranti e ammontare totale — pensione media dichiarata, salario medio dichiarato, % dichiaranti per fonte. Serie 2019–2023.ComuneAnnualeIODL 2.0
ISTATTasso di occupazione 15-64 (RCFL)ProvinciaTrimestraleCC BY 3.0 IT
ISTATTasso di disoccupazione 15-64 (RCFL)ProvinciaTrimestraleCC BY 3.0 IT
ISTATUnità locali e addetti per comune (registro ASIA)ComuneAnnualeCC BY 3.0 IT
ISTATImprese attive e relativi addetti (registro ASIA-UE)ProvinciaAnnualeCC BY 3.0 IT
EurostatPIL pro capite per NUTS3ProvinciaAnnualeCC BY 4.0

Turismo

FonteDescrizioneGranularitàFrequenzaLicenza
ISTATEsercizi ricettivi e posti letto per comuneComuneAnnualeCC BY 3.0 IT
ISTATMovimento clienti: arrivi e presenze (pernottamenti) negli esercizi ricettiviProvinciaAnnualeCC BY 3.0 IT

Sicurezza

FonteDescrizioneGranularitàFrequenzaLicenza
ISTATTassi di delittuosità per 100.000 abitanti: totale delitti, furti, furti in abitazione, rapineProvinciaAnnualeCC BY 3.0 IT
ISTATIncidenti stradali con lesioni, morti e feritiComuneAnnualeCC BY 3.0 IT

Investimenti pubblici

FonteDescrizioneGranularitàFrequenzaLicenza
OpenPNRRProgetti PNRR per comune con importi e avanzamentoComuneSettimanaleCC BY 4.0
OpenCoesioneFondi coesione 2021-27ComuneMensileCC BY 4.0

Connettività & accessibilità

FonteDescrizioneGranularitàFrequenzaLicenza
AGCOMCopertura banda larga: FTTH, FTTC/VDSL, reti ≥30/≥100/≥1.000 Mbps — quota di unità immobiliari coperte. Serie 2019–2023.ProvinciaAnnualeCC BY 4.0
AGCOMCopertura a livello COMUNALE ricavata aggregando la griglia della Broadband Map sui confini comunali ISTAT (quota di località coperte): fibra FTTH/FTTC, reti ≥100/≥1.000 Mbps (vintage 2020) e copertura mobile 4G/5G (rif. 2026).ComunePeriodicaCC BY 4.0
ISTATAccessibilità alle infrastrutture di trasporto: tempo minimo in auto verso la stazione ferroviaria a lunga percorrenza, il casello autostradale, l'aeroporto e il porto passeggeri più vicini. ISTAT conteggia solo le 258 stazioni a lunga percorrenza e i 54 porti passeggeri statistici nazionali — le stazioni locali/regionali e i porti turistici non rientrano.ComuneUna tantum (2022)CC BY 3.0 IT
MIMITOsservaprezzi carburanti: numero di impianti di distribuzione attivi nel comune (densità anche per 10.000 abitanti) e prezzo medio self di benzina e gasolio. Il prezzo è un'istantanea giornaliera, non una serie storica. Copertura ~5.400 comuni.ComuneGiornaliera (snapshot)Open data MIMIT

Servizi (scuola, sanità, cultura)

FonteDescrizioneGranularitàFrequenzaLicenza
MIMAnagrafe scuole statali e paritarieComuneAnnualeIODL 2.0
Ministero SaluteStrutture sanitarie pubbliche e privateComuneAnnualeIODL 2.0
Ministero SaluteMedici di base (MMG), pediatri di libera scelta e ambulatori/laboratori ASL: pubblicati per ASL e ripartiti sui comuni dell'ASL come tassi per abitante (anno rif. 2022). Aggiunta 08/06/2026.ASLAnnualeIODL 2.0
MiC SPARQLMusei, biblioteche, archivi, teatri storici (estesa 29/05/2026)ComuneMensileCC BY 4.0

Ambiente & rischio

FonteDescrizioneGranularitàFrequenzaLicenza
catastima.it (ISPRA)Rischio idrogeologico (alluvione+frana) e sismico aggregati per comuneComuneMensileCC BY 4.0
ISPRA/SNPAConsumo di suolo per comune (% superficie e ettari) — serie 2006–2024ComuneAnnualeCC BY 4.0
ISPRA Catasto RifiutiRifiuti urbani prodotti, kg pro capite e percentuale di raccolta differenziata per comune — serie 2010–2024ComuneAnnualeCC BY 4.0
ISTATDati meteoclimatici: temperatura media annua e precipitazione totale annua — serie 2006–2023. Rilevati dalle stazioni termo-pluviometriche dei soli comuni capoluogo di provincia (~109 comuni); gli altri comuni non hanno una rilevazione ISTAT propria. Aggiunta 09/07/2026.Comune (capoluoghi)AnnualeCC BY 4.0

Abitazioni

FonteDescrizioneGranularitàFrequenzaLicenza
ISTATAbitazioni totali e non occupate (censimento permanente): quota di case vuote/seconde caseComuneAnnualeCC BY 3.0 IT
ISTATFamiglie per titolo di godimento (censimento): n. famiglie, quota proprietà vs affittoComuneAnnualeCC BY 3.0 IT

Territorio & anagrafica

FonteDescrizioneGranularitàFrequenzaLicenza
WikidataSito ufficiale, voce Wikipedia, foto, altitudine, CAP, prefisso, demonimoComuneUna tantumCC0 / Wikidata
ENEA SolarItalyZona climatica (A–F) e gradi giorno — DPR 412/93ComuneStatutariaDato pubblico ENEA

Aggiornamento dei dati

ItalIntel ri-scarica ciascuna fonte periodicamente con uno scheduler distribuito: ogni giorno della settimana è dedicato a una sola fonte, per evitare di sovraccaricare i portali ufficiali e rispettare i loro rate-limit (in particolare l'endpoint SDMX dell'ISTAT, che blocca gli IP che eccedono ~1 richiesta ogni 30 secondi).

GiornoFonteKPI principali
LunedìISTAT popolazionepopolazione_residente
MartedìISTAT bilancio demografico + MIMIT carburantinati, decessi, saldo naturale, saldo totale, iscritti in anagrafe; distributori e prezzi benzina/gasolio
MercoledìOpenPNRRprogetti PNRR, importi
GiovedìMIM scuolescuole statali, paritarie, infanzia, primaria, secondaria
VenerdìMiC SPARQLmusei, biblioteche, archivi
SabatoISTAT stranieri + ISTAT RCFLstranieri residenti, tasso di occupazione, tasso di disoccupazione
DomenicaMEF DF + OpenCoesione + Salute farmacieredditi IRPEF, progetti coesione UE, farmacie attive

Le fonti a pubblicazione annuale o sporadica (ISPRA consumo suolo e rifiuti, ISTAT imprese/turismo/istruzione/criminalità/incidenti/abitazioni, Eurostat PIL, AGCOM banda larga, ISTAT accessibilità ai trasporti) vengono invece ricontrollate il 1° di ogni mese: se la fonte ha pubblicato una nuova annualità o una revisione, il refresh la recepisce entro un mese.

Ogni job applica un jitter casuale fino a 30 minuti per non creare pattern di richieste fissi, un TTL per famiglia di KPI (es. la popolazione residente non viene riscaricata se l'ultimo successo è entro 7 giorni) e un backoff di 24 ore dopo tre fallimenti consecutivi. La scrittura sul database è idempotente (UPSERT su (comune, kpi, anno)), quindi una ri-esecuzione non duplica righe. L'upsert è inoltre change-aware: a ogni refresh ciascuna riga viene classificata come nuova annualità, recupero storico, revisione (la fonte ha corretto un valore già pubblicato) o invariata — e le righe invariate non vengono riscritte. Questo ci permette di misurare quanto spesso ciascuna fonte cambia davvero i propri dati.

Ogni esecuzione è loggata nella tabella dataset_runs con orario di inizio/fine, stato, righe ingerite (scomposte in nuove/riviste/invariate) e – se fallita – messaggio di errore. La colonna "Frequenza" della tabella sopra indica la cadenza di aggiornamento della fonte upstream: il dato che vedi in pagina è dunque al massimo vecchio quanto l'ultimo refresh schedulato successivo a una pubblicazione effettiva.

Metodologia degli indici sintetici

ItalIntel calcola 8 indici sintetici 0-100 per ciascun comune. Ogni indice è una media pesata dei percentili nazionali di alcune componenti. Per componenti dove "meno è meglio" il percentile è invertito prima della media.

Due note metodologiche. (1) I componenti di dotazione per 1.000 abitanti e le allocazioni «a blocchi» usano il percentile di cluster di taglia (micro/piccolo/medio/grande), non quello nazionale: così un comune è confrontato coi suoi pari di dimensione e le metriche pro-capite non premiano artificiosamente i micro-comuni (dove pochi abitanti gonfiano la densità). Riguarda la dotazione di servizi della Qualità della vita (scuole, biblioteche, musei, posti letto), entrambe le componenti della Salute (posti letto e farmacie) e il PNRR pro capite dell'Attrattività (un singolo progetto a denominatore piccolo gonfia il pro-capite del micro-comune). Le altre componenti dell'Attrattività — reddito, imposta, contribuenti, istruzione — restano nazionali: sono medie e percentuali che non soffrono il bias di taglia e il cui segnale economico reale va preservato. (2) Quando un indice è aggregato per area(provincia, regione), il punteggio è la media pesata per popolazione dei comuni — riflette dove vivono i residenti, non il numero di comuni. Questi indici misurano dotazione di servizi, attrattività e sicurezza secondo scelte di componenti e pesi dichiarate qui: sono una misura trasparente e confrontabile, non un giudizio assoluto di «qualità della vita».

IndiceCosa misuraDirezione
Vitalità demograficaNascite, saldi, indice di vecchiaiaalto = vitale
Attrattività economicaReddito IRPEF, istruzione terziaria, PNRR pro capite, base fiscalealto = ricco
Qualità della vitaServizi (scuole, cultura, sanità), sicurezza + saldo migratorioalto = vivibile
Rischio di spopolamentoFragilità demografica (NON catastrofale)alto = in declino
Rischio territorialeAlluvione, frana, sismica (ISPRA via catastima.it)alto = più esposto
Salute (dotazione)Posti letto ospedalieri + farmacie per 1.000 abalto = ben dotato
Attivazione PNRRImporti e progetti PNRR + coesione UE pro capitealto = molti fondi
InfrastruttureConnettività (fibra FTTH + 5G) e accessibilità a stazione/casello/aeroportoalto = ben infrastrutturato

Output per ciascun indice: punteggio 0-100, percentile nazionale (rispetto a tutti i ~7.900 comuni con dati sufficienti), percentile nel cluster di comuni di pari dimensione (micro <5k, piccolo 5-20k, medio 20-100k, grande >100k abitanti). Il cluster permette confronti più equi: confrontare una grande città metropolitana con un piccolo comune montano non è informativo.

Come si legge la formula

Per ogni componente di un indice ItalIntel calcola il percentile nazionale: un numero da 0 a 100 che indica dove si colloca il comune rispetto a tutti gli altri. Per esempio, se "reddito complessivo pro capite" del comune è 35.000 € e questo lo mette al 90° posto su 100 (cioè meglio del 90 % dei comuni), il suo percentile per quella componente vale 90. L'indice è la media pesata dei percentili delle sue componenti: si moltiplica ciascun percentile per il suo peso (i pesi sommano a 1), si sommano i risultati, si ottiene il punteggio finale 0-100.

Per le componenti dove "meno è meglio" (es. mortalità su natalità per l'indice di spopolamento) il percentile viene invertito: chi ha il valore più basso ottiene 100, chi ha il più alto ottiene 0.

Copertura e «non classificato». Se per un comune mancano i dati di alcune componenti, l'indice si calcola sulle sole componenti disponibili; la copertura (mostrata nella scheda quando è inferiore al 100%) indica la quota di peso effettivamente usata. Se invece mancano tutte le componenti — ad esempio un comune di fusione recente non ancora coperto dalle fonti, o un comune privo di qualsiasi struttura per l'indice «Salute» — il comune non riceve un punteggio 0 (che lo farebbe figurare erroneamente come «il peggiore»), ma è marcato «non classificato» ed escluso dalle classifiche e dalle mappe.

Vitalità demografica

Quanto un comune sta crescendo o invecchiando: nascite, saldi e quota di giovani.

Formula: media pesata dei percentili nazionali delle componenti qui sotto. Output 0-100.

ComponentePesoCosa rappresenta
Saldo naturale per 1.000 abitanti25%Nati − decessi nell'ultimo anno, normalizzato per la popolazione. Più alto = più rinnovamento naturale.
Saldo migratorio per 1.000 abitanti25%Iscritti − cancellati dall'anagrafe, normalizzato per la popolazione. Più alto = più attrattività residenziale.
Indice di vecchiaia20%Rapporto popolazione 65+ su popolazione 0-14, ×100. Invertito nell'indice: più basso = più giovane = meglio.
Quota popolazione 0-14 anni15%Bambini e ragazzi sulla popolazione totale.
Tasso di natalità ‰15%Nati per 1.000 abitanti.

Esempio di lettura: Un comune con saldo naturale +2,1 ‰, saldo migratorio +6 ‰, indice di vecchiaia 110 (basso), 16% di 0-14 anni e natalità 8 ‰ → percentili tutti alti → Vitalità ~80.

Attrattività economica

Quanto un comune è ricco, qualificato e ben servito dai fondi pubblici: reddito, capitale umano, PNRR, base fiscale.

Formula: media pesata dei percentili nazionali delle componenti qui sotto. Output 0-100.

ComponentePesoCosa rappresenta
Reddito complessivo pro capite35%Somma dei redditi IRPEF dichiarati dei comune, divisa per la popolazione. Fonte MEF.
Importo PNRR pro capite20%Totale finanziamento PNRR dei progetti localizzati nel comune, diviso per la popolazione. Fonte OpenPNRR.
% istruzione terziaria20%Quota di popolazione di 9 anni e più con titolo di studio terziario (laurea, ITS/AFAM, dottorato; ISCED 5-8). Censimento permanente ISTAT.
Percentuale contribuenti15%Quota della popolazione che dichiara redditi IRPEF. Indica la base fiscale attiva.
Imposta IRPEF netta pro capite10%Tasse IRPEF effettivamente pagate, divise per la popolazione.

Esempio di lettura: Punteggio = 35% · percentile(reddito pro capite) + 20% · percentile(PNRR pro capite) + 20% · percentile(% istruzione terziaria) + 15% · percentile(% contribuenti) + 10% · percentile(imposta pro capite).

Qualità della vita

Servizi sul territorio (istruzione, cultura, sanità), sicurezza, segnale di scelta abitativa (saldo migratorio) e qualità ambientale (rifiuti).

Formula: media pesata dei percentili nazionali delle componenti qui sotto. Output 0-100.

ComponentePesoCosa rappresenta
Sicurezza (tasso di criminalità inverso)14%Delitti denunciati per 100.000 abitanti (dato provinciale ISTAT), invertito: meno criminalità = qualità della vita più alta.
Scuole per 1.000 abitanti13%Numero di scuole (statali + paritarie, tutti gli ordini) ogni mille residenti. Fonte MIM.
Posti letto ospedalieri per 1.000 abitanti12%Dotazione ospedaliera del comune ogni mille residenti. Fonte Ministero della Salute.
Saldo migratorio per 1.000 abitanti11%Quante persone scelgono di trasferirsi qui in più rispetto a quante se ne vanno: proxy diretto di vivibilità percepita.
Biblioteche per 1.000 abitanti9%Numero di biblioteche pubbliche e private aperte. Fonte MiC SPARQL.
Musei e luoghi di cultura per 1.000 abitanti9%Numero di musei e simili (gallerie, monumenti, parchi archeologici). Fonte MiC SPARQL.
Raccolta differenziata (%)9%Percentuale di raccolta differenziata sul totale dei rifiuti urbani prodotti, precalcolata da ISPRA. Proxy di qualità amministrativa locale del servizio rifiuti.
Accessibilità ferroviaria (tempo, inverso)7%Minuti di viaggio in auto verso la stazione ferroviaria (servizio a lunga percorrenza) più vicina, invertiti: meno tempo = più accessibile. Fonte ISTAT, accessibilità alle infrastrutture di trasporto 2022.
Teatri storici per 1.000 abitanti6%Teatri censiti come bene culturale dal MiC, normalizzati sulla popolazione. Copre principalmente il patrimonio teatrale architettonico tutelato (circa 415 luoghi in 208 città): i teatri attivi moderni e le sale concerto private non sono inclusi.
Accessibilità autostradale (tempo, inverso)5%Minuti di viaggio in auto verso l'accesso alla rete autostradale più vicino, invertiti: meno tempo = più accessibile. Fonte ISTAT, accessibilità alle infrastrutture di trasporto 2022.
Rifiuti urbani pro capite (kg/ab, inverso)4%Rifiuti urbani prodotti per abitante nell'anno, in kg, invertiti: meno rifiuti = meno stress ambientale. Fonte ISPRA Catasto Rifiuti. Il valore può essere amplificato in comuni turistici dove i rifiuti dei visitatori entrano nel calcolo.

Esempio di lettura: La QoL combina 11 componenti pesate (somma=1.00): sicurezza inversa (14%), scuole/1000 (13%), posti letto ospedalieri/1000 (12%), saldo migratorio/1000 (11%), biblioteche/1000 (9%), musei/1000 (9%), raccolta differenziata % (9%), accessibilità ferroviaria (7%), teatri storici/1000 (6%), accessibilità autostradale (5%) e rifiuti pro capite inverso (4%). Le componenti di dotazione per 1.000 ab. (scuole, posti letto, biblioteche, musei, teatri) usano il percentile di CLUSTER (confronto coi comuni di pari taglia, così le metriche pro-capite non gonfiano i micro-comuni); le altre componenti (sicurezza, saldo migratorio, raccolta differenziata, rifiuti e le due di accessibilità) usano il percentile nazionale. Si sommano → punteggio 0-100. Caveat: la sicurezza si basa sui delitti DENUNCIATI a livello provinciale — dove si denuncia di più (spesso aree urbane e benestanti) il punteggio scende, ma ciò non equivale a più pericolo. La componente teatri ha copertura limitata a circa il 2,6% dei comuni (i comuni a zero subiscono una penalizzazione marginale uniforme). L'accessibilità ai trasporti (aggiunta 2026) usa i tempi d'auto ISTAT 2022 verso la stazione ferroviaria e il casello autostradale più vicini: completa la componente del brief §4.3 prima rinviata.

Rischio di spopolamento

Fragilità demografica: comune che si svuota e invecchia. Non è il rischio idrogeologico, è quello demografico.

Formula: media pesata dei percentili nazionali delle componenti qui sotto. Output 0-100. (Le componenti contrassegnate ↓ sono invertite: valore basso = bene.)

ComponentePesoCosa rappresenta
Spopolamento per 1.000 abitanti40%Saldo naturale negativo (decessi − nascite) per 1.000 abitanti. Valore positivo = il comune perde residenti.
Migrazione negativa per 1.000 abitanti35%Saldo migratorio negativo: quante persone se ne vanno in più rispetto a chi arriva.
Mortalità su natalità25%Rapporto decessi / nascite. Valore 2,0 = doppi decessi rispetto alle nascite.

Esempio di lettura: Tutte le componenti sono &quot;higher = worse&quot;: un comune che perde 5 ‰ residenti per saldo naturale, 4 ‰ per migrazione e ha rapporto mortalità/natalità di 2,5 ottiene un punteggio alto (es. 85) = forte rischio di spopolamento.

Rischio territoriale

Esposizione a eventi naturali pericolosi: alluvioni, frane, terremoti.

Formula: media pesata dei percentili nazionali delle componenti qui sotto. Output 0-100. (Le componenti contrassegnate ↓ sono invertite: valore basso = bene.)

ComponentePesoCosa rappresenta
Superficie a rischio alluvione25%Percentuale del territorio comunale in area di pericolosità idraulica alta (P3). Fonte ISPRA IdroGEO via catastima.it.
Superficie a rischio frana25%Percentuale del territorio in pericolosità da frana alta o molto alta (P3-P4). Fonte ISPRA.
Frane IFFI per km²15%Numero di frane censite nell'Inventario IFFI di ISPRA, normalizzato per la superficie comunale.
Accelerazione sismica massima (475 anni)25%Picco di accelerazione orizzontale del suolo (in g) con tempo di ritorno 475 anni. Fonte INGV MPS04.
Zona sismica DPC (invertita)10%Classificazione DPC 1-4 (1 = massima sismicità). Per coerenza la usiamo come 5 − zona, così «più alto = più rischio».

Esempio di lettura: Un comune appenninico con 15% di superficie in alluvione P3, 12% in frana P3-P4, 25 frane IFFI per km², accelerazione 0,28 g e zona DPC 1 → punteggio alto (es. 90) = territorio molto esposto.

Salute (dotazione)

Quanti posti letto ospedalieri e quante farmacie per abitante. Misura la dotazione sanitaria interna al comune.

Formula: media pesata dei percentili nazionali delle componenti qui sotto. Output 0-100.

ComponentePesoCosa rappresenta
Posti letto ospedalieri per 1.000 abitanti50%Somma dei posti letto (ordinari + day hospital + day surgery + a pagamento) delle strutture nel comune, su 1.000 abitanti. Fonte Ministero Salute 2023.
Farmacie per 1.000 abitanti50%Numero di farmacie aperte al pubblico per 1.000 residenti. Fonte Ministero Salute (anagrafe attiva).

Esempio di lettura: Attenzione metodologica: misura la dotazione DENTRO il confine comunale. Un piccolo comune accanto a un grande ospedale risulterà basso pur avendo buon accesso effettivo. L'indice discrimina soprattutto comuni di dimensione medio-grande.

Attivazione PNRR

Quanti soldi PNRR + Coesione UE un comune ha intercettato (non quanti ne sta effettivamente spendendo).

Formula: media pesata dei percentili nazionali delle componenti qui sotto. Output 0-100.

ComponentePesoCosa rappresenta
Importo PNRR pro capite50%Totale finanziamento PNRR localizzato nel comune, diviso per la popolazione.
Progetti PNRR per 1.000 abitanti30%Numero di progetti PNRR distinti che insistono sul territorio comunale, normalizzato per popolazione.
Progetti Coesione UE per 1.000 abitanti20%Progetti finanziati dai fondi di coesione europei 2021-2027, normalizzato per popolazione. Fonte OpenCoesione.

Esempio di lettura: Un comune con 1.500 € di PNRR pro capite, 2 progetti PNRR ogni 1.000 abitanti, e 0,5 progetti coesione UE per 1.000 ab → punteggio medio-alto. Attenzione: misura solo l&apos;attivazione, non quanto stanno realmente avanzando i cantieri.

Infrastrutture

Dotazione infrastrutturale del comune su due assi quasi ortogonali: connettività digitale (fibra + mobile 5G) e accessibilità ai trasporti (tempi verso stazione, casello, aeroporto).

Formula: media pesata dei percentili nazionali delle componenti qui sotto. Output 0-100.

ComponentePesoCosa rappresenta
Copertura fibra FTTH (comune)28%Quota di località del comune raggiunte dalla fibra FTTH, dalla griglia AGCOM (2020).
Copertura mobile 5G (comune)22%Quota di località coperte da almeno un operatore mobile 5G, dalla griglia AGCOM (rif. 2026).
Accessibilità ferroviaria (tempo, inverso)20%Minuti d'auto verso la stazione a lunga percorrenza più vicina (ISTAT 2022), invertiti.
Accessibilità autostradale (tempo, inverso)18%Minuti d'auto verso il casello autostradale più vicino (ISTAT 2022), invertiti.
Accessibilità aeroportuale (tempo, inverso)12%Minuti d'auto verso l'aeroporto più vicino (ISTAT 2022), invertiti.

Esempio di lettura: Tutte le componenti usano il percentile nazionale (non sono densità per taglia). Digitale e trasporti sono quasi indipendenti, quindi l'indice è genuinamente bidimensionale. Caveat: copre solo digitale+trasporti — energia, rete idrica e rete viaria non sono ancora disponibili a livello comunale; annate miste (fibra 2020, mobile 2026, trasporti 2022).

I pesi e le componenti elencati qui sono pubblici e versionati in packages/core/.../indices/weights.yaml. Una modifica richiede pull request e validazione su un campione di comuni.

Attivazione PNRR vs Efficacia PNRR. Misuriamo solo l'attivazione (importi e progetti registrati). L'efficacia esecutiva (% di completamento, ritardi, soldi davvero spesi) richiederebbe i dati ReGIS, che non sono ancora pubblicati in modo strutturato.

Indice personalizzato

Lo strumento Costruisci il tuo indice usa lo stesso motore degli otto indici ufficiali: ogni componente viene portato su una scala 0-100 con il percentile rispetto al riferimento scelto (tutta Italia oppure il cluster di comuni di pari taglia) e i componenti si combinano in una media pesata; i pesi inseriti sono relativi e vengono normalizzati a somma 100%. I comuni che non hanno il dato di un componente sono valutati sui soli componenti disponibili (ridistribuzione dei pesi, come per gli indici ufficiali).

La differenza è la forma di preferenza scelta per ciascun indicatore, che decide come il valore grezzo diventa punteggio:

  • Più alto è meglio / più basso è meglio: percentile diretto o invertito.
  • Valore ideale: il punteggio premia la vicinanza a un valore scelto (utile per «popolazione piccola» o «centro Italia»); a campana attorno all'ideale.
  • Per categoria (regione, ripartizione): assegni tu un punteggio 0-100 a ciascuna categoria.

Partendo da un indice ufficiale, a parità di componenti, direzioni e pesi la classifica riproduce quella ufficiale. L'indice personalizzato è però una combinazione di preferenze soggettive: non è validato scientificamente e non sostituisce gli indici ufficiali del sito. Il calcolo è gratuito e non richiede registrazione.

Fallback di granularità

Quando un dato non è disponibile a livello comunale, ItalIntel mostra il valore alla granularità superiore disponibile (provincia → regione → nazione) marcandolo esplicitamente. Esempio: il tasso di occupazione RCFL è pubblicato da ISTAT solo a livello provinciale, quindi tutti i comuni di una stessa provincia mostrano lo stesso valore con granularity: provincia.

Assistente AI — come funziona

L'Assistente AI traduce la domanda in linguaggio naturale in chiamate a un insieme ristretto di strumenti (classifica, aggrega, serie storica, confronto) che eseguono query reali sul database. Il modello non genera numeri: ogni cifra mostrata proviene dal risultato di uno strumento sui dati ufficiali. Se un indicatore non è nel catalogo, l'assistente lo dichiara invece di inventare.

Gli aggregati territoriali rispettano la natura del KPI: i conteggi si sommano, le percentuali e i tassi si mediano pesando per la popolazione (o per la superficie), gli indicatori derivati (densità, reddito medio) si ricalcolano dai componenti aggregati. La granularità reale è rispettata: i KPI provinciali (es. tassi RCFL) vengono classificati per provincia, non per comune. Quando manca il numeratore di un indicatore derivato, l'assistente espone "dato non disponibile" anziché un valore pari a 0, coerentemente col principio di non inventare dati.

Classifiche e aggregati possono essere circoscritti a un ambito— una provincia o una regione specifica: una domanda come "i 10 comuni più popolosi della provincia di Viterbo" restituisce i soli comuni di quella provincia, non la classifica nazionale. Quando la domanda è ambigua o priva di un criterio (es. "i comuni più importanti"), l'assistente non tira a indovinare: chiede una precisazione proponendo riformulazioni già pronte da cliccare.

Ogni risposta cita le fonti dei dati usati ed è generata da un sistema di intelligenza artificiale (modello Claude di Anthropic), come richiesto dai principi di trasparenza dell'EU AI Act: può contenere imprecisioni di formulazione, verifica i dati alla fonte. Le funzioni AI sono riservate agli utenti registrati, con una quota di operazioni mensili che dipende dal piano.

Motore documenti & AI Composer

L'AI Composer poggia sullo stesso tool layer dell'Assistente. Un documento è una lista ordinata di blocchi (narrativa, grafico, tabella, punteggio, titolo di paragrafo); per i blocchi-dato il modello non produce prosa ma una spec strutturata e deterministica — lo strumento da invocare (classifica, aggrega, serie storica, confronto) con i suoi parametri. La spec risolta viene persistita: re-render, refresh ed export non richiamano l'LLM, che interviene solo alla prima risoluzione o quando l'utente modifica il prompt di un blocco. Questo rende i documenti riproducibili e contiene il costo AI. Titoli e testi di ogni blocco sono editabili dall'utente (anche la narrativa generata dall'AI e le card incluse dai modelli); i numeri dei blocchi-dato restano vincolati alla spec/fonte e non sono modificabili a mano.

La stessa spec viene resa in più formati: HTML (anteprima), PDF (Jinja2 → WeasyPrint, con grafici come SVG inline statici), Word (.docx via python-docx: tabelle e punteggi nativi, grafici come immagine) e PowerPoint (.pptx via python-pptx: grafici e tabelle come oggetti nativi modificabili). Il branding è un flag applicato in fase di export: filigrana italintel.it sui piani base, white-label (logo, colore, piè di pagina) sui piani alti.

I modelli predefiniti (Scheda completa, Benchmark, Dossier rischio, Due diligence di zona, Investitore immobiliare, Insediamento d'impresa, Dossier turismo, Sicurezza e qualità della vita, Dossier rischio per indirizzo) assemblano blocchi-dato deterministici (grafici, tabelle, punteggi: nessun numero inventato dall'LLM) a cui si aggiunge una breve guida alla lettura generata dall'AI; per questo consumano crediti. Il Dossier rischio per indirizzo consuma l'endpoint di catastima.it /v1/rischio/punto: geocodifica l'indirizzo e restituisce pericolosità da alluvione, frana e sismica del punto più la mappa. La mappa viene scaricata server-side e incorporata come data-URI, così la chiave API di catastima.it non transita mai dal browser né finisce nel PDF.

Endpoint di prodotto: POST /v1/composer/resolve_block (NL → spec + primi dati), POST /v1/composer/render_block (spec → dati, senza LLM) e /v1/composer/export.{pdf|docx|pptx}.

Tutela della privacy

Per dati fiscali MEF/BDAP, le classi di reddito con meno di 100 contribuenti sono soppresse (KPI = null) per evitare l'identificazione indiretta in comuni molto piccoli. Sui campi del breakdown per fonte (pensione, lavoro dipendente, lavoro autonomo, impresa, fabbricati) il MEF maschera le frequenze inferiori a 4: il fetcher converte le celle vuote in valori nulli e propaga il vuoto sui derivati.

Avvertenza metodologica sulla composizione del reddito. I KPI di breakdown per fonte (pensione media dichiarata, salario medio dichiarato, % dichiaranti per fonte) sono proxy fiscali, non anagrafiche. La frequenza «contribuenti che dichiarano reddito da pensione» non coincide con il numero di pensionati residenti: alcuni pensionati esenti dalla dichiarazione non compaiono, e una persona che continua a lavorare dopo i 65 anni può dichiarare contemporaneamente lavoro dipendente e pensione. Per gli usi narrativi del prodotto (distinguere territori a rendita pensionistica da territori a lavoro attivo) la proxy è eccellente e disponibile su tutti i 7.896 comuni; per usi attuariali rigorosi va citata come dato fiscale di fonte MEF dichiarazioni IRPEF, non come dato INPS.