QR code with tracking
Know whether your code actually got scanned — and from where — without invading anyone's privacy.
Open the QR code generator →What you can see
For each dynamic code you get total scans, unique scanners, a country breakdown, and device and OS splits. It's enough to tell a working flyer from a dead one, and to compare placements.
Privacy-first by design
We never store raw IP addresses. Each scan's IP is hashed with a daily-rotating salt, which lets us count unique scanners for a day without keeping any personal data. No cookies are set on the person scanning.
Reading the numbers
Total scans counts every hit; unique scans dedupes by scanner using the salted daily hash, so a curious person scanning twice doesn't inflate your count. Use unique scans to gauge real reach, and total scans if you care about raw engagement, like someone rescanning to check a menu again.
What it's good for
- Comparing two placements of the same code — front door vs. counter — by swapping which one's live.
- Confirming a print run actually got distributed before a follow-up campaign.
- Spotting a dead code fast — zero scans after a week on a busy flyer is a signal something's wrong with placement, not the code.
What it can't tell you
There's no name, email or precise location tied to a scan — just country (derived from IP, before it's hashed and discarded), device type and OS. If you need to identify who scanned, add that ask to the destination page itself, like a form or a login, rather than expecting the QR layer to provide it.
How the device and OS breakdown works
Device and OS detection reads the scanning phone's user-agent string — the same header every web request already sends — and classifies it into a broad bucket like "iPhone / iOS" or "Android / Chrome." It doesn't fingerprint the specific device model, screen size or browser version beyond that broad category, which is enough to tell you whether a placement is mostly reaching iPhone or Android users without building anything close to a detailed profile of any individual scanner.
A realistic way to use it
Put a dynamic code in two spots — say a window sticker and a counter card — and compare their scan counts after a week. The one with meaningfully more scans is the better placement; move your next print run's emphasis there. It's a simple A/B test that a static code, with no tracking at all, can't give you.
FAQ
Do you store the scanner's IP address?
No. We store only a salted, daily-rotating hash, so unique counts work but the raw IP is never retained.
How do I make a trackable code?
Create a dynamic QR code (GenHub Pro). Static codes can't be tracked because they point straight at your URL.
Does tracking slow down the scan?
No — the redirect happens in a single fast round trip; scanners land on your destination essentially instantly.
Can I export the scan data?
Analytics are viewable in your account dashboard; there's currently no separate CSV export.
Can I see exactly which street or building a scan came from?
No — location is limited to country, derived briefly from IP before it's discarded. There's no city, street or precise geolocation in the analytics.