What QR Scan Analytics Can and Can't Tell You
A scan is a request, not a person
When someone points a phone camera at a dynamic QR code, the phone opens a short redirect link. Your dashboard logs that request, then forwards the phone to the real destination. Everything in your analytics is built from that single moment: a timestamp, an IP address, and whatever the phone's browser announces about itself. That is the entire raw material. Hold onto that and most arguments about QR data get very short.
A static QR code has no middle step at all. The destination is baked into the pattern itself, the phone goes straight there, and nothing counts anything. Static codes are free, permanent and unmeasurable. They are also uneditable: once 5,000 flyers are printed with a static code pointing at a page you later delete, those flyers are dead paper. Dynamic codes give you the redirect, and the redirect is what produces both the analytics and the ability to change the destination later. That flexibility depends on an active plan; if the subscription lapses, the redirect stops resolving and printed codes stop working. That is a real commitment, and it should factor into which codes you print on things that live for years.
What scan analytics genuinely tell you
Volume over time
Counts per hour, day and week are the most trustworthy number you get. If you put 300 flyers in doorways on Saturday morning and see 41 scans by Sunday night, that is real activity that would otherwise be invisible. Timing patterns are especially useful: a cafe table tent that scans between 8am and 10am is being read by the morning rush, not the lunch crowd, and that tells you which staff shift to brief.
Which placement earned attention
This only works if you made one code per placement. Same destination, separate codes: one for the flyer, one for the window, one for the van, one for the invoice. Then a dashboard comparison is meaningful. If you print the identical code on all four, you have a single blended number and no way to split it afterwards. This is the single most common and most expensive setup mistake, and it cannot be fixed retroactively.
Device mix and coarse location
Operating system split (iOS versus Android) is reasonably accurate and occasionally decisive, for example if your landing page breaks on older Android browsers. Location is derived from the IP address and is approximate: usually right at the country level, often right at the region level, frequently wrong at the city level. Mobile carriers route traffic through regional gateways, so a scan in a small town can be logged 60 kilometres away at the carrier's hub. Treat city data as a loose hint, never as proof of where a poster was standing.
What scan analytics cannot tell you
- Who scanned. No name, no email, no phone number. If you want identity, you have to ask for it on the landing page, and most people will not give it.
- Whether a scan is one person or one phone twice. Some camera apps and messaging previews fetch the URL before the human taps anything. Corporate email and chat scanners follow links automatically. Your raw count includes some of this.
- Whether the person read anything. A scan proves the camera resolved the code. It does not prove they stayed on the page for more than two seconds.
- Where the scan physically happened. See above: IP geolocation is regional at best, and VPNs and corporate networks distort it further.
- Whether it led to a sale. The redirect log ends at the redirect. Revenue attribution requires your website analytics or checkout to pick up the thread, usually via UTM parameters on the destination URL.
- How many people saw the code and ignored it. This is the number that actually matters for print, and it is permanently unavailable. Scans are your numerator with no denominator.
Reading your dashboard honestly, in five minutes
- Set a baseline before you judge anything. Ignore the benchmark percentages floating around the internet; nobody knows your street, your audience or your offer. Your first two weeks are the baseline. Everything after is measured against that, not against a stranger's blog post.
- Look at unique scans first, total scans second. Totals flatter you. Uniques are closer to the number of humans involved.
- Cut the first 48 hours from campaign comparisons. The launch spike includes you, your team, your partner and three curious colleagues testing the code. It is not demand.
- Compare like placements only. A code on a product package is scanned by someone who already bought. A code on a flyer is scanned by a stranger. Their scan rates are not on the same scale and never will be.
- Write down what you changed and when. A dated note beats any dashboard feature. Without it, next quarter you will not remember whether the spike was the new poster or the local radio mention.
Mistakes that quietly corrupt the numbers
- A code too small to scan reliably. Rough rule: a code scans at about ten times its own width. A 2.5 cm (1 in) code wants a phone held around 25 cm away, which is fine on a flyer or business card and useless on a shop window. A vehicle decal read from 3 m away needs roughly 30 cm of code. Low scan counts often mean bad physics, not bad copy.
- No quiet zone. Leave clear space around the code equal to four modules (four of the smallest squares). Designers routinely crop it, and scan reliability drops on exactly the older phones you cannot see in your data because they never got through.
- No reason to scan. "Scan me" is not an offer. "Scan for the September menu" or "Scan for the floor plan" is. Placement text moves scan counts far more than code design does.
- Wrong height. On a storefront window, put the code at roughly 140 to 160 cm from the ground, so an adult scans it without crouching or reaching.
- Reusing one code across an entire campaign. Worth repeating. One code per placement, always.
- Judging a slow channel too early. Codes on long-lived assets, such as a property sign or a brochure that sits in a folder, accumulate scans for months. Give them a full quarter before you call them a failure.
The honest summary
Scan analytics are a good attendance sheet and a poor mind reader. They will tell you that something happened, roughly when, roughly where, and on what kind of phone. They will not tell you why, who, or whether it was worth the print run. Used for what they are, they are still the only feedback loop print marketing has ever had. Used as proof of intent or revenue, they will lead you confidently in the wrong direction.
Make yours
Static QR codes are free on the homepage and never expire, which suits anything where the destination will not change and you do not need numbers. If you want per-placement tracking, editable destinations and the ability to fix a broken link after printing, that is what dynamic codes on a paid plan do. Pick based on whether the destination might change and whether you will actually act on the data.
Ready to make your own QR code?
Create a free QR code