Perché il mio QR code non funziona più? Quattro cause
Un codice QR stampato che ha smesso di funzionare ha una di quattro cause. Il link al suo interno dice quale, e se puoi risolverla tu.
Novità qui: Un'osservazione datata (18 ottobre 2026): un codice disattivato sul dominio breve di un grande generatore risponde HTTP 200 con una pagina di «account disattivato» invece di un 404, quindi un controllo dello stato lo dichiara sano. In più, una tabella di verdetti generata dalle regole del nostro verificatore di codici QR, che chiunque può provare sulla pagina del verificatore.
Un codice QR che funzionava non si rovina quasi mai sulla carta. L’inchiostro non scade. Quando un codice stampato smette di funzionare, è successa una di queste quattro cose: l’azienda dietro il suo link breve ha disattivato quel link, la pagina a cui punta è stata spostata, la stampa non si riesce a leggere oppure il codice è stato creato con un errore di battitura. Il link dentro il codice ti dice quale in meno di un minuto, e solo la prima è fuori dal tuo controllo.
# Il test di 30 secondi: leggi il link dentro il codice
Inquadra il codice con la fotocamera del telefono e guarda l’anteprima prima di toccarla. Oppure carica una foto nel nostro verificatore di codici QR gratuito, che mostra la stessa cosa e poi segue tutti i reindirizzamenti che ci sono dietro. Tre possibili risultati:
- Non compare nulla. Il telefono non riesce a leggere il codice. È un problema di stampa (causa 3), e nessun intervento sui link lo risolverà.
- Compare il tuo indirizzo (
iltuocaffe.it/menu). Il codice è statico: l’indirizzo è disegnato nei quadratini, in mezzo non c’è niente e nessuno può disattivarlo. Se non funziona, il problema è la pagina (causa 2) o un errore di battitura nell’indirizzo (causa 4). - Compare un link breve su un dominio di qualcun altro (qualche lettera, una barra, un codice breve). Il codice è dinamico: porta prima al generatore, e il generatore inoltra le persone alla destinazione impostata dal suo proprietario. Se non funziona, con ogni probabilità l’inoltro è stato disattivato (causa 1).
Quel terzo caso è il più difficile da diagnosticare, per un motivo che merita una sezione tutta sua.
# Un codice disattivato apre comunque una pagina, con HTTP 200
Ci si potrebbe aspettare che un codice morto produca un errore. Il 18 ottobre 2026 abbiamo
controllato un codice disattivato su qrco.de, il dominio breve usato da QR Code Generator
(QRCG, di Bitly). Non reindirizzava da nessuna parte e non restituiva un errore. Il link
breve rispondeva:
HTTP/2 200
content-type: text/html; charset=UTF-8
e la pagina servita conteneva un solo componente,
<qrcg-web-component-error-account-disabled>, che mostra un avviso di «account disattivato».
Non pubblichiamo il percorso del codice, perché è il codice di qualcun altro.
Da quell’unica risposta discendono tre cose:
- Il codice si scansiona ancora. Il telefono del tuo cliente apre una pagina, solo non la tua. Per questo la segnalazione più comune è «il QR funziona, ma mostra una cosa strana».
- Un semplice controllo del link lo dichiara sano. HTTP 200 significa «OK». Qualsiasi monitor di disponibilità o strumento per link rotti che legga solo i codici di stato segnerà questo codice come a posto. Bisogna guardare cosa dice la pagina.
- Il link indica chi può risolvere. Il dominio nel codice (qui
qrco.de) appartiene al generatore. È l’unico che può riattivare quel link.
Questo coincide con ciò che dice il centro assistenza del generatore stesso su cosa succede alla fine di una prova gratuita: «Dynamic QR Codes are deactivated and point to a service page rather than the original destination» (i codici QR dinamici vengono disattivati e puntano a una pagina di servizio invece che alla destinazione originale). Le pagine dei codici disattivati di altri generatori sono diverse. Alcuni reindirizzano a una pagina di avviso invece di servirla sul link breve stesso. Un’osservazione in un giorno è un esempio, non un’indagine.
Il nostro verificatore cerca esattamente questo. Quando la pagina alla fine della catena sembra un avviso del tipo «questo codice è stato disattivato», nel titolo, nell’indirizzo o in un piccolo insieme di frasi nell’HTML come «account disabled», lo segnala, anche se lo stato è 200.
# Causa 1: il generatore ha disattivato il suo link breve
È quella che capita a chi non ha sbagliato nulla. Un codice dinamico passa dal link breve del generatore, e quel link funziona solo finché il generatore lo tiene attivo. Le cause più comuni, ciascuna descritta nelle pagine di aiuto dei generatori stessi:
- È finita una prova gratuita. I codici dinamici gratuiti di alcuni generatori smettono di reindirizzare quando la prova termina.
- Un abbonamento è scaduto o un pagamento non è andato a buon fine.
- È stato raggiunto il limite di scansioni del piano gratuito. Dal centro assistenza di QR TIGER: «Dynamic QR codes created with a Freemium account have a predetermined limit on the number of scans they can receive. Once this limit is reached, the QR code becomes inactive» (i codici QR dinamici creati con un account Freemium hanno un limite predeterminato di scansioni; raggiunto il limite, il codice diventa inattivo).
- Il codice o l’account è stato eliminato, spesso da un collega che stava riordinando una dashboard, o quando se n’è andato chi era titolare dell’account.
Come capirlo: il link dentro il codice è su un dominio che non è tuo, e la pagina in cui arrivi è un avviso, un invito a passare a un piano a pagamento o una schermata vuota al posto dei tuoi contenuti.
Cosa fare: il codice stampato punta all’indirizzo dell’altra azienda, quindi solo lei può riattivarlo. Le tue scelte reali sono riattivarlo con loro o ristampare una volta sola con un codice che non si fermerà. Se non sei sicuro di quale sia il tuo caso, il verificatore di codici QR mostra di chi è il link breve contenuto nel codice.
# Causa 2: la pagina a cui punta è stata spostata o eliminata
Il codice funziona perfettamente e porta il visitatore a una pagina che non esiste più. Il
restyling di un sito ha rinominato /menu in /il-nostro-menu, un PDF è stato sostituito da
un file con un altro nome, oppure l’intero sito è sparito.
Come capirlo: il link dentro il codice è il tuo indirizzo (o un link breve che inoltra al
tuo indirizzo) e arrivi su una pagina «non trovato», di solito HTTP 404. Se l’indirizzo
inizia con http:// e il sito serve solo https://, alcuni telefoni mostrano anche un
avviso o si rifiutano di caricarlo.
Cosa fare:
- Se il codice è statico, rimetti una pagina a quell’indirizzo esatto, oppure imposta sul tuo sito un reindirizzamento dal vecchio indirizzo al nuovo. Il tuo hosting o il tuo costruttore di siti può farlo, e sistema tutte le copie stampate in un colpo solo.
- Se è un codice dinamico che controlli ancora, cambia la sua destinazione con la nuova pagina. Nessuna ristampa.
# Causa 3: la stampa non si riesce a leggere
Come capirlo: la fotocamera del telefono non mostra alcun link, oppure legge il codice solo da un certo angolo e a una certa distanza. Prova anche con un altro telefono: se uno recente lo legge senza problemi e uno vecchio no, il codice è al limite, non rotto.
I soliti colpevoli:
- Troppo piccolo per il suo contenuto. Un codice è una griglia di moduli, e un link più lungo significa più moduli stipati nello stesso spazio. Nelle nostre misurazioni sulle dimensioni di stampa, un link breve di 21 caratteri si codifica in 25 moduli di larghezza con livello di correzione degli errori M, e un URL di prodotto di 116 caratteri in 45. A parità di larghezza di 25 mm, sono moduli da 0,76 mm contro 0,47 mm.
- Nessuna zona di silenzio. Lo standard richiede quattro moduli di spazio bianco su ogni lato, e gli scanner lo usano per trovare i bordi del codice. Una cornice, una foto o un testo attaccati al codice sono una causa frequente.
- Poco contrasto. Moduli scuri su sfondo chiaro. Chiaro su scuro, colori tenui o un codice stampato sopra un’immagine movimentata rendono più difficile il lavoro dello scanner.
- Danni e superficie. Graffi, sbiadimento, pieghe, riflessi della plastificazione o un codice avvolto attorno a una bottiglia curva.
Cosa fare: ristampa. Fallo più grande, restituiscigli la zona di silenzio e prova la copia stampata nel posto in cui la gente la scansionerà, con il peggior telefono che riesci a trovare.
# Causa 4: un codice statico con un errore di battitura
Un codice statico è l’indirizzo disegnato in quadratini, quindi anche un errore di battitura
viene disegnato: cafe.com/menu codificato come cafe.com/mneu, o un dominio scritto male.
Come capirlo: il link dentro il codice è quasi il tuo indirizzo, ma non proprio. Un percorso sbagliato dà una pagina «non trovato» sul tuo sito. Un dominio scritto male di solito non dà alcuna risposta.
Cosa fare: se l’errore è nel percorso sul tuo sito, aggiungi un reindirizzamento dal percorso sbagliato alla pagina giusta (stessa soluzione della causa 2). Se a essere sbagliato è il dominio e non è tuo, da parte tua non c’è rimedio. Ristampa.
# Cosa conclude il verificatore, caso per caso
Ecco la stessa diagnosi eseguita dal codice che sta dietro al nostro verificatore di codici QR,
su sette risposte di esempio, una per ciascuna situazione descritta sopra. La richiesta è simulata (nessun codice reale,
solo domini di esempio), quindi questa tabella mostra cosa il verificatore conclude da ogni
tipo di risposta, non cosa fa oggi il codice di una determinata azienda. Il caso 5 riproduce il
corpo della risposta di qrco.de del 18 ottobre.
| Caso | Link nel codice | Passaggi (stato) | Verdetto | Avviso di disattivazione |
|---|---|---|---|---|
| Statico, pagina attiva | https://www.cafe.example/menu |
www.cafe.example (200) | static | no |
| Statico, pagina spostata | https://www.cafe.example/old-menu |
www.cafe.example (404) | broken | no |
| Statico, errore di battitura nel dominio | https://www.cfae.example/menu |
www.cfae.example (irraggiungibile) | broken | no |
| Link breve, attivo | https://short.example/Ab12Cd |
short.example (301) → www.cafe.example (200) | redirect | no |
| Codice breve, pagina di account disattivato | https://qr.example/Xy34Zw |
qr.example (200) | hosted | sì |
| Link breve, verso una pagina «disattivato» | https://short.example/Zz99Yy |
short.example (302) → generator.example (200) | redirect | sì |
| Codice MostlyQR | https://mqr.sh/AB12CD |
mqr.sh (302) → www.cafe.example (200) | mostlyqr | no |
Come leggerla:
- static: nessun altro sito nella catena. Niente può disattivarlo; funziona finché la pagina esiste.
- redirect: il codice passa prima dal link breve di un altro sito. Quel sito decide dove va, e il suo dominio è il primo passaggio della catena.
- hosted: nessun reindirizzamento, ma il link è un codice breve su un sito che serve la pagina da sé (caso 5). A meno che quel sito non sia tuo, chi lo gestisce controlla il codice.
- broken: la catena finisce con un errore o non risponde mai.
- Avviso di disattivazione è un indicatore separato che si aggiunge al verdetto. Guarda i casi 5 e 6: entrambi restituiscono 200 alla fine della catena, e l’indicatore dell’avviso è l’unica cosa che li distingue da un codice funzionante.
La tabella è generata, non scritta a mano: abbiamo fatto passare le regole del nostro verificatore di codici QR su ogni risposta di esempio e copiato i suoi verdetti. Puoi provare qualsiasi codice reale allo stesso modo sulla pagina del verificatore.
# Cosa non copre questo articolo
- Un generatore, un giorno. La risposta di
qrco.deè una singola osservazione del 18 ottobre 2026. I codici disattivati di altri generatori si comportano in modo diverso, e ognuno di loro può cambiare ciò che fa il proprio. - I limiti del verificatore. Segue al massimo otto passaggi, si arrende dopo otto secondi, legge solo i primi 64 KB di una pagina e riconosce un avviso da un breve elenco di frasi. Un avviso formulato in altro modo riceverà un verdetto ma non l’indicatore. E un verdetto «redirect» dice chi controlla il codice. Non dice che il codice è rotto.
- I problemi di stampa non si diagnosticano con un verificatore di link. Se il telefono non riesce a leggere il codice, non c’è alcun link da controllare. Il verificatore può leggere solo una foto nitida.
# In breve
- Leggi il link dentro il codice con l’anteprima della fotocamera o con il verificatore di codici QR.
- Non si legge nulla: ristampalo più grande, con la sua zona di silenzio, e prova la copia su carta.
- Il tuo indirizzo: sistema la pagina o aggiungi un reindirizzamento sul tuo sito. Se il dominio è scritto male, ristampa.
- Il link breve di un’altra azienda che porta a un avviso: solo quell’azienda può riattivarlo.
Se alla fine ristampi, scegli con attenzione. Un codice statico non può essere disattivato, ma non può nemmeno essere modificato. Un codice QR dinamico può essere modificato dopo la stampa, ma dipende dall’azienda che c’è dietro. I nostri continuano a reindirizzare all’ultima destinazione salvata anche se annulli un piano a pagamento, finché mantieni il tuo account gratuito e MostlyQR resta in funzione. Puoi creare un sostituto qui; il primo codice dinamico è gratuito, senza carta.
Domande frequenti
Perché il mio QR code ha smesso di funzionare se non è cambiato nulla?
Di solito perché il codice contiene un link breve sul dominio del generatore e non il tuo indirizzo, e il generatore ha disattivato quel link: è finita una prova gratuita, un abbonamento è scaduto o è stato raggiunto il limite di scansioni del piano gratuito. Il disegno stampato è a posto. Solo l'azienda proprietaria del dominio breve può riattivarlo.
Come capisco se il mio QR code è statico o dinamico?
Guarda il link al suo interno, nell'anteprima della fotocamera del telefono prima di toccarlo oppure con un verificatore di codici QR. Se è l'indirizzo del tuo sito, il codice è statico. Se è un link breve sul dominio di un'altra azienda, il codice è dinamico e quell'azienda decide dove porta.
Un QR code può scadere da solo?
No. Il disegno stampato non contiene alcuna data. Un codice statico funziona finché esiste la pagina a cui punta. Un codice dinamico funziona finché l'azienda dietro il suo link breve lo tiene attivo.
Il mio telefono non reagisce al QR code. Che problema c'è?
È un problema di stampa, non di link. Il codice è troppo piccolo per la distanza da cui viene scansionato, ha poco contrasto, è danneggiato o gli manca il margine bianco (la zona di silenzio) intorno. Ristampalo più grande, scuro su chiaro, con quattro moduli di spazio bianco su ogni lato, e prova la copia stampata, non il file.