Trackable QR codes for marketers: design, scanning, and the data they actually return

Static vs dynamic QR, the design rules that keep scan rates high, the ones that crater them, and how to read scan data without flattering yourself.

Trakl Team5 min read
On this page+

A QR code is a printed redirect with extra steps. A camera reads the encoded URL, the browser opens it, and the visitor lands wherever the URL points. The interesting marketing question is whether you encoded the destination directly (static) or pointed the camera at a redirector you control (dynamic). The first is simpler. The second is the only one a marketer should use.

This is the long version of how to design, deploy, and read trackable QR codes for marketing campaigns. It covers the static-vs-dynamic question, the print-design rules that keep scan rates from cratering, and the scan data that actually tells you something useful.

Static vs dynamic QR codes

The difference is mechanical:

  • Static QR. The destination URL is encoded directly into the pattern of the printed code. Scan it, browser opens that URL. Free to generate. Cannot be tracked. Cannot be edited after print without reprinting.
  • Dynamic QR. The encoded URL points at a redirector you control, like trakl.app/q2. The redirector records the scan and forwards the visitor to the real destination. The real destination can be changed at any time without reprinting the code.

For marketing, dynamic is the only sensible choice. The reasons:

  1. 01

    Scan tracking.

    Without a redirector, you have no idea how many people scanned the code, where, or when. Static QRs are not tied to any analytics surface. Dynamic QRs give you scan count, country (from the visitor's IP), device class (mobile vs desktop, iOS vs Android), and time of day, all logged at the redirector.
  2. 02

    Repoint after print.

    A campaign launches with the QR pointing at /q2-launch. Six weeks in, the campaign pivots and the landing page moves to /q2-relaunch. With a dynamic QR you change the redirector's destination. The printed code keeps working. With a static QR, every printed asset is now broken.
  3. 03

    UTM parameters.

    A printed code that encodes a destination URL with UTMs gets you halfway. A dynamic redirector lets you swap UTMs cleanly, A/B test landing pages with the same physical asset, and respond when GA4 attribution drifts.

The piece on dynamic vs static QR codes covers the edge cases (offline-only kiosks, museum exhibits where reliability beats analytics, etc.) where static is still defensible.

The design rules that keep scan rates high

Three things kill scan rates: contrast, sizing, and decoration.

Contrast. QR readers need at least roughly 50 percent contrast ratio between the dark modules and the light background. Black on white is the safe default. Branded color codes work as long as the dark color is dark enough; navy on cream usually scans, mid-grey on light grey usually does not. Always test on three devices before printing 50,000 of anything.

Sizing. The rule of thumb is 10:1, the QR should be 1/10 the maximum scanning distance. A coaster scanned from 30cm needs the QR to be roughly 3cm. A subway poster scanned from 4 meters needs roughly 40cm. Below 2cm at high print resolution, scan reliability drops fast on older phones.

Decoration. A logo in the center works because of the QR specification's error-correction layer. The error-correction level you choose determines how much of the code's surface can be obscured before it stops scanning. Four levels exist: L (7 percent), M (15 percent), Q (25 percent), and H (30 percent). For a logo overlay, use level Q or H. For a clean code with no overlay, level L is fine and gives you the densest data capacity (smaller, simpler patterns).

The piece on branded QR code design rules covers the longer list, including the corner-shape options, the gradient warnings, and the safe areas around the three position-detection patterns at the corners.

What scan data actually tells you

A dynamic QR code logs, at minimum:

  • Scan count. Total scans, scans per day, scans per hour.
  • Approximate location. Country and region from the visitor IP, since the device itself does not transmit GPS to the redirector.
  • Device class. Mobile vs desktop, iOS vs Android, sometimes the specific OS version.
  • Referrer. Almost always blank for a QR scan, since the visitor opens the URL directly from a camera rather than from another web page.
  • Time of day. Useful for retail, event, and out-of-home campaigns.

Two things scan data does not give you:

  1. Who. A scan is anonymous unless you append a tagged identifier and tie it back to a CRM record on landing. The QR scan event itself does not know who the person is.
  2. Why. A scan is a click. The conversion happens further down the funnel (sign-up rate, purchase rate, contact-form completion), and that is what determines whether the campaign worked. Scan count without funnel completion is vanity.

Treat the scan count as the top of the funnel. The interesting number is what fraction of scanners completed the action on the landing page. Anything that converts above 4 to 6 percent for a cold-channel QR campaign is solid. Below 1 percent, either the landing page is broken or the placement is wrong for the audience.

UTMs on a QR scan

The destination URL behind the QR redirector should carry UTMs the same way any other tagged URL would. We recommend the following defaults for QR campaigns:

utm_source=qr
utm_medium=offline (or "qr-print", "qr-screen")
utm_campaign=<the actual campaign>
utm_content=<the placement>

utm_source=qr flags the channel. utm_medium=offline puts it in GA4's Offline channel grouping, which is useful for separating physical-world conversions from web-driven ones. utm_content=<placement> lets you A/B different placements (back-of-coaster vs front-of-coaster, top-of-poster vs bottom) without needing different QR codes.

The longer piece on trackable QR for print marketing covers the placement and UTM combinations for events, retail, packaging, and out-of-home.

When to use a QR code at all

Three use cases earn the QR. The rest do not:

  1. Bridging physical-to-digital where the visitor is not already on a phone. Posters, packaging, signage, business cards, conference badges. The QR replaces a typed URL.
  2. Printed materials that need to update. A menu that changes weekly, an event schedule that pivots, a product spec sheet that gets revised. Dynamic QR lets the printed asset stay current.
  3. Out-of-home creative where attribution matters. Subway posters, transit ads, billboards. A QR scan is the only way to attribute a digital visit to a physical placement.

If your visitor is already on a website, a QR is worse than a hyperlink. If the destination URL fits on the printed surface (yourbrand.com/q2), a typed URL is competitive on phones running iOS 14+ and Android 11+, since visual URL recognition is a real feature. A QR earns its spot when the URL is too long, the surface is too small, or the audience is on a phone they are already holding.

Where Trakl fits

Trakl generates dynamic, branded, trackable QR codes from any short link. Pick the size, color, error-correction level, and logo position. The QR scans go to the same per-link analytics dashboard as web clicks, with country, device, and time-of-day breakdowns. Free for the first 50 links; QR design and tracking included on every paid tier.

Field tool

Free UTM Builder

Build the tagged URL the QR will redirect to, with source, medium, and campaign already lowercased. No signup, no account.

Open the UTM Builder  →

Where to go from here

If your team is starting from zero on QR: pick a dynamic provider, build the destination URL with UTMs, generate the code, run the 10:1 size rule on the print piece, test on three devices, ship.

If your team already runs QR campaigns and the data is murky: read why your UTM data is messy for the cross-channel attribution patterns. The QR-specific failure modes are usually a missing utm_medium=offline setting, an unowned redirector domain that got blocked, or scan-time of day data that was never reviewed against the campaign brief.

Frequently filed

Common questions.

Q.01What is a trackable QR code?+

A trackable QR code is a code that points at a redirector instead of the final destination. The redirector records each scan (timestamp, country, device) before forwarding the visitor to the real URL. This is also called a dynamic QR. Static QR codes encode the destination URL directly and cannot be tracked or edited after printing.

Q.02Can a printed QR code be edited after the print run?+

Only if the printed code is a dynamic QR pointing at your redirector. A dynamic QR has a fixed encoded URL (the redirector address) and a swappable destination behind it. Static QR codes encode the destination directly and cannot be re-pointed without reprinting.

Q.03How big should a printed QR code be?+

A reliable rule is the 10:1 ratio. The QR code should be 1/10 the distance from which it will be scanned. A poster scanned from 2 meters needs a QR roughly 20cm wide. Smaller works at higher print resolutions but margins for error get thin. For business cards, 2cm minimum.

Q.04Do colored or branded QR codes scan?+

Yes, with conditions. Maintain at least 50 percent contrast between the dark and light modules. Avoid inverting the colors (light modules on dark background) on older Android cameras, which still ship with QR readers that require dark-on-light. Logo overlays of up to 25 percent of the code's surface work because of the error-correction layer; beyond that, scans drop off quickly.

TT

By the byline

Trakl Team

Editorial team

We build Trakl, a link shortener and UTM tracker for marketing teams. We write here from the cleanup work, support tickets, and campaign reviews that fill the rest of our week. Specifics over slogans, and we cite the source.

Photo: Logan Voss on Unsplash