1. Physical Warning Signs
* Sticker edges, bubbles, or a code that sits slightly higher than the surrounding print.
* A code on a surface where one would not expect it, such as a meter that has no payment sticker elsewhere.
* Different print quality compared with the rest of the sign.
Use our [QR safety checker](/qr-safety-checker) guidance for identifying tampered codes.
2. Check the Link Before Opening
Most camera apps show the destination URL before opening. Read the domain carefully with a [QR scanner](/qr-scanner). Look for misspellings, extra words, unusual endings, or a shortener that hides the real target.
3. Behavior Red Flags
* Requests for passwords, card details, or one-time codes.
* Urgent threats or prizes.
* Prompts to install an app from outside the official store.
4. If In Doubt
Type the official web address yourself or use the organization's app instead of the code. For legitimate codes, verify using our [printed QR tester](/printed-qr-tester) methodology if you manage the signage. Generate secure codes with proper tracking using our [URL QR code generator](/url-qr-code-generator) and [UTM builder](/utm-builder). Follow our [QR placement guide](/qr-placement-guide) for tamper-evident positioning. Understand security risks with our [error correction simulator](/error-correction-simulator)—high error correction can make overlaid tampering harder to detect visually.
Putting this into practice
Start with the smallest real test you can run. Generate the code, print it at the exact size you plan to use, and scan it with two different phones in the lighting where it will live. Check that the destination page loads quickly on a mobile connection and that the call to action next to the code tells people what they will get. If anything feels slow or unclear, fix it before you print a full batch, because reprints cost more than a short test. Keep a note of the size, material, and placement that worked so the next batch starts from a proven setup.
Common mistakes to avoid
The most common mistakes are easy to avoid once you know them. Long payloads make modules tiny, low contrast makes edges hard to read, and text placed too close to the border eats the quiet zone the scanner needs. Covering a corner finder pattern with a logo or a sticker breaks detection entirely, and a code placed behind glare or on a curved surface fails even when the print is perfect. Review each of these points on a proof copy, and treat any failure as a reason to adjust the design rather than a reason to blame the scanner.
Quick checklist
- Keep the payload as short as practical so modules stay large.
- Keep dark modules on a light background with strong contrast.
- Leave a clear quiet zone on all four sides of the symbol.
- Test the printed code at the real viewing distance and lighting.
- Confirm the destination page loads fast on a phone.
- Recheck the code after any change to the link, design, or placement.