QR Code Campaign Checklist Pre-launch and post-launch
A complete QR Code campaign checklist covering every decision and verification step from initial briefing to post-launch tracking review. Use this before every print run — not after the materials come back from the printer.
Most QR Code failures are preventable and follow a predictable pattern. A QR Code that has been in production use for years in a marketing team and has never failed a scan test is not the result of luck — it is the result of a consistent pre-launch process that catches the same predictable failure modes before they reach print. This checklist codifies that process into a form that can be applied by anyone on the team, not just the person who has been managing QR Code campaigns long enough to have learned what goes wrong. They result from a QR Code that is too small for the scanning distance, a destination URL that changed after the code was printed, a missing quiet zone, a low-contrast colour scheme that scanner algorithms cannot resolve, or a destination page that loads in eight seconds on a mobile connection. All of these can be caught before printing. This checklist exists so they are.
Checklist Sections
- Section A — Decision checklist (before briefing the designer)
- Section B — Destination URL checklist
- Section C — QR Code specification checklist
- Section D — Design and print file checklist
- Section E — Pre-print test scanning checklist
- Section F — Post-launch tracking checklist
- Reference — Size requirements by scanning distance
- Reference — Error correction levels explained
- Reference — Quiet zone requirements
- Common failure modes and how to avoid them
Section A — Decision checklist
Complete this section before briefing the designer. Decisions made here affect the QR Code specification, the destination URL setup and the tracking configuration.
A. Decision checklist — complete before design brief
- ☐ Dynamic or static? — Dynamic is recommended for all printed materials. Use static only if the destination is permanently fixed and scan analytics are not needed. See reference section for full comparison.
- ☐ Scanning distance confirmed — At what distance will the typical user scan this QR Code? Document the distance in cm. This determines the minimum print size. (Business card: 20–30 cm. Flyer: 30–50 cm. Poster: 50–150 cm. Window display: 100–200 cm. Billboard: 200 cm+.)
- ☐ Print surface confirmed — What surface will the QR Code be printed on? (Paper: standard. Textured/embossed: use higher error correction. Curved/cylindrical: use higher error correction and test on actual surface. Screen display: standard.)
- ☐ Logo overlay decision — Will a logo or brand mark be placed over the centre of the QR Code? If yes, error correction level Q or H is required. The logo must not cover more than 30% of the QR Code area.
- ☐ Destination type confirmed — Where does the QR Code link? (Landing page. Product page. PDF. Video. App store. Form. WiFi credential.) The destination type determines the UTM parameter requirements and the mobile optimisation check.
- ☐ Campaign attribution required? — Is this QR Code part of a tracked marketing campaign? If yes, the destination must have UTM parameters set on the short link, and campaign analytics must be configured before the code is finalised.
- ☐ Multiple codes on same print run? — Are multiple QR Codes being created for the same campaign (e.g., one per location, one per publication)? If yes, each code must link to a distinct short URL so that per-code analytics can be separated.
Section B — Destination URL checklist
The destination URL is the most common point of failure in a QR Code campaign. A QR Code printed on 10,000 flyers that links to a 404 page, a desktop-only landing page, or a page that takes 12 seconds to load on mobile is a wasted print run. This section verifies the destination before the code is finalised.
B. Destination URL checklist
- ☐ Page is live — Open the destination URL in a browser and confirm the page loads without error. A URL that redirects to the homepage (because the intended destination page does not yet exist) is a common error at this stage.
- ☐ Page is mobile-optimised — Open the destination on a smartphone browser. Confirm the page renders correctly at mobile viewport width, text is readable without zooming, and interactive elements (buttons, forms) are tappable at finger-size.
- ☐ Page load time is acceptable — On a mobile device on a 4G connection (not WiFi), measure how long the page takes to fully load. A page that takes more than 3 seconds to load significantly reduces the conversion rate from scan to engagement. If the page is slow, flag it to the web team before the print run.
- ☐ No redirect chain — The short link behind the QR Code should resolve in one or two redirects maximum. A chain of five redirects (short link → tracking redirect → CDN redirect → www → non-www → actual page) adds latency and increases the risk of a broken link at any point in the chain.
- ☐ Short link is the destination — not the raw URL — The QR Code should encode a short link (e.g.,
cutt.ly/aBcDeForyourbrnd.link/campaign-name), not the full destination URL. Encoding the full URL including UTM parameters makes the QR Code pattern significantly denser, which reduces scan reliability at small sizes and increases the risk of read failure on poor-quality print surfaces. - ☐ UTM parameters are on the short link (not in the QR Code) — UTM parameters must be set on the short link destination — not encoded directly into the QR Code URL. The QR Code encodes the clean short link; the short link redirects to the UTM-tagged destination. This allows UTM parameters to be updated without reprinting.
- ☐ Short link is active and redirects correctly — Open the short link directly in a browser and confirm it redirects to the correct destination. Confirm the link has not been deactivated, has not expired, and is not blocked by the link platform's spam detection.
- ☐ Destination URL will remain stable for the campaign lifetime — Confirm with the web team that the destination page will not be moved, renamed, or taken offline during the period the printed material will be in circulation. If the destination may change (e.g., a seasonal landing page that will be removed after the sale), the QR Code must be dynamic so the destination can be updated without reprinting.
Section C — QR Code specification checklist
The QR Code specification determines whether the code can be reliably scanned at the intended scanning distance, on the intended surface, with the intended design treatment. These specifications must be set before the QR Code is generated — changing them after generation produces a different QR Code with a different pattern.
C. QR Code specification checklist
- ☐ Error correction level is appropriate — Standard print materials without logo overlay: Level M (15% data recovery) is recommended. Logo overlay or textured surface: Level Q (25%) or H (30%). Very small size on clean surface with no logo: Level L (7%) is acceptable but not recommended. See reference section.
- ☐ Minimum print size meets the scanning distance requirement — Apply the minimum size formula: minimum QR Code side length = scanning distance ÷ 10. For a scanning distance of 30 cm, minimum size is 3 cm. For 100 cm, minimum is 10 cm. The recommended size is 1.5× the minimum. See the size reference table below.
- ☐ Quiet zone width is at least 4 modules — The quiet zone (white border around the QR Code) must be at least 4 modules wide on all four sides. A "module" is one unit of the smallest element in the QR Code. In practice: for a 3 cm × 3 cm QR Code, the quiet zone is approximately 3 mm on each side. For a 10 cm × 10 cm QR Code, approximately 10 mm. The quiet zone must be the same background colour as the QR Code's light colour (typically white).
- ☐ Colour contrast is sufficient — QR Code scanners require sufficient contrast between the dark modules and the light background. The minimum recommended contrast ratio is 4:1. Black on white provides approximately 21:1 contrast — the maximum. Dark modules must always be darker than the light background. Avoid: dark modules on a dark background, light modules on a light background, or a colour scheme where the contrast ratio drops below 4:1 in any lighting condition the QR Code will be used in.
- ☐ File format is vector (SVG or EPS) for print — QR Codes intended for print must be provided in a vector format (SVG or EPS) that scales to any print size without quality loss. A rasterised QR Code (PNG, JPEG) printed at a size larger than its pixel dimensions will produce a blurry, potentially unscannable pattern. Request the vector file from the QR Code generator if the design tool exports raster only.
- ☐ Logo overlay area does not exceed 30% of the QR Code area — If a logo is placed over the centre of the QR Code, it must not cover more than 30% of the total QR Code area (not including the quiet zone). A logo covering more than 30% of the area exceeds the error correction capacity even at Level H and will prevent reliable scanning. In practice: a logo on a 3 cm QR Code should not exceed approximately 1 cm × 1 cm.
Section D — Design and print file checklist
D. Design and print file checklist
- ☐ QR Code size in the print file matches the approved specification — Confirm the QR Code dimensions in the actual print file, not on screen at an unknown zoom level. In the design software, select the QR Code element and check its dimensions. The measurements must match or exceed the minimum size calculated in Section C.
- ☐ QR Code is surrounded by adequate white space — The quiet zone must be present and clear in the print file. Check that no text, imagery, border or background element encroaches on the quiet zone. This is a common error in designs where the QR Code is placed close to the edge of a panel or near a border element.
- ☐ QR Code is not rotated or distorted — QR Codes must be square (equal width and height) and must not be rotated at an angle. A QR Code rotated 45 degrees is significantly harder to scan. A QR Code that has been stretched horizontally or vertically (different width and height) will not scan at all.
- ☐ QR Code is exported or embedded at the correct resolution — If the print file is a PDF, confirm the QR Code is embedded as a vector, not rasterised during PDF export. If a raster format is required, the minimum resolution is 300 DPI at the actual print size. For a 3 cm QR Code at 300 DPI: minimum 354 × 354 pixels.
- ☐ A "Scan to [action]" label or instruction is included — QR Codes without a visible call to action have significantly lower scan rates than those with an instruction. A label such as "Scan to book," "Scan to find out more," or simply "Scan me →" directly below or beside the QR Code tells the user what will happen when they scan. The instruction should be printed in a font size that is readable at the intended scanning distance.
- ☐ Colour version and greyscale version both tested — If the print material uses colour, test the QR Code in the designed colour scheme. Also verify the code in greyscale (how it will appear on a greyscale copy or in poor lighting) to confirm the contrast ratio is adequate in both conditions.
Section E — Pre-print test scanning checklist
The test scan is the most important step in this checklist and the one most commonly skipped. A QR Code that scans correctly on screen at 400% zoom in the design software does not guarantee it will scan reliably when printed at 3 cm on textured paper. The test must be done at the actual print size and with actual hardware.
E. Pre-print test scanning checklist
- ☐ Print a test copy at the actual print dimensions — Print the design on a standard printer at the actual print size (not "fit to page" — set to 100% scale). If the final output will be offset printed on a different stock, print on the closest available substitute.
- ☐ Scan with an iPhone using the native camera app — Hold the phone at the intended scanning distance (the distance confirmed in Section A). Without launching any app, point the camera at the QR Code. The native camera should detect the code and display a notification banner within 1–2 seconds. If detection takes more than 3 seconds at the intended scanning distance, the code is too small or the contrast is insufficient.
- ☐ Scan with an Android device using the native camera app — Repeat the scan with an Android device at the same scanning distance. Android native camera QR scanning is available from Android 8.0 (2017) onwards. Confirm the code scans reliably on both platforms before approving the print file.
- ☐ Verify the destination that loads is correct — After scanning, confirm the URL in the browser address bar is the correct short link and that it redirects to the correct destination. Confirm the destination page is the specific page intended — not the homepage, not a 404, not an old campaign page.
- ☐ Test in reduced lighting — If the QR Code will be used in environments with variable lighting (restaurant menus, event signage, retail displays), scan the test print in a dimly lit environment. Some QR Code designs that scan well in bright light fail in low-contrast conditions due to insufficient colour contrast.
- ☐ Test on textured or curved surface if applicable — If the final material will be printed on textured paper, embossed stock, fabric, or a curved surface (packaging, cylinder), replicate the surface condition for the test scan. The surface texture absorbs part of the printed pattern, effectively reducing the contrast and data integrity of the QR Code.
- ☐ Record the test result — Document whether the test passed or failed, which devices were used, the scanning distance tested, and any issues observed. If the test failed, document the remediation (larger size, higher error correction, adjusted colour scheme) and re-test before approving the print file.
Section F — Post-launch tracking checklist
F. Post-launch tracking checklist
- ☐ Confirm scan analytics are appearing in the dashboard — Within 24–48 hours of distributing the printed material, check the link analytics dashboard to confirm scans are being recorded. Zero scans in the first 48 hours of a significant print distribution is a signal that the QR Code may not be scanning (or that the distribution has not yet reached users).
- ☐ Confirm UTM data is appearing in GA4 — Check the GA4 Acquisition → Traffic Acquisition report and filter by the campaign UTM values set on the short link. Confirm that QR Code traffic is being attributed to the correct source / medium / campaign combination and is not appearing as "direct" or "unassigned."
- ☐ Monitor destination URL health — Set a reminder to check the destination URL is still live at the halfway point of the print material's expected circulation life. A seasonal campaign page that was taken down three weeks after the print run but the materials are still in circulation is a common failure mode.
- ☐ Update destination if needed (dynamic codes only) — If the destination needs to change after print — the landing page moved, the form was replaced, the event was postponed — update the short link destination in the link management platform. If the QR Code is dynamic, the printed materials will automatically route to the new destination without any physical changes.
- ☐ Document final scan performance at campaign close — At the end of the campaign, record the total scan count, geographic distribution, device breakdown and time-of-scan data. This data informs future print placement decisions — which materials in which locations produced the most engagement.
Reference — Size requirements by scanning distance
The ISO/IEC 18004 standard for QR Codes specifies that the minimum symbol size is determined by the scanning distance — specifically, the QR Code's side length should be no less than 1/10th of the scanning distance. This assumes a modern smartphone camera. Older devices, cameras with damaged lenses, or high-density QR Code patterns (due to long URLs or high error correction) may require larger sizes.
| Use case | Typical scanning distance | Minimum size (ISO rule) | Recommended size |
|---|---|---|---|
| Business card | 20–30 cm | 2–3 cm | 2.5–3.5 cm |
| Product packaging (small) | 20–40 cm | 2–4 cm | 3–5 cm |
| Leaflet / flyer | 30–50 cm | 3–5 cm | 4–6 cm |
| A4 / A3 poster | 50–100 cm | 5–10 cm | 7–12 cm |
| Restaurant table card | 30–60 cm | 3–6 cm | 4–7 cm |
| Exhibition / trade show banner | 100–200 cm | 10–20 cm | 15–25 cm |
| Window / door display | 100–300 cm | 10–30 cm | 15–35 cm |
| Large format outdoor poster | 300–800 cm | 30–80 cm | 40–100 cm |
| Screen display / presentation | 300–1500 cm | 30–150 cm | Consider a URL instead |
Note on screen displays: QR Codes on presentation slides are frequently too small to scan from typical audience distances (5–15 metres). At 5 metres scanning distance, the minimum QR Code size is 50 cm × 50 cm — roughly half a full-screen slide. At 15 metres, the minimum is 150 cm. In most presentation contexts, a short URL typed into a browser is more practical than a QR Code.
Reference — Error correction levels
QR Codes store error correction data alongside the payload data. If part of the QR Code pattern is obscured, damaged or unreadable, the scanner can reconstruct the missing data up to the error correction capacity of the chosen level. Higher error correction capacity requires more data storage, which produces a denser pattern — more modules per unit area. A denser pattern requires a larger minimum size for reliable scanning.
| Level | Data recovery | Pattern density | Use when |
|---|---|---|---|
| L | ~7% | Lowest (simplest pattern) | Very small print sizes on clean, undamaged surfaces with no logo overlay. Rarely recommended. |
| M (recommended default) | ~15% | Moderate | Standard print materials — business cards, flyers, posters, packaging — without logo overlay and on standard paper stock. |
| Q | ~25% | Higher | Logo overlay up to approximately 20% of the QR Code area. Textured or slightly curved surfaces. Environments with variable lighting. |
| H | ~30% | Highest (densest pattern) | Logo overlay up to 30% of the QR Code area. Potentially damaged surfaces (outdoor signage, packaging subject to handling). Industrial applications. |
The practical difference between M and Q or H is that a denser pattern requires a slightly larger minimum size to scan reliably. If a QR Code with a logo overlay at Level H is being printed at the same size as a Level M code without a logo, it may scan less reliably. Increase the print size by approximately 15–20% when moving from Level M to Level H.
Reference — Quiet zone requirements
The quiet zone is the clear area that must surround the QR Code on all four sides. QR Code scanners locate the code by detecting the finder patterns (the three square corner markers) against the quiet zone boundary. Without an adequate quiet zone, the scanner cannot reliably detect where the code begins and ends.
The ISO/IEC 18004 standard specifies a minimum quiet zone of 4 modules (4 times the width of one cell in the QR Code matrix). In practice:
- For a 3 cm × 3 cm QR Code (Version 1, 21 modules across): quiet zone ≈ 4 × (3 cm ÷ 21) ≈ 0.57 cm ≈ 6 mm per side
- For a 5 cm × 5 cm QR Code: quiet zone ≈ approximately 10 mm per side
- For a 10 cm × 10 cm QR Code: quiet zone ≈ approximately 20 mm per side
The quiet zone must be the same background colour as the light modules in the QR Code — typically white. A quiet zone filled with a light grey, beige or cream colour may still function if the contrast with the QR Code's light modules is adequate, but white is the safest choice. The quiet zone must not contain any text, imagery, decorative borders or other elements.
Common QR Code failure modes
| Failure | Cause | Prevention |
|---|---|---|
| Code too small to scan at intended distance | Size not checked against scanning distance before approving print file | Section C and E of this checklist |
| Destination page is a 404 | Page moved or deleted after the code was finalised | Dynamic QR Code + Section B item "URL will remain stable" |
| Code scans to old destination after campaign change | Static QR Code used — destination not updatable | Use dynamic QR Codes for all print materials |
| No scan data in analytics | UTM parameters not set, or static QR Code with no tracking | Section B (UTM on short link) + Section F (confirm data appearing) |
| Code does not scan on some phones | Low contrast colour scheme, insufficient error correction, quiet zone encroached | Section C (spec) + Section E (multi-device test) |
| Code scans but links to wrong page | Wrong short link in QR Code, or short link destination not updated after site change | Section B (verify destination) + Section F (post-launch check) |
| Destination page is not mobile-optimised | Destination tested on desktop, not on smartphone | Section B (mobile-optimised check) |
| Blurry/pixelated QR Code in print | Raster file used for print instead of vector, or resolution too low | Section D (vector file format check) |
| Code prints correctly but cannot be scanned in venue lighting | Colour scheme has insufficient contrast in ambient light at the venue | Section E (test in reduced lighting) |
The copyable checklist — one-page version
Copy the condensed checklist below for use in design briefs, print production sign-off forms, or campaign launch documents.
TEMPLATE — copy from here
QR CODE CAMPAIGN CHECKLIST
Campaign: _____________ | Material: _____________ | Date: _____________ | Signed off by: _____________
A. Decisions
- ☐ Dynamic QR Code (recommended) / Static (justified because: _____________)
- ☐ Scanning distance confirmed: _____ cm
- ☐ Print surface confirmed: _____________
- ☐ Logo overlay: Yes / No (if yes, error correction Level Q or H required)
- ☐ Campaign attribution required: Yes / No
B. Destination URL
- ☐ Destination URL live and loading correctly
- ☐ Destination is mobile-optimised
- ☐ Page load time acceptable on 4G mobile connection
- ☐ Short link set up and redirecting correctly
- ☐ UTM parameters set on the short link destination
- ☐ Destination URL confirmed stable for campaign lifetime
C. QR Code specification
- ☐ Error correction level appropriate: L / M / Q / H
- ☐ Minimum size meets scanning distance rule (distance ÷ 10 = _____ cm minimum)
- ☐ Actual print size in file: _____ cm × _____ cm ✓ / ✗
- ☐ Quiet zone ≥ 4 modules on all sides
- ☐ Colour contrast ratio ≥ 4:1
- ☐ File format: vector (SVG/EPS) for print
D. Design and print file
- ☐ QR Code not rotated or distorted
- ☐ Quiet zone not encroached by design elements
- ☐ "Scan to [action]" label included
- ☐ Colour and greyscale versions both checked
E. Test scanning
- ☐ Test print produced at actual print size
- ☐ Scanned successfully with iPhone (native camera app) at _____ cm distance
- ☐ Scanned successfully with Android (native camera app) at _____ cm distance
- ☐ Destination verified correct after scan
- ☐ Tested in reduced lighting (if applicable)
F. Post-launch (complete after distribution)
- ☐ Scan analytics confirmed appearing in dashboard within 48h
- ☐ UTM attribution confirmed in GA4
- ☐ Destination URL health check scheduled for _____ [date]
- ☐ Final scan data documented at campaign close
For a tool that calculates the minimum QR Code size for any scanning distance, see the QR Print Size Calculator. For QR Code generation with scan analytics, create a free Cuttly account — dynamic QR Codes with per-scan analytics are available on the free plan. Registration is required; no credit card needed.
QR Code analytics — what the data tells you
A dynamic QR Code backed by a tracked short link produces scan analytics that a static QR Code cannot produce at all. Understanding what the data shows — and what its limitations are — is essential for interpreting results accurately and avoiding the mistake of drawing conclusions from numbers that do not mean what they appear to mean that go beyond a simple click count. Understanding what the data shows — and what it does not — allows you to make better decisions about print placement, design treatment, and campaign timing in future runs.
What scan analytics show
- Total scan count — The number of times the QR Code was scanned. This is the primary performance metric for a print QR Code campaign. Comparing scan counts across different materials (flyer vs poster vs business card) tells you which physical format is producing engagement.
- Scans over time — The distribution of scans by hour and day. This reveals when people are actually engaging with the printed material — often immediately after distribution, with a long tail of scans over subsequent days and weeks. The time-of-scan data is particularly valuable for physical placement: a QR Code on a restaurant table tent produces scans between 12:00 and 14:00 and 18:00 and 21:00; a QR Code on a commuter poster produces scans between 07:30 and 09:00 and 17:00 and 19:00.
- Device type — The split between iPhone and Android devices. For QR Code campaigns, virtually 100% of scans come from mobile devices — this is expected. The iPhone / Android split is useful for confirming that the destination page is optimised for both platforms.
- Geographic distribution — Where the scans occurred. For a localised print campaign, the geographic data confirms that the printed materials are reaching the intended geographic area and identifies whether scans are occurring outside the expected distribution area (which may indicate the material was shared or photographed and distributed digitally).
What scan analytics do not show
Scan analytics record a click on the short link — the moment the scanner app passes the URL to the browser. They do not record whether the destination page loaded successfully, whether the user engaged with the content, whether they converted, or whether the destination was the correct one. This is why the destination URL verification steps in Section B are essential: a 1,000-scan QR Code campaign where the destination was a 404 for the first two weeks generates scan data that is not actionable.
The scan analytics from the link platform are also separate from the session analytics in GA4. The link platform records every scan regardless of what happens after the redirect. GA4 records only sessions where the user's browser successfully loaded the page and the GA4 tracking script ran. The two numbers will not match, and that discrepancy is expected. For conversion analysis — how many scans resulted in a form submission, a purchase, or another measurable action — GA4 is the data source. For total engagement volume — how many people engaged with the printed material — the link platform scan count is the data source.
QR Codes in multi-channel campaigns
QR Codes are increasingly used as the physical-to-digital bridge in campaigns that run across both print and digital channels simultaneously. A summer sale campaign might run ads on Facebook and Google, send an email newsletter, and distribute flyers with a QR Code — all linking to the same landing page. Understanding how the QR Code channel performs relative to the digital channels requires that the QR Code link is tagged and tracked with the same rigour as the digital links.
The key data question in a multi-channel campaign is not just "how many scans did the QR Code produce?" but "what fraction of total campaign traffic came from the print channel, and how does the cost per click from print compare to the cost per click from paid digital?" This comparison requires that the QR Code traffic is correctly attributed in GA4 — which requires correct UTM parameters on the short link behind the QR Code.
If the QR Code on 5,000 flyers produces 300 scans over two weeks, and each flyer cost approximately £0.05 to print (£250 total print cost), the cost per click from the print channel is approximately £0.83 per scan. If the email newsletter produced 800 clicks at a marginal cost of near-zero (the newsletter cost is sunk regardless of click volume), the comparison shifts — but the print channel is producing a different type of engagement (people who saw a physical flyer and chose to scan it) that may convert differently from email clicks. The data to make this comparison only exists if the QR Code traffic is correctly attributed.
Dynamic QR Codes vs static QR Codes — the full comparison
| Feature | Dynamic QR Code | Static QR Code |
|---|---|---|
| Destination after printing | Can be changed at any time without reprinting | Fixed at generation — cannot be changed after printing |
| Scan analytics | Yes — total scans, time, device, location | No — the QR Code itself produces no analytics |
| Pattern density | Simpler (short URL encoded, not full destination) | Denser if destination URL is long — harder to scan at small sizes |
| Minimum print size | Smaller possible size (short URL = simpler pattern) | Larger minimum size if destination URL is long |
| Dependency | Depends on short link platform remaining active | No dependency — destination is encoded directly |
| Cost | Requires link management platform subscription | Free to generate with any QR Code tool |
| Appropriate for | All marketing print materials, packaging, signage, events | WiFi credentials, vCards, permanently fixed content with no tracking need |
The dependency on the link management platform is the only substantive argument for static QR Codes in marketing contexts — if the platform goes down or the account is cancelled, dynamic QR Codes stop working. This risk can be mitigated by choosing an established platform with a strong reliability record and by maintaining a record of every QR Code destination so that, in an extreme case, replacement static codes could be generated and reprinted. In practice, for the vast majority of marketing applications, the benefits of dynamic codes — updatable destination, scan analytics, simpler pattern — outweigh this dependency risk.
Print specifications and QR Code performance
The physical print specifications of the material carrying the QR Code affect scan performance in ways that are often overlooked during the digital design phase. A QR Code that tests perfectly on a desktop monitor or a home printer may perform differently when printed professionally on a specific substrate at a specific resolution.
Paper stock and surface finish
Gloss-laminated surfaces reflect light and can create glare that affects scanner performance in some lighting conditions — particularly when the QR Code is scanned from an acute angle or under strong directional lighting. Matte lamination and uncoated stocks generally produce more consistent scan performance across lighting conditions because they do not create specular reflections.
Textured stocks — embossed paper, recycled paper with visible texture, fabric — absorb part of the printed ink into the surface texture rather than sitting cleanly on the surface. This effectively reduces the print resolution and the contrast of the QR Code. On heavily textured stocks, increase the error correction level to Q or H and increase the minimum print size by 20–25% to compensate.
Print resolution
QR Codes require sharp edges between the dark and light modules to scan reliably. Low print resolution produces soft, graduated edges that scanner algorithms struggle to interpret as a clean binary pattern. The minimum recommended print resolution for a QR Code is 300 DPI at the actual print size. For very small QR Codes (under 2 cm), 600 DPI is recommended. Commercial offset printing typically operates at 300–600 DPI; digital printing varies. Confirm the print resolution with the printer before approving a job where the QR Code is small or the stock is absorbent.
Ink density and colour matching
If the QR Code is printed in a brand colour rather than black on white, confirm that the printed ink density produces sufficient contrast against the background at the specified print resolution. Spot colour printing can produce very consistent results; CMYK process printing of mid-range colours (dark blue, dark green, dark purple) can vary between print runs, particularly on absorbent stocks. If the QR Code is to be printed in a brand colour, request a physical proof and scan the proof before approving the full print run.
Outdoor and weathered materials
QR Codes on outdoor signage, window stickers, vehicle wraps, and other materials exposed to weathering face additional challenges: UV fading reduces contrast over time, moisture can cause delamination or substrate warping, and physical damage (scratches, dirt) affects the module pattern. For outdoor applications: use the highest feasible error correction level (Q or H), print at the largest feasible size (well above the minimum), use UV-stable inks and UV-resistant laminates, and monitor the physical condition of the QR Code periodically. A dynamic QR Code allows you to retire a degraded physical installation and redirect traffic to a new installation without changing any links.
Frequently Asked Questions
What is the minimum size for a QR Code?
The ISO/IEC 18004 standard establishes the minimum size as approximately 1/10th of the scanning distance. For a QR Code scanned at 30 cm, the minimum is 3 cm × 3 cm. For a poster scanned at 100 cm, the minimum is 10 cm × 10 cm. These are minimums for modern smartphone cameras — the recommended size is 1.5× the minimum to provide margin for variable print quality and lighting conditions.
Should I use a dynamic or static QR Code?
Dynamic QR Codes are recommended for all printed materials. A dynamic code stores a short URL that redirects to the destination — the destination can be updated after printing without reprinting the physical material. A static code stores the destination URL directly; if the destination changes, the code must be reprinted. Dynamic QR Codes also provide scan analytics. Static codes are only appropriate when the destination is permanently fixed and analytics are not needed.
What error correction level should I use?
Level M (15% data recovery) is the recommended default for most print use cases — it provides meaningful error recovery without making the pattern significantly denser. Use Level Q or H if a logo is placed over the centre of the QR Code, or if the material will be printed on a textured, curved or potentially damaged surface. Level L is acceptable only for very small sizes on clean surfaces where pattern density must be minimised.
What is a quiet zone?
The quiet zone is the white border that must surround the QR Code on all four sides. The ISO/IEC 18004 standard specifies a minimum of 4 modules wide. Without an adequate quiet zone, scanners cannot locate the code edges and the scan will fail. The quiet zone must be the same background colour as the QR Code's light modules (typically white) and must not contain any text, imagery or decorative elements.
How do I test a QR Code before printing?
Print a test copy at the actual print dimensions (not screen size) and scan it with at least two different smartphones — one iPhone and one Android — using the native camera app at the intended scanning distance. Verify the destination page loads correctly on a mobile browser. If the code fails to scan within 2 seconds at the intended distance, the size is too small or the contrast is insufficient. Correct the issue and re-test before approving the print file.
- This Template
- QR Code Checklist →
- Other Templates
- All Templates
- UTM Naming Convention
- Link Management SOP
- Free Tools
- QR Print Size Calculator →
- URL Length Checker →
- UTM Builder →
- Related Guides
- QR Code Best Practices 2026
- What Is a Dynamic QR Code?
- QR Codes and URL Shorteners
- Encyclopedia
- QR Codes
- Dynamic QR Codes
- Error Correction
- Cuttly Tools
- QR Code Generator →
- URL Shortener Tool →
- Get Started
- Create Free Account
- Plans & Pricing
URL Shortener
Cuttly simplifies link management by offering a user-friendly URL shortener that includes branded short links. Boost your brand’s growth with short, memorable, and engaging links, while seamlessly managing and tracking your links using Cuttly's versatile platform. Generate branded short links, create customizable QR codes, build link-in-bio pages, and run interactive surveys—all in one place.
Cuttly - Consistently Rated
Among Top URL Shorteners
Cuttly isn’t just another URL shortener. Our platform is trusted and recognized by top industry players like G2 and SaaSworthy. We're proud to be consistently rated as a High Performer in URL Shortening and Link Management, ensuring that our users get reliable, innovative, and high-performing tools.