Your QR code's printed pattern never changes — the intelligence lives in the link behind it, and that link does a lot of quiet work every time someone scans.
If you've read QR Codes 101 →, you know the core idea: a dynamic code points to a short link we control, not directly to your destination. This article unpacks what happens in those milliseconds between scan and page load — and why it matters for your analytics.
The redirect chain
When someone scans your code, here's the actual sequence:
- Their camera app reads the pattern and resolves a short URL — something like
sq.bond/abc123. - That short URL hits our link management system, which records the visit and looks up your configured destination.
- The system issues a redirect to your destination URL.
- The browser follows the redirect and loads the page.
The whole chain completes in under a second. From the scanner's perspective, it's seamless. From yours, step 2 is where the useful work happens.
Why that extra hop matters
The redirect isn't overhead — it's the feature. Because the short URL sits between the printed pattern and your destination, you can change where it points at any time without touching the physical code.
Print a brochure in January pointing to a listing page. By March, update the destination to a "Property Sold" summary or your next available listing. The brochure doesn't change. The experience for the person scanning it does.
Analytics also accumulate on the short link, not on the destination. Every scan — whether your destination was your listing page last week or your portfolio this week — adds to the same running total.
How we separate humans from bots
Not every resolution of your short URL is a person at an open house. Search engine crawlers, link preview generators, and monitoring services all follow URLs automatically, and they'd inflate your numbers if counted directly.
Our analytics distinguish between Total scans and Human scans:
- Total scans counts every resolution of your short URL, without filtering. This is the raw number.
- Human scans filters for sessions that match patterns consistent with a real person on a real device — based on request characteristics and timing signals.
For evaluating a campaign or an open house, Human scans is the number to watch. Total scans is useful context, but it's not a reliable proxy for foot traffic.
What this means for your analytics
A few practical implications worth knowing:
- History is sticky. Scan counts don't reset when you change your destination. A code you've had active for six months carries six months of history.
- One code, one story. Even if you've pointed the same code at four different listings over two years, the analytics chart shows one continuous line — not four separate ones.
- Bots aren't a bug; they're a signal. A large gap between Total and Human scans on a particular day can indicate a link preview crawl (someone sharing your URL on social media, for example). It's not noise — it's context.
Go deeper
Why bot filtering matters more for short URLs
Short URLs are especially attractive to link preview generators — tools that unfurl URLs to show thumbnail cards in messaging apps and social platforms. When someone shares your property listing URL with a colleague over WhatsApp, WhatsApp's servers often fetch the link independently to generate a preview card. That fetch shows up as a resolution of your short URL.
This is a genuine signal (someone found your link share-worthy), but it's not a scan in the foot-traffic sense. Our Human scans filter catches these.
Redirect chain latency
The redirect adds one network round-trip between the scan and the page load. In practice, this is typically under 30 milliseconds from most major regions — undetectable to the person scanning. The trade-off for that hop is every capability described above: updatable destinations, unified analytics, scan filtering.
Why scan counts belong to the short link, not the destination
This is an intentional design choice. If scan history were tied to your destination URL, changing destinations would appear to "reset" your analytics — making it impossible to track a QR code's lifetime performance across multiple campaigns. Attaching history to the stable short URL means your analytics tell a coherent story regardless of how many times you redirect.
Frequently asked questions
Why do my Total scans and Human scans differ?
Automated systems — crawlers, link preview generators, monitoring tools — also resolve your short URL. Total scans counts everything; Human scans filters those out. The gap is normal and expected.
Does changing my destination reset my scan count?
No. Scan history belongs to your short link, not to any particular destination. Updating where you point your code doesn't affect the count.
What counts as a "human" scan?
We look at request characteristics that distinguish real device interactions from automated traffic — things like browser signals and request timing. We don't track personal information about the people scanning.
My Human scans seem low compared to what I'd expect. What should I check?
First, check your Total scans. If Total is also low, the code may not be getting much traffic. If Total is much higher than Human, there may be significant automated crawling — which is usually a sign of healthy link-sharing activity, even if it doesn't translate to foot traffic.