Back to field notes
VOL. 03 · SMART ROUTING

One lane, many destinations

Send the same short link to six different places depending on who clicks. Rotators, A/B splits, geo, device, time-of-day, and returning visitors.

Guide6 min02 Apr 2026VOLUME 03 OF 08

Smart Routing lets a single LinkLane code resolve to a different URL depending on context. There are six routing kinds: rotator (round-robin), A/B (weighted random), geo (country), device (iOS / Android / desktop), time (weekday + hour-of-day windows), and cookie (new vs returning visitor). You set the rule once in the Protection panel; the redirect honours it on every hit.

Rotator — round-robin

A rotator cycles deterministically through up to ten URLs. The variant served on a given hit is (clicks % len(variants)), so visitors 1, 2, 3, 4 see variants A, B, C, A in order. It's the easiest way to spread traffic evenly across three landing pages without writing any code.

A/B testing — weighted random

Switch the mode to A/B and assign each variant a weight from 1 to 100. The server draws a weighted random pick on each click and records the chosen variant on the click_event document, so your analytics can break down conversions by variant. A 60/40 split is just weights 60 and 40 — the names are yours.

Geo routing — country aware

Geo mode maps ISO-2 country codes to URLs. LinkLane resolves the visitor's IP to a country via a memoised lookup (results cached forever in the geo_cache collection), picks the matching destination, and falls back to a default URL if there's no match. Pair it with localised landing pages and your single QR code can serve a US store on Monday and an EU store on Tuesday.

Device routing — UA-driven

Device mode reads the User-Agent and routes to one of three buckets: ios, android, or desktop. The classic use is App Store / Play Store splits from a single QR on a poster. If the UA matches none of the three, the fallback URL takes the visitor.

Time routing — weekday + hour

Time mode resolves against the visitor's wall-clock time in a timezone you choose. Each window has a destination URL, a set of weekdays (Sun=0..Sat=6, empty means every day), and a start/end in 24-hour HH:MM. Windows are evaluated in order; the first match wins. A window whose end is earlier than its start crosses midnight, so 22:00→02:00 catches late-night traffic in one rule. Up to twelve windows per link.

Pair time mode with a fallback for the hours nothing matches. A common shape: a 'business hours' window pointing at the live chat product, a 'weekend' window pointing at the docs, and a fallback to a contact form. The chosen window's label is written to the click event so analytics show which window served each click.

Cookie routing — new vs returning

Cookie mode splits traffic by whether this browser has seen this link before. First-time visitors go to one URL, returning visitors to another. The 'memory' is a per-link cookie (_ll_v_{code}) set on the visitor's browser; you can shorten or extend the lookback window from 1 to 365 days. After the cookie expires the visitor is 'new' again.

Two patterns work especially well. First, the coupon flow: new visitors land on a discount page, returning visitors skip straight to checkout. Second, the welcome-then-app pattern: new visitors see an onboarding video, returning visitors go directly to their dashboard. Both URLs are stored on the link doc and validated at create time, so neither can be empty.

What the preview endpoint says

GET /api/preview/{code} returns the resolved 'routed_url' alongside the visitor's variant, which is how the dashboard previews the URL someone in your office would actually see right now. The variant label is also written to click_events so segmented analytics light up immediately.

Plan gating

All four routing modes are Pro+. Free accounts see the panel disabled with a soft upsell.

NEXT UP
Guide

Campaigns + UTM, without the spreadsheet

Group lanes into campaigns, attach UTM params from a panel, and read a roll-up that doesn't require five tabs.

READY?

Stop reading. Start shortening.