A print team sends postcards, installs window posters, and adds QR codes to receipts. Scans arrive, but every code opens the same landing page, so nobody can tell which placement worked.
That problem starts before printing. Each placement needs its own trackable code, consistent labels, and a destination URL that preserves campaign attribution. QRPulse provides a trackable QR code workflow for setting this up without treating every printed code as an isolated asset.
Quick answer: how to track QR code scans
Use this workflow for each print campaign:
- Define the campaign, placement, audience, and conversion you want to measure.
- Create a unique dynamic QR code for every placement you need to compare.
- Add campaign parameters to the destination URL and use a consistent naming system.
- Export, print, and document which QR file appears in each physical location.
- Test every printed proof on multiple phones before approving production.
- Review scans by code, date, location, device, and placement where available.
- Compare scan rates and conversions using the correct distribution denominator.
The central rule is simple: one QR code should represent one meaningful campaign variable. If the same code appears on a postcard, storefront poster, and receipt, the resulting scan count cannot show which of those placements produced the response.
How QR code scan tracking works
A standard static QR code contains its final destination directly in the pattern. When someone scans it, the phone opens that encoded URL. The scan does not have to pass through a reporting service, so the code generator usually has no event to count.
A dynamic QR code encodes a managed redirect URL instead. The person scans the printed pattern, the redirect service records the request, and the visitor is sent to the current destination. This creates a measurable event before the landing page loads.
The redirect also separates the printed image from the final page. You can update the destination after the QR code has been printed, provided the redirect remains active. That is useful when a product page changes, an event ends, or a campaign moves from an offer page to an evergreen page.
Dynamic codes are therefore the practical choice for print runs that will be difficult or expensive to replace. Static codes still suit permanent information such as plain text, Wi-Fi credentials, or a URL that does not need scan reporting. A free generator without signup may be enough for those cases, but verify that it does not add a watermark or unexpected redirect.
QR Code itself is standardized under ISO/IEC 18004. The ISO specification for QR Code symbology covers the encoding and symbol requirements, but campaign analytics come from the redirect and web analytics systems built around the symbol.
A recorded scan is not automatically a unique person. Someone may scan twice, reopen the redirect from browser history, or test the code before launch. Treat scan totals as interactions, then use destination analytics and conversion events to assess business results.
How to set up trackable QR codes for print
Start with a measurement map before opening a generator. List every variable that the campaign team expects to compare. Common variables include format, placement, market, store, creative version, publication, and distribution date.
Consider a fictional retailer called Northstar Home. It is promoting a spring showroom offer with three print placements:
- A postcard sent to homes in the Metro North area
- An A3 poster displayed in showroom windows
- A message printed at the bottom of customer receipts
Northstar initially creates one QR code pointing to https://northstarhome.example/spring-sale. The designer places the same image on all three assets. During proof review, the marketing manager notices that any scan report would combine direct mail, window traffic, and existing customers.
The team replaces that setup with three dynamic QR codes. Each code has its own redirect identity while all three can still lead to the same offer page. The physical experience remains consistent, but placement attribution is preserved.
The destination URLs also receive campaign parameters. For the postcard, Northstar uses:
https://northstarhome.example/spring-sale?utm_source=print&utm_medium=qr&utm_campaign=spring_showroom_2026&utm_content=postcard_front_metro_north
The poster uses utm_content=showroom_window_a3, while the receipt uses utm_content=receipt_bottom. Google documents how these parameters feed campaign reporting in its guidance on collecting campaign data with custom URLs.
Use lowercase values and underscores consistently. Showroom Poster, showroom-poster, and showroom_poster can appear as three separate values in an analytics platform even though a person sees them as the same label.
Do not rely on URL parameters as the only scan measurement method. Privacy controls, page-loading failures, consent settings, and browser behavior can prevent destination analytics from recording a session. Redirect analytics show that the code was requested. Web analytics show what happened after the redirect. Keep both views.
If you are choosing software for this workflow, compare redirect control, code-level analytics, export options, design controls, retention limits, and whether codes remain active when a plan changes. The trackable QR code generator comparison provides a fuller evaluation framework.
How to label QR code placements correctly
A QR code image is difficult to identify by sight. Once several nearly identical PNG or SVG files enter a shared design folder, file names and campaign records become the source of truth.
Use a label structure that moves from broad to specific:
campaign | market | format | placement | version
Northstar names its postcard code spring26 | metro-north | postcard | front | v1. The exported SVG becomes spring26_metro-north_postcard_front_v1.svg. Its poster and receipt files follow the same pattern.
The team also maintains a placement register with the internal code name, redirect ID, destination URL, printed format, distribution date, owner, and status. This does not require specialist software. A controlled spreadsheet works for a small campaign, provided one person owns changes and designers do not rename files informally.
Record the exact level of variation that can affect performance. If identical posters appear in ten stores and you only need a regional result, one poster code may be sufficient. If store managers will be evaluated separately, create one code per store. More codes improve attribution but increase production and quality assurance work.
Avoid labels such as poster_final, new_qr, and code_7. They make sense during a rushed export and become useless when somebody reviews the campaign three months later. Include version numbers, especially when creative is reprinted after a destination or call to action changes.
Put a human-readable campaign ID in the artwork notes or printer instructions too. If the wrong QR file appears in a proof, the ID lets a reviewer trace it without scanning every variation.
How to test QR code scans before printing
Test the exported file, the design proof, and a physical sample. Checking only the code inside the generator misses errors introduced by resizing, cropping, color changes, print finish, or an incorrect file replacement in the layout.
Start by scanning the exported QR code on screen. Confirm the redirect opens the exact page and preserves all intended campaign parameters. Then place the file into the final artwork and test again at its expected printed size.
Print a proof using dimensions and materials close to the final output. A code that works on a bright monitor may struggle on a glossy folded brochure. Curved packaging, reflective window vinyl, low contrast, and an undersized quiet zone can all reduce reliability.
Northstar’s receipt proof exposes a practical failure. The QR code scans from the original design PDF but becomes inconsistent on the thermal printer because it is too small and surrounded by promotional text. The designer increases its size, restores clear white space around the code, and shortens the printed call to action.
Test with more than one phone and camera application. Use older and newer devices where possible, then scan from the distance a real person will use. A storefront poster has to work from farther away than a receipt.
After every test, check that the expected code received the event. Reset or annotate internal test activity if the platform allows it. Otherwise, record the launch date and exclude prelaunch scans during analysis.
For design dimensions, contrast, placement, and calls to action, use this detailed guide to QR code best practices before releasing files to a printer.
How to read QR code scan data
Begin with code-level scans over time. A sudden increase can correspond to a mailing date, store installation, event opening, or promotion. Match those dates against the placement register instead of assuming the creative caused every change.
Then inspect the dimensions your analytics system provides. Depending on the platform and visitor permissions, these may include approximate location, device type, operating system, browser, time, and referring context. Location inferred from an IP address is approximate. It should not be treated as proof that a specific household or venue produced a scan.
Use destination analytics to examine sessions, engagement, and conversions after the redirect. A print code can receive many scans but few completed actions because the landing page loads slowly, the offer is unclear, or the page asks for too much information.
The following table shows how to interpret the main measurement layers:
| Measurement layer | What it records | Best use | Main limitation |
|---|---|---|---|
| Raw scans | Redirect requests generated by the QR code | Comparing interaction volume by code and date | Repeat scans and internal tests may be included |
| Unique or filtered scans | Requests grouped or filtered by the analytics provider | Estimating distinct scanning activity | The definition varies by provider and device signals |
| Web sessions | Visits recorded on the destination site | Evaluating page engagement after scanning | Consent and page-load failures can reduce counts |
| Conversions | Purchases, forms, bookings, downloads, or other configured actions | Connecting print response to campaign outcomes | Requires accurate event configuration and attribution |
| Scan rate | Scans divided by distributed or viewable print units | Comparing placements with different circulation | The denominator may be estimated for posters and displays |
Northstar reviews its three codes separately. Postcards have a known delivered quantity, so the team can calculate scans per delivered piece. Receipt volume is also available from the point-of-sale system. Window poster impressions are not directly known, which means its raw scan count cannot be compared fairly with postcard scan rate.
For the poster, Northstar uses time, store, and placement consistency to interpret performance. It does not invent a precise impression count from foot traffic. If reliable store entry data exists, that can be used as an exposure proxy, but the reporting should label it clearly.
Real-time dashboards are useful during a launch because they expose broken placements quickly. They do not remove the need for a stable reporting window. Late scans, repeat visits, and delayed conversion events can change the result after print distribution ends.
How to compare QR code performance across offline campaigns
Choose comparison metrics based on the decision being made. Raw scans can answer which code generated the most interactions. Scan rate is better when distribution volumes differ. Conversion rate shows whether the landing experience turned those scans into meaningful actions.
Use these formulas consistently:
Scan rate = recorded scans / distributed units × 100
Post-scan conversion rate = conversions / measured post-scan visits × 100
Cost per conversion = campaign cost / attributed conversions
The denominator must describe actual exposure as closely as possible. Printed quantity is often a poor substitute for distributed quantity. A printer may produce 20,000 leaflets while only part of the shipment reaches customers. Use delivered mail, handed-out flyers, issued receipts, or installed units when those numbers are available.
Compare like with like. A receipt reaches an existing customer after a purchase, while a postcard reaches a household with no confirmed intent. A higher receipt scan rate does not prove the receipt is a stronger acquisition channel. It may be better suited to loyalty enrollment, reviews, support, or a second purchase.
Northstar groups results first by placement type and then by creative version. It compares postcard regions against other postcard regions, not against posters. Within the poster group, it keeps the offer, size, and installation period stable before judging whether one call to action performs better.
Campaign parameters also help connect offline activity with other marketing reports. For a broader approach to channel reporting, see QR code analytics for marketing and the practical examples in trackable QR codes for marketing.
How QRPulse handles QR code scan tracking
A manual system can work, but every handoff creates room for mismatched URLs, duplicate codes, vague file names, and lost placement records. QRPulse removes part of that operational load by keeping QR creation and scan reporting within the same workflow.
Start in the QR code generator with the destination for the first placement. For a campaign that may change after printing, use a dynamic QR code so the printed pattern points through a managed redirect.
Create a separate code for the next placement instead of downloading the first image again. Apply the campaign naming convention while the purpose is still clear. Northstar would create distinct assets for postcard front, showroom window, and receipt bottom, even though the offer URL is shared.
Download each code and map the file to the relevant print artwork. Keep the export name aligned with the placement register. The designer can then return the final proof for scan testing without guessing which code was inserted.
Once the campaign is active, review each code through QR code analytics. Check the timing and source code of incoming scans against distribution records. If scans appear on the receipt code before the receipt artwork is deployed, investigate whether staff testing or an asset mix-up caused them.
Use the QR code scan tracker to monitor trackable codes as campaign activity develops. Then combine those scan records with the destination site’s conversions and the campaign’s distribution numbers. QRPulse covers the redirect-side measurement. Your web analytics, commerce, booking, or form system supplies what happened after arrival.
If a destination needs correction after printing, update the destination attached to the dynamic code rather than replacing the physical code. Test the revised route immediately. Changing a destination can protect a print run, but it can also disrupt historical comparisons if the new page has a different offer. Record the date and reason for the change.
Before selecting a plan, review QRPulse pricing against the number of codes, campaign duration, and reporting needs. A free option can be suitable for a small test. Long-running packaging, retail signage, and recurring print programs need more attention to code continuity and analytics access.
Common mistakes when tracking QR code scans
Reusing one code everywhere is the most damaging error because no reporting tool can reconstruct placement attribution afterward. Split codes before files reach production.
Another common mistake is comparing scan totals without distribution data. Five hundred scans from a large mailing may represent a weaker response than a smaller number from a tightly distributed brochure. Record quantities at the same time as print deployment.
Teams also forget to separate internal testing. Printer checks, agency reviews, store staff training, and client approvals can create scan activity before launch. Mark the campaign start date and identify test periods.
Poor destination setup causes quieter failures. The QR redirect works, but campaign parameters disappear during another redirect, the page is not usable on mobile, or the conversion event is missing. Test the complete path from printed symbol to recorded conversion.
Do not interpret approximate location as a person’s precise position. Network routing, mobile carriers, VPNs, and privacy controls all affect geographic signals. Use location trends for broad campaign analysis, not individual identification.
Finally, avoid changing destinations without keeping a change log. Dynamic codes make edits possible after printing. That convenience can produce misleading reports when scans from two different offers appear under one code and one reporting period.
Choose a QR scan tracking setup that survives the print run
For a one-off static link with no reporting requirement, a basic QR generator may be enough. For print campaigns that need placement comparisons, destination edits, or dependable attribution, create a separate dynamic code for every meaningful variable and document where each file goes.
Set the naming plan before design begins. Test the physical proof, preserve campaign parameters, and compare scans using real distribution figures where possible. If maintaining redirects, files, and scan records manually is becoming part of every campaign, use QRPulse to keep generation and tracking together while your web analytics measures the final conversion.
Start tracking every placement
Create separate trackable QR codes free. No credit card needed.
Get Started FreeFrequently asked questions
Can you track scans from a static QR code?+
You generally cannot count the scan event through the generator when a static code contains the final URL directly. You may still see visits in web analytics if the encoded URL includes campaign parameters, but those records depend on the destination page loading and analytics running. For direct scan reporting, use a dynamic code that routes through a measurable redirect.
Can I edit a QR code after it has been printed?+
You can change the destination of a dynamic QR code while keeping the same printed pattern, as long as the code remains active in the service managing its redirect. You cannot change the data encoded inside an already printed static QR code. Always scan the physical code after editing the destination to confirm the new page works and no redirect loop was introduced.
Are QR code scan counts the same as unique users?+
No. A scan count usually represents redirect requests or recorded interactions. One person can scan multiple times, and testing may be included. Some platforms provide a filtered or unique estimate, but the grouping method depends on available device and network signals. Use destination sessions, purchases, or completed forms for stronger evidence of distinct users.
How do I track QR codes with Google Analytics?+
Add consistent UTM parameters to each destination URL, then create a separate trackable QR code for every placement. In Google Analytics, review traffic using the source, medium, campaign, and content values you assigned — for example utm_source=print, utm_medium=qr, and a distinct utm_content per placement.
Do I need a different QR code for every printed item?+
Not for every individual copy — you need a different code for each unit of analysis. If all postcards share the same audience, creative, offer, and distribution, one code can represent that run. If two regions, stores, or creative versions need separate reporting, give each one its own code.
What information can a QR code scan tracker collect?+
A scan tracker may record the code identity, timestamp, approximate location, device category, operating system, and other request details, depending on the service and privacy controls. It does not automatically know the scanner’s name or exact address — personal identification usually requires a later action such as a form or purchase.
Continue reading
Best Trackable QR Code Generator (2026): QR Tiger vs Uniqode vs Bitly vs QRPulse
Verified pricing and analytics for every major dynamic QR code platform — QR Tiger, Uniqode, Bitly, and QRPulse — checked directly against each vendor's own pricing page.
How to Digitize Your Restaurant Business: A 2026 Owner’s Guide
A budget-tiered plan for digitizing your restaurant in 2026 — what to fix first, the real cost data behind each decision, and the sequence that actually protects margin.
Trackable QR Codes: The Missing Piece in Your Print Marketing ROI
Flyers, posters, and packaging still drive conversions — but without trackable QR codes you have no idea which campaigns are working. Here's how to fix that.
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.