Codice QR vs codice a barre: in cosa differiscono e quando usare l'uno o l'altro
dal team KoloQRBasi

Un codice a barre lineare memorizza i dati in una sola direzione e contiene circa 12–20 caratteri. Un codice QR memorizza i dati in due direzioni e contiene fino a 4.296 caratteri alfanumerici nello stesso ingombro. Anche un codice QR è tecnicamente un codice a barre - bidimensionale - quindi la vera domanda è 1D contro 2D, non «codice a barre contro QR».
Punti chiave
- Un codice a barre lineare codifica i dati lungo un asse; un codice QR li codifica lungo due, ed è per questo che un codice QR della stessa larghezza contiene centinaia di volte più informazioni.
- Un codice a barre UPC-A memorizza 12 cifre. Un codice QR memorizza fino a 7.089 cifre o 4.296 caratteri alfanumerici alla sua dimensione di simbolo massima e al livello di correzione d'errore più basso.
- I codici QR sono gratuiti da generare e non richiedono alcuna registrazione; un codice a barre UPC o EAN richiede un prefisso aziendale GS1 a pagamento, perché il numero stesso deve essere univoco a livello mondiale.
- Un codice QR resta leggibile con circa il 30% della sua area danneggiata, al livello di correzione d'errore H. Un codice a barre lineare non ha correzione d'errore, solo una cifra di controllo, quindi un graffio attraverso le barre di solito lo rende illeggibile.
- Le fotocamere dei telefoni rilevano i codici QR in modo nativo; leggere un codice a barre UPC richiede normalmente un'app di scansione dedicata o uno scanner da negozio.
Qual è la differenza tra un codice QR e un codice a barre?
Un codice a barre lineare è un simbolo leggibile dalle macchine che codifica i dati come barre e spazi paralleli di larghezza variabile, letti lungo un unico asse orizzontale. I formati più comuni sono UPC-A ed EAN-13 sulle confezioni al dettaglio, e Code 128 nella logistica.
Un codice QR è un simbolo a matrice bidimensionale, definito dalla norma ISO/IEC 18004, che codifica i dati come quadrati chiari e scuri chiamati moduli, letti in entrambe le direzioni contemporaneamente. QR sta per Quick Response.
Un modulo è una singola cella quadrata di un codice QR, ed è la più piccola unità che uno scanner deve risolvere. È la dimensione del modulo, non quella complessiva, a decidere se un codice QR stampato si scansiona.
Confronto affiancato
| Criterio | Codice a barre lineare (UPC-A, EAN-13, Code 128) | Codice QR |
|---|---|---|
| Dimensionalità | Una - i dati si leggono lungo la larghezza | Due - i dati si leggono in larghezza e in altezza |
| Capacità tipica | 12–13 cifre (UPC-A, EAN-13); variabile per Code 128 | Fino a 7.089 cifre o 4.296 caratteri alfanumerici |
| Tipi di dati | Cifre, oppure ASCII con Code 128 | Cifre, alfanumerico, byte grezzi, Kanji |
| Correzione d'errore | Nessuna - solo una cifra di controllo | Quattro livelli: L, M, Q, H, che recuperano circa il 7%, 15%, 25% e 30% del simbolo |
| Orientamento | Deve essere allineato alla linea di scansione, oppure letto da un imager omnidirezionale | Qualsiasi rotazione - tre pattern di rilevamento localizzano il simbolo |
| Hardware di lettura | Scanner laser e imager a fotocamera | Solo imager a fotocamera, comprese le fotocamere dei telefoni |
| Registrazione | UPC ed EAN richiedono un prefisso aziendale GS1 a pagamento | Nessuna - chiunque può generarne uno |
| Modificabile dopo la stampa | No | No, se il codice è statico; solo i codici dinamici con un servizio di reindirizzamento sono modificabili |
| Dimensione minima pratica di stampa | UPC-A all'80% di ingrandimento, circa 30 × 21 mm | Circa 20 × 20 mm per la scansione ravvicinata |
| Zona di silenzio | 9 moduli per lato per UPC-A; 11 a sinistra e 7 a destra per EAN-13 | 4 moduli su tutti e quattro i lati |
| Ideale per | Scansione rapida e ripetuta di un unico identificatore fisso | Portare un URL, credenziali Wi-Fi, dati di contatto o un record di lotto |
Quanti dati può contenere un codice QR rispetto a un codice a barre?
Un codice a barre UPC-A memorizza esattamente 12 cifre e nient'altro. Un codice QR, alla sua versione di simbolo più grande e con la correzione d'errore più bassa, memorizza fino a 7.089 caratteri numerici, 4.296 caratteri alfanumerici o 2.953 byte grezzi. In pratica, la maggior parte dei codici QR sul materiale stampato porta un URL di 30–80 caratteri.
In un codice QR la capacità cala man mano che la correzione d'errore sale, perché la ridondanza occupa gli stessi moduli che altrimenti porterebbero i dati. Un codice QR che contiene lo stesso URL al livello H è visibilmente più denso dello stesso codice al livello L, e ogni modulo è più piccolo a parità di dimensione di stampa.
Il limite pratico di un codice QR non è la specifica ma la stampa. Un URL lungo impone una versione di simbolo più alta, con moduli più numerosi e più piccoli, e sono i moduli piccoli a cedere su carta non patinata, cartoncino ruvido e stampa a bassa risoluzione. Accorciare l'URL è di solito più efficace che ingrandire il codice.
Quale dovresti usare?
Usa questa regola di decisione:
- Se il codice identifica un prodotto in vendita nei negozi, usa un codice a barre lineare - un UPC o un EAN che porta il tuo GTIN, ottenuto da GS1. Oggi alla maggior parte delle casse non è accettato nessun altro formato.
- Se il codice porta una persona su una pagina web, usa un codice QR. Menù, poster, biglietti da visita, foglietti nelle confezioni, badge per eventi e condivisione del Wi-Fi rientrano tutti qui.
- Se il codice viene scansionato dal personale con uno scanner laser palmare in magazzino, usa un codice a barre lineare - Code 128 o GS1-128. Gli scanner laser non riescono affatto a leggere i codici QR.
- Se il codice deve sopravvivere ai danni - abrasione, pieghe, copertura parziale - usa un codice QR al livello di correzione d'errore Q o H.
- Se il codice deve stare su un pezzo o un componente molto piccolo, usa Data Matrix, non un codice QR. Data Matrix porta lo stesso tipo di dati in un ingombro minore ed è la scelta standard nell'elettronica e in ambito sanitario.
- Se oggi ti servono sia il coinvolgimento del cliente sia la lettura alla cassa, stampali entrambi. GS1 raccomanda questo doppio contrassegno durante l'attuale periodo di transizione.
Un telefono può leggere un codice a barre oltre a un codice QR?
Le fotocamere dei telefoni rilevano i codici QR in modo nativo - basta puntare l'app fotocamera su un codice QR perché il link compaia, senza alcun software aggiuntivo. Leggere un codice a barre UPC o EAN è meno affidabile: richiede di solito un'app dedicata, di shopping, di biblioteca o di inventario, e i risultati variano a seconda del dispositivo e della versione del sistema operativo.
Questa asimmetria è la differenza più pratica di tutte per chiunque stampi un codice destinato al pubblico. Un codice a barre lineare su un poster chiede al lettore di installare prima qualcosa. Un codice QR sullo stesso poster funziona con la fotocamera che il lettore ha già aperta.
Nel commercio al dettaglio vale il contrario. Uno scanner laser fisso alla cassa di un supermercato legge un codice a barre lineare in una frazione di secondo da qualsiasi angolazione sul nastro, e non riesce affatto a leggere un codice QR, a meno che lo scanner non sia un imager a fotocamera.
Devi registrare un codice QR come si registra un UPC?
No. Un codice QR non richiede registrazione, licenza né alcuna autorità centrale, perché un codice QR è solo un contenitore - codifica qualunque testo ci metti dentro. Un codice a barre UPC o EAN richiede un prefisso aziendale GS1, che è un abbonamento a pagamento, perché il numero codificato deve essere univoco tra tutti i prodotti del commercio mondiale.
È una differenza in ciò che i due simboli significano, non solo nel costo. Un UPC ha senso perché il database di un rivenditore riconosce il numero. Un codice QR ha senso perché punta a una destinazione che controlli tu.
Creare un codice QR è gratuito con KoloQR, un generatore di codici QR gratuito con codici QR circolari e di forma personalizzata, che esporta PNG e SVG senza account. Ottenere un GTIN per un codice a barre lineare da negozio è un processo a parte, gestito attraverso l'organizzazione GS1 del tuo paese.
Dimensione di stampa e zona di silenzio richieste da ciascuno
Un codice QR ha bisogno di circa 1 cm di larghezza ogni 10 cm di distanza di scansione, con un minimo pratico di 20 × 20 mm per la lettura ravvicinata. Un codice a barre UPC-A ha una dimensione nominale di circa 37 × 26 mm comprese le zone di silenzio, e GS1 consente un ingrandimento tra l'80% e il 200% di quella misura.
Una zona di silenzio è il margine vuoto attorno a un codice a barre che permette a uno scanner di rilevare dove il simbolo inizia e finisce. Un codice QR richiede 4 moduli di spazio libero su tutti e quattro i lati. Un codice a barre UPC-A richiede 9 moduli di spazio libero a sinistra e a destra; EAN-13 ne richiede 11 a sinistra e 7 a destra.
L'altezza delle barre conta per i codici a barre lineari e non esiste come concetto per i codici QR. Accorciare un UPC sotto la sua altezza nominale di 25,9 mm - cosa che si fa spesso per risparmiare spazio sulla confezione - riduce le angolazioni con cui uno scanner laser può attraversare tutte le barre, ed è la causa più comune di scansioni ripetutamente fallite alla cassa.
Per la stampa, esporta vettoriale anziché raster ovunque il flusso di lavoro lo consenta. Un SVG si adatta a qualsiasi dimensione senza ammorbidire i bordi dei moduli; un PNG ingrandito in un programma di impaginazione produce bordi sfocati che costano affidabilità di scansione quando i moduli sono piccoli. Questo vale allo stesso modo per entrambi i tipi di simbolo.
Cosa succede quando il codice si danneggia
Un codice QR sopravvive a un danno parziale; un codice a barre lineare no. I codici QR portano la correzione d'errore Reed–Solomon su quattro livelli - L, M, Q e H - che recuperano rispettivamente circa il 7%, 15%, 25% e 30% del simbolo. I codici a barre lineari portano solo una cifra di controllo, che rileva un errore ma non può ricostruire i dati mancanti.
È per questo che i loghi possono stare sui codici QR e non sui codici a barre. Un logo che copre il centro di un codice QR al livello H rimuove moduli che la correzione d'errore sa ricostruire. Qualsiasi cosa copra le barre di un UPC rimuove dati senza alcun modo di recuperarli, ed è per questo che i codici a barre da negozio si stampano sempre puliti.
Il 30% è un tetto, non un budget da spendere fino in fondo. Tieni il logo sotto circa il 25% dell'area del codice QR e mai sopra un pattern di rilevamento - i tre grandi quadrati negli angoli - perché sono quei pattern a permettere allo scanner di localizzare il simbolo, e non sono protetti dalla correzione d'errore.
I codici QR sostituiranno i codici a barre sulle confezioni?
Non del tutto, e non subito. GS1 ha fissato un obiettivo di settore, noto come Sunrise 2027 negli Stati Uniti e come migrazione 2D altrove, perché entro la fine del 2027 i sistemi di cassa siano in grado di leggere codici a barre 2D con gli standard GS1. Ci si aspetta che i codici a barre UPC ed EAN continuino a essere accettati anche dopo quella data.
Il meccanismo è GS1 Digital Link, una sintassi URI che permette a un codice QR di portare insieme un GTIN e un indirizzo web. Un solo simbolo serve allora sia la cassa sia il telefono del cliente. Finché non saranno aggiornati abbastanza scanner di cassa, l'indicazione di GS1 è di stampare sulla confezione sia un codice a barre lineare sia un codice 2D.
Per una piccola impresa, oggi la lettura pratica è semplice: un codice QR che generi da solo non verrà letto alla cassa di un supermercato. È un veicolo di marketing e di informazione, non un identificatore di prodotto, a meno che non sia costruito con la sintassi GS1 Digital Link e un GTIN di tua proprietà.
Altri codici 2D che vale la pena conoscere
Data Matrix è un codice a matrice 2D che compatta lo stesso tipo di dati in un'area più piccola di un codice QR, ed è lo standard per marcare componenti minuti, elettronica e confezioni farmaceutiche. Scegli questo quando lo spazio è il vincolo stringente e il lettore è uno scanner dedicato anziché un telefono.
PDF417 è un codice lineare impilato usato su patenti di guida, carte d'imbarco ed etichette di spedizione. Contiene più di un codice a barre lineare, ma si legge con la stessa logica a linea di scansione, ed è più largo che alto.
Aztec è un codice 2D molto usato nella bigliettazione dei trasporti, e non ha bisogno di zona di silenzio - utile quando un biglietto è stampato al vivo o mostrato sullo schermo di un telefono.
Per qualsiasi cosa rivolta al grande pubblico, QR resta la scelta predefinita giusta tra i codici 2D, perché è l'unico che le fotocamere dei telefoni rilevano senza un'app.
Errori comuni nella scelta tra i due
- Stampare un codice QR e aspettarsi che venga letto alla cassa. Un codice QR generato da te non contiene alcun GTIN e non è registrato presso nessun rivenditore. Per il punto vendita usa un UPC o un EAN.
- Togliere la zona di silenzio. Mettere l'uno o l'altro simbolo a filo di un bordo, di una piega o di un blocco di colore è la causa più frequente di un codice che si scansiona a schermo e fallisce in stampa.
- Invertire i colori. Moduli chiari su sfondo scuro mandano in crisi molti scanner, che si aspettano dati scuri su sfondo chiaro. Tieni scuri gli elementi scuri, e tieni alto il contrasto.
- Accorciare l'altezza delle barre di un codice a barre lineare per farlo entrare in un layout, cosa che riduce le angolazioni di scansione disponibili a uno scanner laser.
- Ingrandire un PNG piccolo per la stampa. Esporta SVG per qualsiasi cosa vada in tipografia; un file raster ingrandito ammorbidisce i bordi dei moduli e abbassa il tasso di scansioni riuscite.
- Alzare la correzione d'errore del QR invece di accorciare l'URL. Una correzione d'errore più alta aggiunge moduli, rendendo ciascuno più piccolo a parità di dimensione di stampa - il che può peggiorare un codice al limite invece di migliorarlo.
- Saltare la prova fisica. Stampa il codice a dimensione finale, sul materiale finale, e scansionalo con un telefono qualunque sotto l'illuminazione in cui sarà davvero usato.
Questions? Answered
Sì. Un codice QR è un codice a barre bidimensionale. Nell'uso quotidiano la parola «codice a barre» indica di solito il tipo lineare, monodimensionale, che si trova sulle confezioni al dettaglio, ma entrambi sono simboli leggibili dalle macchine definiti da norme ISO. La distinzione corretta è 1D contro 2D.
Nessuno dei due è meglio in generale - risolvono problemi diversi. Usa un codice a barre lineare quando uno scanner deve leggere un unico numero di prodotto in modo rapido e ripetuto. Usa un codice QR quando una persona deve raggiungere una pagina web, una rete Wi-Fi o dei dati di contatto con la fotocamera del telefono.
Sì, tramite GS1 Digital Link, che codifica un GTIN dentro un URI web così che un solo codice QR serva sia lo scanner della cassa sia il telefono del cliente. Un codice QR che generi da solo con un semplice URL non contiene alcun GTIN e non funzionerà al punto vendita.
Oggi di solito no. La maggior parte degli scanner di cassa legge ancora solo codici a barre lineari, e quelli che leggono codici 2D si aspettano la sintassi GS1. L'obiettivo dichiarato di GS1 è che i sistemi di cassa accettino codici a barre 2D entro la fine del 2027, con i codici a barre lineari ancora accettati in seguito.
No. Un codice a barre lineare non ha correzione d'errore, quindi coprire una qualsiasi parte delle barre distrugge dati che non possono essere ricostruiti. I loghi funzionano sui codici QR perché i livelli di correzione d'errore Q e H ricostruiscono i moduli coperti - fino a un limite di circa il 25% dell'area del codice.
La causa consueta è la dimensione dei moduli. Un URL lungo costringe più moduli, e più piccoli, dentro lo stesso quadrato fisico, e i moduli piccoli si sfocano su supporti assorbenti o ruvidi. Accorcia l'URL, ingrandisci il codice, oppure stampa da SVG anziché da un PNG ingrandito.
I codici QR statici non scadono - i dati sono dentro il simbolo e funzionano per sempre. I codici QR dinamici puntano a un reindirizzamento di proprietà di un fornitore di servizi e smettono di funzionare se l'abbonamento decade. KoloQR genera codici QR statici, quindi la destinazione non può essere cambiata dopo la stampa.
A volte, ma non sempre. Un codice QR che porta solo un URL breve può stare entro circa 20 × 20 mm. Un contenuto più lungo richiede una versione di simbolo più alta con moduli più piccoli, il che alza la dimensione minima stampabile. Data Matrix è la scelta migliore dove lo spazio è davvero stretto.
Per uno scanner laser fisso che legge un solo numero migliaia di volte al giorno, un codice a barre lineare è più veloce e meno costoso da mantenere. Gli imager a fotocamera leggono entrambi, ma riconvertire una flotta esistente di scanner laser costa più di quanto i dati aggiuntivi di solito giustifichino.
Continua a esplorare
Pagine che riprendono da dove finisce questa: lo stesso contesto, lo stesso tipo di codice o la prossima decisione da prendere.
Negozi al dettaglio
Schede prodotto, disponibilità e link alle recensioni su etichette da scaffale, vetrine e cartelli alla cassa.
Menù del ristorante
Segnaposto da tavolo e confezioni da asporto che aprono il menù attuale con una scansione - aggiorna un prezzo e ogni tavolo lo mostra, senza ristampare nulla.
Codici QR brandizzati
Adatta i codici QR al tuo brand con un logo, colori e forme personalizzate, senza sacrificare la scansionabilità.
Codice QR di URL
Porta chiunque direttamente a una pagina web, una landing page o un link con una sola scansione.
Correzione d'errore dei codici QR: come funzionano davvero L, M, Q e H
Cosa recupera ogni livello di correzione d'errore, quanti dati costa, quanto grande può essere il logo e perché alzare il livello può rendere un codice stampato più difficile da leggere.
Codici QR rotondi
Moduli circolari e una cornice rotonda, per i sottobicchieri, i sigilli e i badge su cui un codice quadrato non è mai stato perfetto.
Perché KoloQR?
- Crea codici QR per siti web, menù, Wi-Fi, PDF e biglietti da visita
- Personalizza colori, loghi e forme uniche
- Scarica file PNG e SVG di alta qualità
- Pensato sia per la stampa che per il digitale
