L, M, Q, H : le bon niveau de correction QR selon vos usages
Niveaux L, M, Q, H : comment choisir la correction d'erreur d'un QR code selon le support, pourquoi le réflexe « H par défaut » se paie en densité et en lisibilité, et le protocole de test à faire avant toute impression en grande quantité.
J'ai mis trois ans avant de comprendre que le niveau H n'est pas un cadeau. C'est une taxe. Une taxe payée en densité de modules, en marge de sécurité perdue, en logo écrasé au centre d'un QR devenu trop chargé pour scanner correctement sur un vieux téléphone Android.
Le niveau de correction erreur QR code que vous choisissez détermine combien de données de secours sont ajoutées au code, et donc combien de place il reste pour tout le reste. Chez QR Code Agency, le réflexe "H par défaut" revient sans arrêt chez les nouveaux clients. C'est presque toujours une erreur.
Ce que 7%, 15%, 25%, 30% veulent vraiment dire
La correction erreur QR repose sur les codes de Reed-Solomon, un algorithme mathématique qui ajoute des blocs de données redondants au message d'origine. Si une partie du QR est sale, déchirée ou mal imprimée, le lecteur reconstruit l'information manquante à partir de cette redondance.
Quatre niveaux existent, chacun avec sa capacité de restauration :
- L (Low) : tolère jusqu'à 7% de dégradation
- M (Medium) : tolère jusqu'à 15%
- Q (Quartile) : tolère jusqu'à 25%
- H (High) : tolère jusqu'à 30%
Ces pourcentages ne sont pas gratuits. Plus le niveau monte, plus l'algorithme ajoute de blocs Reed-Solomon dans la matrice, et plus la matrice doit grossir ou densifier ses modules pour contenir la même quantité de données utiles. Un QR en H contient objectivement moins de place utile qu'un QR en L pour la même URL.
C'est le compromis qu'on oublie de vous expliquer quand un générateur gratuit vous met H par défaut : vous gagnez de la tolérance aux dommages physiques, vous perdez de la marge pour un logo, une bordure arrondie, ou simplement une meilleure lisibilité sur un écran de téléphone à 30 cm.
Chez QR Code Agency, chaque rendu applique ERROR_CORRECT_H uniquement quand un logo est intégré, précisément pour que le logo à 24% de la surface ne casse jamais le scan. Mais ce n'est pas une règle universelle, c'est une réponse à un besoin précis.
La grille de décision par support
J'ai fini par construire une grille mentale que j'utilise à chaque brief client. Elle part d'une question simple : qu'est-ce qui va abîmer ce QR avant qu'un humain le scanne ?
Étiquette produit sur ligne de production
Frottements, poussière, manipulation répétée. Ici, le niveau Q ou H se justifie parce que l'étiquette va perdre en qualité avec le temps. Une étiquette de conserve qui passe six mois en entrepôt n'a plus le même contraste qu'à la sortie de l'imprimante.
Packaging courbé (bouteille, tube, canette)
La courbure déforme optiquement le QR, surtout sur les bords. Le niveau Q est un bon compromis : assez de tolérance pour la distorsion géométrique, sans sacrifier toute la densité disponible.
Affiche extérieure
Soleil qui délave l'encre, pluie, graffiti occasionnel. Le niveau H a un vrai rôle ici, mais seulement si l'affiche reste en place plusieurs mois sans entretien. Pour une affiche intérieure protégée, M suffit largement.
Carte de visite
Support propre, manipulation limitée, généralement scanné dans les jours qui suivent l'échange. Le niveau L ou M est amplement suffisant. J'ai vu des cartes de visite avec un QR en H tellement dense que le module central, à côté du logo, devenait illisible sur un iPhone 8. Ironique : la sur-correction cassait le scan qu'elle était censée protéger.
D'ailleurs, si vous générez ce type de QR pour remplacer vos cartons professionnels, j'ai détaillé toute la démarche dans mon article sur le QR code vCard.
Écran (site web, présentation, affichage numérique)
Aucune dégradation physique possible. Le niveau L est presque toujours le bon choix. Certains designers insistent quand même sur Q ou H "pour être sûrs", ce qui n'a aucun sens sur un écran où le rendu est parfait à 100% du temps.
Textile (t-shirt, sac, uniforme)
Le tissu bouge, se froisse, se lave. Ici Q minimum, H si le vêtement passe régulièrement en machine.
Les cas où H est justifié, et ceux où c'est du gaspillage
Le niveau H a deux usages légitimes, pas plus.
Le premier, c'est le logo intégré. Un logo qui recouvre 20 à 24% de la surface du QR retire de l'information brute que l'algorithme doit reconstruire. Sans correction H, un logo de cette taille casse purement et simplement le scan sur une bonne partie des téléphones. C'est la raison pour laquelle QR Code Agency applique H systématiquement dès qu'un logo est ajouté, peu importe le support final.
Le deuxième cas, c'est une surface qui va s'abîmer avec certitude : étiquette extérieure, packaging industriel, signalétique de chantier. Si vous savez déjà que le support va perdre en qualité, H compense cette perte anticipée.
En dehors de ces deux cas, choisir H par défaut revient à payer une taxe pour un risque qui n'existe pas. Sur une carte de visite propre, sur un écran, sur un packaging qui reste en boutique climatisée, le niveau L ou M offre une matrice moins dense, donc plus lisible de loin, avec plus de marge pour votre identité visuelle.
J'ai fait cette erreur au début : appliquer H à absolument tout par prudence excessive. Résultat, des QR trop chargés visuellement, des designers qui se plaignaient de ne plus pouvoir placer leur logo sans casser le scan, et des clients qui pensaient que "plus de correction" égalait "plus fiable" dans tous les contextes. Faux. Plus de correction égale plus de densité, point.
L'erreur qui coûte vraiment cher
La vraie erreur, ce n'est pas de choisir le mauvais niveau sur papier. C'est de ne jamais tester le scan réel sur le support final avant l'impression en grande quantité.
Cas type que je donne toujours en exemple : des milliers d'étiquettes imprimées en niveau L parce que le rendu "avait l'air correct" à l'écran, puis collées sur une surface légèrement réfléchissante sous un éclairage de magasin agressif. Dans ce scénario, les échecs de scan se découvrent après l'impression, quand il est trop tard pour corriger sans tout réimprimer.
Le protocole que je recommande maintenant, systématiquement :
- Imprimer un test sur le support final exact (même papier, même laminage, même courbure)
- Scanner avec au moins trois téléphones différents, dont un modèle d'entrée de gamme Android
- Scanner sous l'éclairage réel prévu (extérieur, néon de magasin, faible luminosité)
- Vérifier la distance de scan typique pour ce support (30 cm pour une carte de visite, 2 mètres pour une affiche)
Si le scan échoue dans ces conditions réelles, montez d'un niveau. Ne montez jamais "au cas où" sans avoir d'abord constaté un échec concret.
Pour l'impression QR code, la résolution compte autant que le niveau de correction. Un QR en H mal imprimé à 150 DPI scannera pire qu'un QR en L imprimé proprement à 300 DPI. La correction d'erreur compense des dommages physiques, pas une mauvaise résolution de départ. C'est un point que j'aborde aussi dans l'article sur comment changer la destination d'un QR déjà imprimé, parce que le problème de fiabilité de scan revient souvent au moment où on veut modifier un QR statique après coup.
Densité et lisibilité : le vrai arbitrage
Concrètement, voici ce qui se passe quand vous montez de niveau pour la même donnée encodée :
- L à M : légère augmentation de densité, quasiment invisible à l'œil nu sur des QR de taille moyenne
- M à Q : la matrice devient sensiblement plus fine, chaque module rétrécit, plus sensible au flou d'impression
- Q à H : la version du QR peut devoir augmenter (plus de modules au total) pour la même quantité de données, ce qui agrandit physiquement le code ou réduit encore la taille de chaque module si la surface reste fixe
C'est là que beaucoup de gens se plantent : ils fixent une taille physique de QR (disons 2 cm sur une étiquette), montent le niveau à H "pour la sécurité", et se retrouvent avec des modules tellement petits qu'une imprimante thermique bas de gamme ne les rend plus proprement. Le niveau H, censé protéger le scan, finit par le compromettre à cause de la résolution d'impression insuffisante pour la densité qu'il impose.
La règle que j'applique : fixez d'abord le support et sa taille réelle, testez le scan, et seulement ensuite ajustez le niveau de correction en fonction du résultat observé. Jamais l'inverse.
Une action concrète à faire aujourd'hui
Reprenez vos trois derniers QR imprimés. Vérifiez leur niveau de correction actuel. Si c'est H sur une carte de visite, un menu plastifié protégé, ou tout autre support propre et stable, repassez à M et testez le scan sur trois téléphones différents avant votre prochaine impression.
Vous gagnerez de la place pour votre logo, une matrice plus lisible de loin, et vous arrêterez de payer une taxe de densité pour un risque qui n'existe pas sur votre support. Le bon niveau de correction n'est jamais celui qui rassure le plus, c'est celui qui correspond à ce que votre QR va réellement subir avant d'être scanné.
A lire aussi
Keep reading
QR code emballage : les erreurs qui ruinent le scan
Un QR code qui scanne parfaitement sur la maquette peut devenir illisible en rayon : courbure, vernis, contraste, placement. Voici les erreurs de conception à éliminer avant d'imprimer vos emballages.
QR Déjà Imprimé : Comment Changer sa Destination
Un QR code déjà imprimé qui pointe vers la mauvaise page n'est pas forcément perdu. Voici comment vérifier s'il est dynamique, changer sa destination en quelques minutes et éviter la réimpression de milliers d'exemplaires.
QR Codes Dynamiques : 3 Erreurs Coûteuses à Éviter
Trois erreurs avec les QR codes dynamiques peuvent ruiner vos campagnes imprimées. Voici comment protéger vos codes QR modifiables après impression.