You printed QR codes on your menus, packaging, or signage. People are scanning them. But how many? From where? On what device? Without a QR code scan tracker, you have no way to know if your print campaign is driving real results.
This guide walks you through exactly how to track QR code scans — how the technology works, the step-by-step setup, what every data field means, how QR tracking compares to Google Analytics and UTM-only approaches, and what to actually do with the data once it arrives.
Key takeaways
- Only dynamic QR codes can be tracked — the scan is logged by a redirect server before the visitor reaches your page.
- Each scan records timestamp, city-level location, device, OS, browser, and new-vs-returning status. No personal identity.
- Server-side scan logging catches engagement that Google Analytics misses (slow connections, pre-load bounces, cookie-consent blocks).
- Setup takes about two minutes and the free tier includes full analytics.
- The data pays off through comparison: across placements, time periods, and campaigns.
Nothing here requires technical skill — if you can paste a URL, you can set up scan tracking. The concepts matter more than the tools: once you understand the redirect architecture, every capability and limitation of QR tracking follows logically from it.
Can you track QR code scans?
Yes — if the code is dynamic. A dynamic QR code encodes a short redirect URL, and the server behind it logs every scan (time, location, device, browser) before forwarding the visitor to the destination. Static QR codes cannot be tracked, because they encode the destination directly with no server in between to observe the scan.
This distinction is absolute: no tool, app, or workaround can add tracking to an existing static code. If tracking matters, the decision has to be made before printing.
Why tracking QR code scans matters
A QR code is a physical-to-digital bridge. When someone scans it, they have made an active decision to engage with your content. That action is far more intentional than a casual website visit — and it is valuable data. Without tracking, you cannot answer the most basic questions:
- Is this campaign driving engagement or not?
- Which location, table, or product placement gets the most scans?
- What time of day does your audience engage?
- Are your scanners on mobile? Android or iOS?
With scan tracking, those questions have concrete answers — and those answers improve your next campaign, your product layout, your menu design, and your media spend.
How QR code scan tracking works
A trackable QR code encodes a short redirect URL (like qrpulse.co/r/abc123) instead of your real destination. When someone scans, their device connects to the QRPulse redirect server, which logs the scan event, then forwards them to your destination URL — all in under 50 ms. The scanner notices nothing; the redirect is invisible in practice.
The logged data includes:
- Timestamp — exact date and time of the scan
- Location — country, city, and region (derived from IP)
- Device — mobile, tablet, or desktop; iOS or Android; device model
- Browser — Chrome, Safari, Firefox, etc.
- OS version — useful for mobile compatibility decisions
- First-time vs repeat — whether the scanner has scanned this code before
Two things it does not include: personal identity and precise GPS position. Location is city-level, derived from the network — the same anonymous, aggregate category of data as standard website analytics. No names, no phone numbers, no consent-popup-triggering personal data.
QR scan tracking vs Google Analytics vs UTM links
These three get conflated constantly, but they measure different moments:
| Method | What it measures | What it misses |
|---|---|---|
| QR scan tracker | The scan itself, server-side, instantly | What happens on your site afterwards |
| Google Analytics | Sessions after the page loads | Scans on slow connections, pre-load bounces, users blocked by consent banners |
| UTM parameters alone | Attribution label on GA sessions | Everything GA misses, plus nothing without GA |
The right answer is both. The QR tracker counts true engagement at the moment of scan. GA (fed by UTM parameters on the destination URL) tells you what scanners did next. The gap between the two numbers is itself diagnostic — a big drop-off between scans and sessions usually means your landing page is too slow on mobile networks.
Step-by-step: how to track QR code scans with QRPulse
The whole setup takes about two minutes:
- Create a free QRPulse account. Go to qrpulse.co and sign up — no credit card required. The free plan gives you 2 dynamic QR codes with full scan tracking.
- Create a new QR code. In your dashboard, click “New QR Code.” Enter a name (e.g. “Table Card — Bandra Location”) and the destination URL you want it to point to. Add UTM parameters to the destination if you also want GA attribution.
- Download and print. Download your QR code as a high-resolution PNG or SVG. Print it on whatever physical material you need — menus, packaging, signage, business cards, or event programmes. (Follow the size and contrast best practices — a code that doesn't scan produces no data.)
- Monitor your dashboard. Every scan appears in your QRPulse dashboard in real time. You can see live scan counts, a world map of locations, device breakdown charts, and an hourly heatmap showing when scans peak.
- Export to CSV (Pro). Pro users can export the full raw scan log — every row contains all the data fields above. Use it in Excel, Google Sheets, or your BI tool of choice.
Understanding each metric (and what to do about it)
Total scans vs unique scans
Total counts every scan event; unique counts distinct scanners. A high unique count means reach — many different people engaged. A high repeat ratio means the same people coming back. For a menu, that's healthy — guests re-checking during a meal. For a flyer, it's a red flag — usually you testing your own code.
The hourly heatmap
Shows exactly when your audience scans. Restaurants see meal-time ridges; retail sees weekend blocks; packaging sees evening unboxing peaks. Schedule promotions, staffing, and content updates around the real curve, not the assumed one.
Location map
For distributed campaigns, this validates that engagement happened where you paid for distribution. For packaging, it maps your actual buyers — often surprising for brands selling through marketplaces who never see buyer geography otherwise.
Device and OS breakdown
Directly actionable for your landing page: if 70% of scanners are on iOS Safari, that's your primary test target. A high proportion of older Android versions argues for a lighter, faster destination page.
What to do with your scan data
Identify high-performing placements. If you have QR codes in multiple locations (or on multiple products), compare their scan counts. The highest-performing placement reveals where your audience is most engaged — and where to invest next.
Optimise for your device split. If 85% of your scanners are on iOS and your landing page is not mobile-optimised, you are leaving conversions on the table.
Find your peak hours. The hourly heatmap shows exactly when your audience scans. If you run a restaurant and most scans happen between 12:00–13:00, schedule any menu promotions to appear at that time.
Measure campaign lift. Run a print campaign in January, track weekly scan counts, then compare to your baseline. That is your campaign ROI — something you simply cannot calculate with static QR codes.
A/B test the physical world. Two flyer designs, two codes, same destination — compare scan rates and let the print creative compete like ad variants. Full method in our print marketing ROI guide.
Privacy: what scan tracking does and doesn't collect
Scan tracking sits in the same privacy category as ordinary web server logs — not ad-tech surveillance. The scanner is never identified: no name, no phone number, no email, no precise GPS. Location is inferred from the network at city level, and the "repeat scanner" signal is device-level, not person-level. There are no cross-site profiles and no data brokers involved.
Practically, this means the scan log itself doesn't trigger cookie-consent requirements, keeps working as browsers phase out third-party tracking, and is safe to use in privacy-strict markets. Whatever compliance obligations your destination page carries (its own analytics, forms, cookies) are unchanged — the QR layer just counts the bridge crossing.
Common tracking mistakes
- Printing static codes, then wanting data. Tracking cannot be retrofitted — decide before the print run.
- One code across every placement. Aggregated data hides everything useful. One code per placement, always.
- Polluting data with your own tests. Scan your codes before launch, then note the date so early self-scans don't read as campaign performance.
- Relying on GA alone. Slow mobile connections mean GA undercounts real engagement — sometimes by 20–30% for print audiences.
- Collecting data, never reviewing it. A five-minute weekly review is the minimum viable habit.
Quick-reference glossary
- Dynamic QR code — encodes a short redirect URL; destination editable, scans trackable.
- Static QR code — destination baked into the pattern; permanent, untrackable.
- Scan event — one logged request to the redirect server: timestamp, location, device, browser.
- Unique scan — first scan from a given device; repeat scans are subsequent ones.
- Scan rate — scans divided by pieces distributed; the print equivalent of CTR.
- UTM parameters — tags appended to the destination URL so web analytics attribute post-scan sessions.
- Fallback URL — where an expired or paused code sends scanners instead of a dead end.
Ready to start tracking? Create a free QRPulse account and have your first trackable QR code live in under 2 minutes.
Frequently asked questions
Can you track how many times a QR code is scanned?+
Yes — with a dynamic QR code. The code points to a short redirect URL, and the server logs every scan before forwarding the visitor, capturing the time, location, device, and browser. Static QR codes cannot be tracked because they encode the destination directly with no server in between.
How do I track QR code scans for free?+
Create a free QRPulse account, generate a dynamic QR code, and every scan appears in your dashboard in real time. The free plan includes 2 dynamic QR codes with location, device, and time data — no credit card required.
What data can you see when someone scans your QR code?+
A tracked QR code logs the scan timestamp, country and city (from IP), device type (mobile, desktop, tablet), device model, operating system, browser, and whether the scanner is new or returning. It does not reveal personal identity — the data is anonymous and aggregate.
Does Google Analytics track QR code scans?+
Only indirectly. You can append UTM parameters to the URL inside your QR code, and Google Analytics will attribute the resulting website sessions to that campaign. But GA only sees visitors after the page loads — a dedicated QR tracker records the scan itself, including scans on slow connections that never finish loading the page.
Can I add tracking to a QR code that is already printed?+
Only if it was created as a dynamic QR code — then the destination and tracking live on the server and keep working. If the printed code is static, tracking cannot be added retroactively; you would need to print a new dynamic code.
Do QR code trackers show who scanned the code?+
No. Scan data is anonymous: city-level location from the network, device class, browser, and timestamp. There is no name, phone number, email, or precise GPS position — the same category of data as ordinary website analytics.
Why does my QR tracker show more scans than Google Analytics shows sessions?+
Because the tracker logs the scan server-side before your page loads, while GA requires the page (and its script) to fully load. Slow mobile connections, pre-load bounces, and consent-banner blocks all create scans without GA sessions. A large gap usually means your landing page is too slow on mobile networks.
Continue reading
How Event Organisers Use Dynamic QR Codes (With Real Examples)
From badges to session signage to post-event resource pages, dynamic QR codes let event organisers update information mid-event and track every attendee interaction.
Case Study: How a 3-Location Restaurant Cut Menu Reprint Costs by 100%
A Mumbai restaurant group switched from static to dynamic QR codes and hasn't reprinted a menu insert since. Here's what their scan data revealed.
How to Drive Instagram Followers With a QR Code on Your Packaging
A QR code printed on your product box can be a powerful growth channel for your Instagram following — if you track and optimise it correctly.
Enjoying these guides?
Add QRPulse as a preferred source on Google and our guides will be highlighted in your search results and AI Overviews.
Set QRPulse as a preferred sourceOpens Google settings — search for “qrpulse” and tick the checkbox. Takes 10 seconds.
