How we test codes
A QR code that doesn’t scan is worse than no code at all, especially once it’s printed. So every code on Qodeplate is checked before you download it, and our templates go through a fixed routine on real phones and real paper. This page explains what we check, and what we can’t.
1. The automatic check on every code
Each time you change something, the page reads your code back with an open-source QR decoder (jsQR), the same way a phone camera decodes an image. It then compares the result with what you typed, character by character.
- Green, “Scans correctly”: the decoder read exactly your text, link or details.
- “Scans, but reads different text”: the code is readable but something changed, usually a special character. Check before you print.
- “Doesn’t scan reliably”: the decoder couldn’t read it. Raise the contrast, use simpler dots, make the logo smaller or raise error correction.
The check runs in your browser. Nothing you type is sent to us to do it.
2. Extra checks for printed signs
On the sign pages, the check looks only at the code area plus a margin, as a phone does when you point it at a sign, and reads it at three sizes (full, 60% and 40%). A sign passes only if the code reads correctly at one of those sizes, which catches designs that work on screen but fail from a distance.
3. Checks on what you type
- Barcodes: each value is checked against the rules of its format, and check digits for EAN, UPC and ITF-14 are calculated for you. Invalid lines in a bulk list are listed and left out of the PDF.
- Bank transfers (GiroCode): the IBAN is checked with its two check digits before the code is made, so a typo can’t end up on a printed sign.
- Colours: the generator warns you when the code is too light, or lighter than its background, which many phone cameras can’t read.
- Print size: the generator shows the smallest size your code can be printed at, based on how many modules (squares) it has.
4. Phone and app tests
Before a template or code type goes live, and again when a major phone update changes how codes are read, we run the same routine:
- Scan with the built-in camera app on a current iPhone and a current Android phone.
- Scan with an older phone and with a separate scanner app, because not everyone has the latest camera.
- For Wi-Fi codes: check that the phone offers to join the network. For contact cards: check that it offers to save the contact. For GiroCodes: scan with banking apps.
- Try every dot and corner style, and a logo at the largest size the tool allows.
5. Print tests
- Print each sign template at its smallest size (A6 or 4 × 6 in) at 100% on an ordinary office printer.
- Print on matte paper and on glossy paper, and scan under normal room light.
- Scan from the distance the sign is made for, following the 10-to-1 rule: a 3 cm code from about 30 cm.
- For label sheets: print on plain paper and hold it against the real label sheet to check that the barcodes line up.
What we can’t test
There are thousands of phone models and scanner apps, so we can’t promise every one reads every design. Printing also varies: a worn toner cartridge, “fit to page” scaling or shiny paper can stop a good code from scanning. That’s why we ask you to scan your own printed proof before printing many copies. For retail barcodes, a correct format and check digit is necessary but not the whole story: shops also need a licensed GS1 number and a good print.
Found a code that doesn’t scan?
Tell us which page, which settings and which phone you used, through the contact form or by email to qodeplate@gmail.com. We fix problems in the tools first.