Skip to main content
QRelix

Dynamic QR Code Tracking: How It Works and Setup

By fittedtech.com

Dynamic QR code tracking works because a dynamic code holds a short redirect link instead of your final URL. Each scan passes through that link, which records the time, the city and country, and the device before sending the person on to your page. A static code has no redirect, so it cannot be counted. You can create a dynamic QR code on QRelix with no credit card and tracking is on from the first scan. Each free code works for its first 50 scans and shows a brief QRelix screen before forwarding. Pro ($5.99/month) makes scans unlimited and removes the screen.

How dynamic QR code tracking works

The pattern of a QR code is only a container for text. What that text is decides whether a scan can be measured.

  • Static code: the pattern contains your destination, for example yoursite.com/menu. The phone opens that address directly. Nothing sits in between, so nobody can count the scan, and the destination can never be changed.
  • Dynamic code: the pattern contains a short link that belongs to the QR platform. The phone requests that link first, the platform logs the request, and then it forwards the phone to your destination.

That single hop is the entire tracking mechanism. There is no script to add to your website and no app for the scanner to install. It is also why a dynamic code is editable: you change where the short link forwards to, and the printed pattern stays the same. The static vs. dynamic comparison covers the differences in more depth.

Every QR code made in QRelix is dynamic, so there is no separate tracking switch to turn on. If you can edit the destination, the scans are being counted.

What dynamic QR code tracking measures

Each scan becomes one row of data. In the QRelix dashboard those rows roll up into the following:

  • Total scans. Every time the code is scanned, including repeat scans by the same person.
  • Unique visitors. Repeat scans from the same device are grouped using anonymized fingerprinting, so 40 scans from 31 people shows as 40 total and 31 unique.
  • Time of scan. The date and time, down to the second, plus a chart of scans by hour of day.
  • Location. City, region, and country, worked out from the scanner's IP address and shown on a map.
  • Device, operating system, and browser. For example iPhone on iOS in Safari, or an Android phone in Chrome.

The data appears in real time. Scan a code and it shows up in the dashboard right away. You can view the trend for the last 7 days, the last 30 days, or a custom date range. The analytics and scan tracking guide lists every chart.

What it does not tell you

  • Who the person is. No names, emails, or phone numbers are collected, and no cookies are placed on the scanner's phone. To learn who someone is, the page they land on has to ask, for example with a signup form.
  • An exact street address. Location in the dashboard comes from the IP address, which is usually right at city level. A scanner on a VPN shows up wherever the VPN server is. More detail is in our guide to QR code location tracking.
  • What happened after the scan. The redirect sees the scan, not the purchase. To follow visitors on your own site, add UTM parameters to the destination, as described in step 3 below.

How to set up dynamic QR code tracking

Step 1: Create one code per placement

Tracking is recorded per code. If the same code goes on a flyer, a poster, and a truck, you get one combined number and cannot tell them apart. Make a separate code for each placement and name it after where it will live, such as "Door hanger, Oak Park, May." Both QRelix plans include unlimited dynamic codes, so separate codes cost nothing extra.

Step 2: Point each code at a specific page

Send scanners to the page that matches what the print promised: the quote form, the menu, the signup page. A homepage makes people hunt, and most will not.

Step 3: Add UTM parameters to the destination

Scan data ends at the redirect. To see what scanners do next in Google Analytics, add tags to the end of each destination URL, for example ?utm_source=qr&utm_medium=door-hanger&utm_campaign=spring-cleanup. Change utm_medium for each placement. The full walkthrough is in QR code tracking in Google Analytics 4.

Step 4: Test before you print

Scan the code with an iPhone and an Android phone. Check that the right page opens and that both scans appear in the dashboard with the correct device type. A wrong destination takes seconds to fix either way, because the code is dynamic, but it is better to catch it before the first real scan.

Step 5: Check the numbers on a schedule

Look once a week while a campaign is running. Compare codes against each other, not against a guess about what a good number is.

A worked example: three placements, one offer

A lawn care company promotes a spring cleanup offer in three places and makes one dynamic code for each: 500 door hangers, 20 yard signs on finished jobs, and decals on 3 trucks. After three weeks the dashboard shows:

  • Door hangers: 38 scans, 36 unique. That is about 7 unique scans per 100 hangers.
  • Yard signs: 61 scans, 44 unique. About 2 unique scans per sign.
  • Truck decals: 9 scans, 9 unique.

The hourly chart shows most scans between 5 pm and 8 pm, and the map shows yard sign scans clustered in two neighborhoods. The owner orders 20 more yard signs for those two neighborhoods, drops the truck decal from the next print order, and schedules follow-up calls for early evening. None of that was knowable from the print invoice alone.

One more detail from the same example: the yard sign code passed 50 scans in week three. On the free plan it would have paused at that point, so a placement like this one needs Pro before it gets there. The door hanger and truck codes stayed under 50 and would have run on the free plan for the whole test.

Free plan limits and when you need Pro

  • Free: unlimited dynamic codes, editable destinations, custom colors and logo, and the full analytics dashboard. Each code works for its first 50 scans, then pauses until you upgrade. Free scans show a brief QRelix screen before forwarding.
  • Pro ($5.99 per month): unlimited scans so codes never pause, no QRelix screen, Smart Routing, a Brand Kit, and unlimited hosted pages. Password protection, expiration dates, and geofencing are free on every plan.

A paused code is not deleted. The code and its scan data stay in your account, and upgrading brings it back without changing the printed image. The analytics are the same on both plans, so the question is only how many scans each code will get. The math is in our guide to dynamic QR code cost, and the free trackable QR code page lists what the free plan includes.

Mistakes that leave gaps in your tracking

  • One code for everything. You get a total and no way to compare placements.
  • Vague names. "QR code 7" tells you nothing in three months. Name codes by placement, place, and date.
  • Reading total scans as people. Use unique visitors when you estimate reach.
  • Skipping UTM parameters. Without them, scans arrive in Google Analytics looking like direct traffic.
  • Treating city data as exact. It is an estimate from the IP address. Use it to compare areas, not to locate a person.
  • Printing a high-traffic code on the free plan. Estimate the scans first. If a code will pass 50, move to Pro before it prints.

Common questions

Can I track a static QR code that is already printed?

Not as it is. A static code has no redirect, so there is nothing to log. QRelix has a Mirrored QR type that creates a dynamic, trackable copy of an existing code, which is described in the QR code types overview.

Does dynamic QR code tracking collect personal data?

QRelix analytics are aggregated and anonymized. They do not include names, emails, or phone numbers, and no cookies are set on the scanner's device.

Do I need Google Analytics?

No. Scan counts, locations, devices, and times are in the QRelix dashboard with no other tool connected. Google Analytics is only needed if you want to see what visitors do on your site after the scan.

Does changing the destination affect tracking?

No. You edit the destination in the dashboard, the next scan goes to the new page, and the printed code stays the same.

Next steps

Create your first dynamic QR code, scan it yourself, and watch the scan appear in the dashboard. Then make one code per placement before your next print run. For multi-channel campaigns, see QR campaign tracking, and for a wider look at scan logging, read how a QR code tracker works.

Put this guide to work

Make one with the free trackable QR code generator: scan analytics, an editable destination, your logo. No credit card, no account up front.

Create a free QR code

Keep reading

Related articles