Why a static QR code can't be tracked
A static QR code stores its content directly – for example the full address of your web page. When someone scans it, the phone goes straight to that address. Nothing in between knows that a scan happened, so there is nothing to count.
The only trace a static code leaves is on the destination itself. If the link points to your own website, your web analytics can show the visit – but only if you tagged the link, and only for people whose page actually loaded.
To count scans reliably, you need a code that passes through a service you control. That is what a dynamic QR code does. Our guide to static vs dynamic QR codes covers the other differences.
How QR code scan tracking works
Behind every tracked scan is a quick redirect that takes a fraction of a second. The visitor barely notices it.
-
The code holds a short link
Instead of your final page, the dynamic QR code contains a short link that belongs to the tracking service or to your own domain.
-
The phone opens the short link
When someone scans the code and taps the preview, the phone's browser requests that short link, just like any other web address.
-
The service records the scan
The server logs the moment of the scan along with technical details the browser sends anyway, such as the operating system and a network address used to estimate location.
-
The visitor is forwarded
The server then redirects the browser to your destination. Because the redirect is under your control, you can change the destination later without changing the printed code.
What you can measure with QR code tracking
Scan data answers four practical questions: when, on what, where and which code.
In Qdestera, QR code analytics show scans over time (daily, by weekday and monthly), operating systems, countries and cities, top QR codes and links, recent scans and a 30-day chart for each code. The figures count every scan, so one person scanning twice counts as two scans – read them as total scans, not unique people.
When people scan
Scans per day, per weekday and per month show whether a campaign is picking up or fading, and which days drive the most interest. A poster that gets most scans at weekends tells you something about your audience.
Which operating systems they use
The split between iOS and Android helps you decide which app store to promote, or which phone to test your landing page on first.
Where they are, approximately
Country and city are estimated from the network address. That is accurate enough to compare regions or spot scans far from where the code hangs, but it is not an exact position.
Which codes perform best
When each placement has its own code, a ranking of top codes shows which window, flyer or product label earns the most scans.
What scan data can't tell you
A scan shows interest, not results. It doesn't reveal who scanned, whether they read the page or whether they bought something. For that, you need data from the destination itself – which is where UTM parameters come in.
Combine scans with UTM parameters and Google Analytics
Scan tracking ends at the redirect. To see what visitors do on your website, tag the destination link with UTM parameters.
What UTM parameters are
UTMs are short tags added to the end of a URL. Web analytics tools such as Google Analytics read them and attribute the visit to a source, medium and campaign – no extra code needed on your site.
A typical QR link
yourbrand.com/offer?utm_source=flyer&utm_medium=qr&utm_campaign=autumn-sale&utm_content=city-centre. Use lower case consistently, because analytics tools treat “QR” and “qr” as different values. The free UTM builder assembles the link without typos.
What you see on your site
In your analytics reports, the campaign shows up with its sessions, engagement and any conversions you have set up, such as sign-ups or purchases. That tells you not only how many people scanned, but how many did what you hoped.
Why the numbers differ
Scan counts are usually higher than analytics sessions. Some visitors close the page before it loads, block analytics cookies or scan twice. Compare trends between the two, not exact totals.
How to measure an offline campaign with QR codes
Posters, flyers, packaging and shop windows used to be hard to measure. With a little planning, each one reports back.
-
Decide what success means
Pick one goal before printing: visits, sign-ups, coupon redemptions or orders. Otherwise you will end up with numbers but no answer.
-
Give every placement its own code
One code for the window, one for the counter, one for the flyer. Separate dynamic codes are what make a fair comparison possible.
-
Tag each destination
Use the same campaign name for all codes and a different utm_content value per placement, so both your scan data and web analytics line up.
-
Compare, then adjust
After a week or two, compare placements. Move or resize weak codes, sharpen the call to action, and update the destination without reprinting.
Reading your scan data correctly
-
Exclude your own tests
Your team scans codes while setting them up. Note the date you went live and read results from then on.
-
Treat location as a hint
Mobile networks, VPNs and company networks can place a scan in a different city. Look at patterns, not single scans.
-
Count scans, not people
Repeat scans by the same person are included. A code on a product people keep at home may be scanned many times by one owner.
-
Compare like with like
A window code and a flyer reach different numbers of people. Compare scans relative to how many were printed or how busy the spot is.
-
Give it time
A few days of data can mislead. Let a campaign run through at least one full week before drawing conclusions.
Privacy considerations for QR code tracking
Scan tracking is based on technical data every browser sends when it opens a web address. It does not reveal names, phone numbers or contacts. Location is approximate: it comes from the network address, not from the phone's GPS.
Even so, a network address can count as personal data under laws such as the GDPR in the EU or KVKK in Turkey. Be transparent: mention in your privacy notice that you measure visits to your QR codes and links, and what you use the figures for.
Collect only what you need. If your goal is to compare two posters, you don't need to ask visitors for their email. When you do ask for personal data on the landing page, explain why and link to your privacy notice. This guide is general information, not legal advice.
Reacting to scans in real time
Reports are useful after the fact. Sometimes you want to know about a scan as it happens – for example when a code on a high-value product or a service request is scanned.
Qdestera's scan automations can send an email or call a webhook on every scan, for the whole workspace, a folder or a single code. Webhooks are signed, retried and logged, so they can feed your CRM or internal tools. For deeper integrations, the QR code API lets you manage codes and short links from your own systems.
See your scans in one dashboard
Create dynamic QR codes and follow scans over time, by operating system and by country and city.