CodesQR

How to Track QR Code Scans

Updated July 18, 2026 · by the CodesQR team

Scan tracking is not something you sprinkle on later. It has to be built into the code before you print it, and that means using the right kind of QR from the start.

A QR code is just an image that holds a piece of text. Nothing about a plain image can report back to you. So when people ask how to see how many times their QR code was scanned, the honest answer is that it depends entirely on how the code was made. If it was a static code, the count does not exist and cannot be recovered. If it was dynamic, the number is already waiting in a dashboard.

Why static codes can't be tracked

A static code encodes your destination directly. Scanning it sends the phone straight from the camera to your page with nothing in between, so there is no server to record the visit. You can generate static codes with our free link QR generator, and they are perfect when you do not need numbers. But once the image is printed, no setting or upgrade can make it start counting. The measurement has to happen somewhere, and a static code gives it nowhere to happen.

How dynamic codes count scans

A dynamic QR code encodes a short link that you control rather than your final address. Each scan lands on that short link first, the server writes down the event, and then it forwards the visitor to wherever you have pointed the code. The redirect is instant and the person scanning never sees the extra step. Because every scan flows through that one point, it can be tallied, timestamped, and grouped. This is what makes a trackable QR code possible at all.

What the analytics actually tell you

Scan data is more modest than web analytics, and it is worth setting expectations. A QR redirect sees the request, not the person. In practice you get a few useful signals:

  • Total scans. A running count for each code. Note that this counts scan events, so one curious person scanning twice registers as two.
  • Scans over time. A timeline, typically a 30-day chart, that shows when activity happened. This is the most actionable view, because it lets you connect spikes to a mailing, an event, or a new print run.
  • Device breakdown. A rough split of iOS versus Android, inferred from the browser that made the request. Handy for deciding whether your landing page needs work on one platform.

You will not get names, precise locations, or repeat-visitor identity from a QR scan, and any tool promising that level of detail from the code alone is overstating things. Treat scan counts as a reliable measure of interest and timing rather than a customer database.

Setting up tracking in a few minutes

The workflow is short. Create a dynamic code and point it at your destination, whether that is a web page or an uploaded file such as a PDF. Download the image as a PNG or SVG, print or publish it, and let the scans accumulate. Open the code's page later and the numbers are there. You do not add a tracking script to your website, and you do not tag the URL by hand, because the redirect does the counting for you.

Two habits make the data cleaner. Give each placement its own code so you can compare them. A code on a poster and a code in an email should be separate, or you will never learn which one earned the scans. And test each code once with your own phone before it goes live, then remember to subtract those test scans when you read the first day's total.

Reading the numbers without fooling yourself

A flat line usually means placement, not disinterest. A code that no one can physically see, or one printed too small to focus on, will report nothing regardless of how good the offer is. Before you conclude that a campaign failed, confirm the code is scannable at the distance people encounter it, and that the destination loads well on a phone. If you inherited a code and are not sure it is even dynamic, run it through our QR decoder. A short redirect link in the output means tracking is available; your full destination means it is a static code with no analytics.

Tracking scans comes down to one early decision: make the code dynamic. Do that and the count, the timeline, and the device split are already recorded by the time you think to look. Start a trackable QR code for free and you will see your first scans within minutes of putting it out in the world. For deeper background on the two code types, see dynamic vs static QR codes.

Your Trackable QR Code Is a Minute Away

Point a code at any link or file, track every scan, and change the destination whenever you need.

Create My Free QR Code
  • Free forever
  • No credit card
  • Setup in minutes