QR Code Analytics and Scan Tracking

Analytics show how often each dynamic code is scanned, from which devices and referrers, and at which hours. Each scan counts once, bots and link previews are left out, and the figures count scans rather than unique people.

What the analytics measure

Every request to a dynamic short link is recorded as one row with the device, the operating system, the referrer host and, when the hosting provides it, the country. Requests that look like crawlers, link previews, command-line tools or requests with no user agent are stored with a bot flag and left out of the totals. The report therefore reflects people who opened the code, not the services that fetch links to build a preview.

The account analytics page covers seven, thirty or ninety days, ending today in UTC. It shows the total and the bot count, a bar for each day with empty days filled in, the split by device, the top countries and referrers, the five busiest codes and a weekday by hour heatmap. Use the heatmap to decide when a promotion or a staffed stand is most likely to be seen.

The figures count scans, not visitors. The same person who scans a code twice adds two scans, and the app does not identify people or sessions for this report. The operating system is recorded with each scan and appears in the latest scans of a code, but the account page does not add it up, so use the code view when you need it.

How to read your scan data

  1. 01

    Open the analytics page and pick a range

    Open the analytics page and choose seven, thirty or ninety days. The default is thirty days. Changing the range reloads the report for the active workspace only, so the numbers never mix two workspaces.

  2. 02

    Check the daily bars and the top codes

    Look at the daily bars after you publish or print something new, to see whether scans rise. Then read the top codes list, where each name links to the scans page of that code for a closer look.

  3. 03

    Open one code for destinations and recent scans

    The scans page of a code shows the last fourteen days, the split by device, by country and by destination, and the twenty most recent scans with their device, operating system, country and referrer. Bot requests appear in that list marked as bots, and they do not change the totals.

What teams do with scan data

  • Restaurants testing a menu change

    Compare the daily bars before and after you change the menu link on a table tent. A clear rise after a new card is a signal to keep the design, and it arrives sooner than the next sales report.

  • Event organisers placing signs

    The hourly heatmap shows at which hours each weekday brings scans. Organisers can place the next round of posters near the entrance before the peak hours, and compare the next event against the same pattern.

  • Marketing teams reading referrers

    When a short link is opened from a web page, the referrer list names the host of that page. Codes shown on a partner's site, a newsletter or a social profile appear under those host names, which makes channels easier to compare.

  • Sales teams checking a product sheet

    If most scans of a product sheet come from iPhones, the team can adjust the device rule so iPhone visitors reach the app listing first, then compare the next month's totals to see the difference.

  • Operators retiring an old flyer

    Before you remove an old flyer, check the last thirty days on the analytics page. When the daily bars are close to zero and only bot requests remain, the printed code is no longer in use.

Tips for reading analytics accurately

Count scans, not people
A scan is a request, so one person who scans a code several times adds several scans. Do not present the totals as unique visitors, and do not divide them by audience sizes you have not measured.
Expect the day boundary in UTC
The daily bars and the heatmap use UTC. A scan made just after midnight in a city east of Greenwich falls on the previous UTC day, so adjust your reading when you compare the figures with local sales reports.
Country appears only when the host provides it
The country comes from a header that Cloudflare adds to requests. Without that header the country lists stay empty and country rules do not match. Do not promise location data to a client unless your deployment sends it.
Test scans are counted too
Your own test scans count like any other scan. Note how many you made during the first days, so the early numbers are not misread when the campaign starts.

Questions about analytics

Which plan includes analytics?

The Pro plan and above. The account analytics page is locked on the free plan, and a code can only collect scans when it is dynamic, which also needs Pro. Static codes never count scans, whatever the plan.

Can I see the number of unique visitors?

No. The app counts scans and does not identify people, so there is no unique visitor figure. The total of scans is the measure the report offers, and it is the one to compare over time.

Are bots and link previews counted?

No. Requests from crawlers, messaging apps that fetch a preview, command-line tools and requests without a user agent are recorded with a bot flag. The totals leave them out, and the number of bot requests appears next to the total.

How far back does the data go?

The interface offers seven, thirty or ninety days, counted back from today. There is no custom date range in the report, so choose the range that matches the campaign you want to read.

Can I export the scan data?

The list of saved codes can be exported as a CSV file, and the export respects the current search and tag filter. Individual scan rows are not exported, so keep a copy of the figures you need from the report.

Does the country count always show?

No. The country depends on the header that Cloudflare adds to requests. When it is missing, the scans still count, but the country lists stay empty.

Направете първия си код за минута

Редакторът е безплатен. Добавете профил, когато поискате да запазвате кодове, да следите сканиранията или да смените целевия адрес по-късно.