Your QR now adapts, doesn't break, and keeps you posted: smart routing, 404 safeguard, and webhooks
· 3 min read
A printed QR code is, by definition, static: ink on paper. All the intelligence has to live in the link inside it. This week that link learned three new tricks.
Smart routing: one printed QR, a thousand behaviors (Pro)
Every link now accepts rules evaluated at scan time — the first match decides the destination:
- Time window (with timezone, overnight windows included): the table QR shows the breakfast menu from 8 to 12 and the regular one the rest of the day.
- Operating system: iPhone to the App Store, Android to Google Play, desktop to your landing page.
- Browser language: the same packaging QR opens the manual in Spanish, English, or German.
- Country: the international campaign sends each scan to its local store.
- Weighted A/B test: split traffic 70/30 between two landings — the variant is sticky per visitor (no cookies) and each can carry its own
utm_contentfor measurement. - Scan cap: "the first 100 scans see the promo; after that, promo's over."
Plus: scheduled expiry with a fallback page and automatic UTMs on every redirect for your GA4. All editable after printing, of course — that's what dynamic means.
And if you have the MCP connected, configure all of it in one sentence: "create a QR that shows the breakfast menu from 8 to 12, Madrid time." Claude sets up the rule for you.
404 safeguard: your site goes down, your QR doesn't (Business)
The scenario nobody plans for: 200 QRs printed on tables, and the menu site goes down on a Friday at 9pm. With the safeguard on:
- We check your destination URL periodically.
- If it stops responding (two consecutive checks — no false alarms), traffic automatically switches to your backup URL.
- We email you the moment it happens, and again when it recovers and traffic returns to the main destination on its own.
Nobody scans into a broken page. It's the natural extension of our anti-hostage guarantee: your printed QR never stops working — not because of our invoice, and not because of your server.
Webhooks: every scan, wherever you work (Business)
Configure a URL under Settings → API and every recorded scan POSTs in real time with country, city, device, and time — signed with HMAC-SHA256 so you can verify it's ours. Wire it to Zapier, Make, or n8n ("new scan → sheet row → Slack ping") or to your own backend. There's a send-test button to verify your receiver without scanning anything, and the docs include the payload and the verification snippet.
Fine-print honesty, as always: no retries in this first version — if your receiver is down, those events are lost (the data stays in your Analytics, which is the source of truth).
Where everything lands
| | Free | Pro ($9/mo) | Business ($29/mo) | |---|---|---|---| | Smart routing + expiry + UTMs | — | ✓ | ✓ | | 404 safeguard with failover | — | — | ✓ | | Signed webhooks | — | — | ✓ |
Scans stay unlimited on every plan and the free plan still never expires — house rules don't change.
Try it with your account — rules are added from the link editor, and the safeguard and webhooks from Business. Your restaurant menu QR just got a lot smarter.