How to Track QR Code Scans for Free (Set Up in Two Minutes)
How to track QR code scans for free: set it up in two minutes, see locations, devices and scan times, and avoid the trial traps that kill printed codes.

To track QR code scans you need exactly two things: a dynamic QR code (one that points to a short redirect link instead of straight at your destination) and a tool that counts each time that link is opened. Both are available for free, the setup takes about two minutes, and you'll see scan counts, locations, devices, and scan times for every code you print.
The catch is that this decision has to happen before printing. Here's the whole picture, including the parts most tools don't mention.
A plain (static) QR code encodes your URL directly into the pattern. When someone scans it, their phone goes straight to your website — nothing sits in the middle, so nothing gets counted. It works forever, but it's mute, and the destination is frozen the moment you print it.
A dynamic code encodes a short link instead — something like metricqr.com/c/spring-menu. The scan passes through that link for a few milliseconds before landing on your destination, and that pass-through is where the scan gets counted, timestamped, and geolocated. It's also what makes the destination editable after printing: the code on paper never changes, but where it points can.
If you take one thing from this article: generate the trackable version before the print run. A static code on 5,000 flyers can't be upgraded afterwards.
From a free trackable code you get four kinds of data:
- Scan counts over time — daily trends, campaign spikes, decay after launch
- Location — country, region, and city for each scan
- Device and browser — iOS vs. Android, which matters if your destination behaves differently on each
- Time of day — when your audience actually scans, not when you assume they do
What it can't give you: anyone's identity, exact GPS positions (location comes from IP geolocation, which is city-level — we covered how QR location tracking really works in detail), or reliable "unique visitor" counts, since the same person on WiFi and mobile data looks like two scans.
One insider detail that trips people up: ignore referrer or "traffic source" reports for QR codes. Camera apps send no referrer header, so virtually every scan shows up as "direct." That's not broken tracking — it's how phones work. Judge your codes by scan counts and locations, not by source columns borrowed from web analytics.
- Create a trackable code. Open the free QR code generator, pick your content type, and make sure it's set to Trackable (on MetricQR that's the default for URL codes).
- Enter the destination and style it. Colors and a logo are fine — keep the contrast high and test after styling.
- Download the SVG for print work (it scales to any size without blurring) or PNG for screens.
- Do a test scan, then zero the counter. Scan it yourself, confirm the redirect works and the scan shows in your analytics dashboard — then use reset scans before the campaign goes live so your test scans don't pollute week-one numbers.
That's the whole setup. Everything after this is reading the data.
Free QR tracking is real, but the industry has a trap built into it: tools that let you create a code free, then disable it when the trial ends — after it's printed on your packaging. Before committing ink to paper, check:
- Does the code expire? If the answer involves the words "trial" or "upgrade," walk away.
- Is there a scan cap? Some free tiers stop counting — or stop redirecting — after 50–100 scans.
- Is there a watermark on the code or an interstitial ad page after scanning?
- Can you export the data if you leave?
On MetricQR the answers are: never expires, no caps, no watermark, and CSV/PDF export exists (export is a Pro feature; the tracking itself is free forever). Whatever tool you use, get those four answers in writing before the print run.
You don't need a paid plan for basic GA attribution — put the UTM parameters directly into the destination URL when you create the code:
https://yoursite.com/menu?utm_source=qr&utm_medium=print&utm_campaign=spring-flyer
Now GA shows QR traffic alongside your other channels. Keep expectations straight, though: GA only records people who load your page and clear the consent banner, while the redirect counter records every scan. The gap between the two numbers is normal — use the scan count as the true reach and GA for the behavior after landing.
Three plays that cover most real campaigns:
- Compare placements. Create one code per location — window poster vs. counter card vs. flyer — and let the scan counts tell you which placement earns its space. This is the cheapest A/B test in print marketing.
- Time your pushes. If scans spike weekday lunchtimes, that's when your linked offer, staffing, or social posts should be live.
- Spot regional demand. City-level data across a few weeks shows where interest actually is — useful before committing budget to a second location or a regional ad spend.
The pattern in all three: the QR code isn't the campaign, it's the measurement layer. Once scans are being counted, every piece of paper you print becomes something you can compare against every other piece.
Ready to see your own numbers? Create a trackable QR code free — no scan caps, no expiry, no card — and watch the first scans come in live.