You can measure visits from a printed QR code without buying scan tracking from a QR provider. Encode a website URL with campaign parameters, then read those visits in the destination website's analytics. You need control of that website and a working analytics installation.
This measures recorded website visits, not every camera scan. A person might preview a link without opening it, decline analytics consent or lose their connection. WE CREATE QR CODE generates static codes and does not supply a scan dashboard.
Give each placement its own campaign URL
Imagine a home-services business distributing appointment cards and flyers for the same autumn promotion. If both materials use the identical link, analytics cannot distinguish their placements. Prepare separate URLs before generating the images.
Google's campaign URL documentation describes using source, medium and campaign parameters to identify referred traffic. Here is an illustrative naming plan for your own domain:
| Parameter | Appointment card | Flyer |
|---|---|---|
| utm_source | appointment_card | neighbourhood_flyer |
| utm_medium | qr | qr |
| utm_campaign | autumn_service | autumn_service |
| utm_content | front_desk | doorstep |
The first address might be:
https://example.com/book?utm_source=appointment_card&utm_medium=qr&utm_campaign=autumn_service&utm_content=front_desk
Replace the example domain with a real destination. Keep spelling and case consistent across placements. If your URL already contains a question mark, append additional parameters with an ampersand instead of adding another question mark. Do not put customer names, email addresses or other personal details into campaign parameters.
Create and test the complete journey
Paste the full tagged URL into the website QR generator. Download the image, scan it and open the destination. Check that the browser address still contains the parameters after redirects.
On your own website, verify that GA4 records the visit. Realtime or DebugView can help check collection; processed acquisition reports may take longer. Record the exact test time and placement so you can distinguish your checks from genuine visitors.
If a booking provider removes the tags, your measurement may stop at your landing page. Cross-domain booking attribution needs a separate setup supported by both sites. Do not claim completed appointments based only on arrival at a booking button.
Read the right report and choose an outcome
In GA4, inspect session source/medium and session campaign in acquisition reporting. A custom medium such as qr may appear outside a default channel group; inspect the source and medium directly instead of assuming all QR traffic belongs in a standard channel.
Pick a useful outcome as well as visits: a submitted enquiry, a completed reservation or a brochure download. The event must represent an action that actually happened. A click on "Book" and a confirmed booking are different measurements.
| Question | Measure | Limitation |
|---|---|---|
| Did a placement bring visitors? | Recorded sessions for its tagged URL | Some visits are not collected |
| Did visitors use the page? | Relevant interaction events | Events need correct implementation |
| Did the campaign produce enquiries? | Confirmed submission events | An enquiry is not a completed sale |
Keep a campaign register before printing
Do not mistake a redirect for a measured page visit
A server redirect alone does not automatically create a GA4 page view. If the visitor is immediately sent elsewhere, your analytics tag may never load. To measure arrivals in your own GA4 property, use a useful destination page you control with working analytics and applicable consent, or design a separate, deliberate measurement implementation.
This matters for social profile codes: adding UTM tags to an Instagram URL does not give your GA4 property access to Instagram visits or follows. An instrumented page on your domain can record eligible arrivals and an outbound click when that event is implemented, but the click is not proof of a new follower. See the Instagram print checklist for a workflow that keeps those outcomes separate.
Record the approved artwork and destination
Save the artwork filename, encoded URL, placement, publication date and person responsible for the destination in one sheet. Keep the original URL active for as long as the material circulates. With a static QR code, changing the image file in your folder does not change cards already printed.
For a destination you need to update frequently, use a stable page on your own domain. The restaurant menu workflow shows this principle in practice. Test both the printed code and the analytics journey before judging campaign results.