A QR code on a car window does one job: it moves someone from standing next to your car to looking at your build, your socials or your booking page, without either of you typing anything. Done well it is the most useful square centimetre on the glass. Done badly it is a sticker nobody can scan, pointing at a page that expired six months ago.
This guide covers what to link, static versus dynamic codes, how big the code actually has to be, where to put it, what to print it on, and how to test it before you turn up to a meet.
Why a QR beats a handle at a meet
A written handle asks a stranger to do three things: read it, remember it, and type it correctly later. In a loud car park, at night, with a phone in one hand and a coffee in the other, that chain breaks constantly. Handles are full of underscores, dropped vowels and numbers where letters should be, and there are usually twenty near-identical accounts waiting in the search results.
A code removes the typing. Every current phone reads codes straight from the camera app, and the same camera will read one out of a photo taken earlier — which means a code still works in a basement car park with no reception, as long as the person photographs it and opens it on the way home.
Two honest limits. A code only works if someone chooses to lift their phone and walk up to it, so it is not a billboard and it will never reach everyone who walks past. And a code is only as good as what it opens — most of this guide is about that second half.
Ten things worth linking
Pick one destination. A code that opens a link-in-bio page with eleven buttons makes the visitor choose all over again, and most of them will not.
- Your Instagram or TikTok profile. The default, and the right answer for most people. Link the profile, not a single post that will be buried next week.
- A build page. One page for one car: spec list, photos, the story. This converts best of everything here because it answers the exact question the person was already asking.
- A YouTube build series — the playlist, not the channel, if the car has its own series.
- A parts list with sizes, offsets and part numbers. Unglamorous and enormously appreciated by anyone building the same platform.
- A shop credit. If a workshop did the paint, the fabrication or the tune, point at them. Shops remember it, and it is the easiest goodwill you will ever buy.
- A giveaway or competition entry. Gives people a concrete reason to scan rather than a vague one.
- A People’s Choice vote page, if the show runs voting through a link rather than paper ballots.
- Your club’s page or next meet date. Worth doing if you are part of a club stand — one code on every car, all pointing at the same place.
- A for-sale listing, if the car is actually for sale. Far better than a phone number written on the screen.
- A contact card or simple contact page, for a trade or shop vehicle where the point is a phone call.
Two things not to link. Anything behind a login or an approval — a private profile or a members-only group turns a scan into a dead end, and the person will not come back. And anything with a long tracking string on the end: every extra character makes the code denser and harder to read at small sizes.
Static and dynamic codes, and the free-trial trap
There are only two kinds of QR code, and the difference matters more than anything else on this page.
A static code has your URL baked into the pattern itself. Nothing sits between the scanner and the destination, so there is nothing to expire, nothing to pay for and nobody who can switch it off. The trade-off: you cannot change where it goes without printing a new code, and a long URL produces a denser, harder-to-scan pattern.
A dynamic code encodes a short address owned by a QR generator, which redirects to your real destination. You can repoint it later and see how many scans it got. Genuinely useful — and a permanent dependency on that company staying in business and you staying a customer.
That dependency is where people get caught. A large share of “free QR code generators” produce dynamic codes on a trial. When the trial ends, the redirect stops working and every sticker you printed becomes a dead square. It fails silently: the code still looks perfect, and you find out weeks later when someone mentions it.
Before you print anything, check which kind you made:
- If the generator asked you to make an account, it is almost certainly dynamic.
- If it offers scan tracking, analytics or “edit the link later”, it is dynamic.
- If the code scans to a short address on someone else’s domain rather than your own URL, it is dynamic. Scan it and read the address bar before the page redirects.
- If you typed a URL, downloaded a file, and were never asked for an email, it is static.
If you want editability without the dependency, there is a middle path: make a static code that points at a short URL on a domain you own, and redirect from there. You keep control of the destination, you can change it whenever you like, and nobody can turn it off but you.
Either way, keep the URL short. Fewer characters means fewer modules — the little squares that make up the pattern — which means each module is physically bigger at the same printed size, which is most of what makes a small code scannable.
How big does the code need to be
The working rule of thumb is 10:1: a code scans from roughly ten times its own width. It is a rule of thumb, not a specification — it assumes a clean, high-contrast code, a modern phone, decent light and someone pointing more or less straight at it. Treat the numbers below as a starting point you then test.
| Code width | Rough scan distance | What that suits |
|---|---|---|
| 2 cm | about 20 cm | Someone standing at the glass. This is roughly the size of the QR slot on an Apex Mini, at about 21 mm wide |
| 3 cm | about 30 cm | A card on the dash, or a corner of a printed build sheet |
| 5 cm | about 50 cm | An A4 windscreen sheet, read while leaning in |
| 10 cm | about 1 m | A show board on a stand, read from beside the car |
| 20 cm | about 2 m | A banner or large board behind a rope line |
Four things shrink those distances, sometimes badly:
- Tint. Every layer of film cuts the light reaching the camera. A light factory tint costs you a little; a dark aftermarket film on side glass can cut the usable distance roughly in half, and at night it can stop the scan entirely.
- Glare and reflection. The biggest single killer, and worse than size. Direct sun on glass at the wrong angle will defeat a code of any size, which is why a code sitting flat behind a windscreen often fails at midday and works fine at 8am.
- Angle. A code read from well off to one side is effectively narrower than it looks. Assume people will not line up square with it.
- Data density. A long URL packs more, smaller modules into the same square. Two codes the same physical size can have wildly different real-world range.
The practical conclusion: a code on car glass is an arm’s-length object. Put it where arm’s length is a natural place for someone to stand, and if you want people to scan from further back, the code needs to live on a board, not on the window.
Where to put it on the car
Everything here assumes a parked car at a meet, a show or a forecourt. A QR code is not something to display while driving, and it should never sit in the driver’s line of sight.
- Bottom corner of the windscreen, passenger side. Easy to walk up to, out of the driver’s view, and the conventional spot. Check your local rules for what may be left on a windscreen when the car is moving — many places restrict it.
- Side glass, front or rear door. The most natural walk-up position. Height matters more than size here: put it at roughly chest height rather than down near the sill, so nobody has to crouch.
- Rear quarter glass. Good at shows where people walk down the back of a line of cars, and usually the least reflective glass on the car.
- On the dash, angled up. Works, but glare is worse because you are shooting through the windscreen at a shallow angle. Use matt card, never glossy.
- On a board or build sheet. The most reliable option of the lot. You can make the code as big as you like, keep it out of direct sun, and point it at exactly where people stand.
Places to avoid: the bonnet (heat, reflections and people leaning), painted panels (adhesive), and anywhere on or near the number plate, which is illegal to obscure almost everywhere.
Sticker, static cling or screen
Four ways to actually get the code onto the car, with the honest trade-offs.
- Vinyl sticker. Cheapest, survives weather, sticks where you put it. The link is fixed forever and the adhesive stays on the glass. Best for a shop or trade vehicle with a URL that will never change.
- Static cling. No adhesive, repositionable, peels off for the week and goes back on for the weekend, and cheap enough to reprint when the link changes. The best choice for most enthusiasts who show a few times a year.
- Printed card or board. Gives you by far the biggest code for the money and the easiest read, but needs somewhere to stand or lean, and blows over. Excellent value if you are making a board anyway — see car show board ideas for what else belongs on it.
- A small screen in the window. Shows the code as one of a set of rotating slots and can be repointed without reprinting anything, which matters if your link changes often. Costs more than a sticker, needs charging or power, and the code is limited to the width of the panel.
There is no universally right answer. If the link is permanent, print it. If it changes a few times a year, use a cling. If it changes constantly — a giveaway this month, a vote next month, a for-sale listing after that — a screen stops you reprinting every time.
Make the landing page worth the scan
A scan is a promise, and whatever opens has about one screen to keep it. The most common failure is not a bad code — it is a code that works perfectly and lands someone on a page that never mentions the car they are standing next to.
- Make it public. A private profile, an approval-only group or a login wall wastes the scan completely.
- Show the car immediately. A pinned post, a hero photo or a spec block at the top. If the visitor has to scroll to confirm they are in the right place, many will not.
- Name the car. One line — “the black E36 you just scanned” — removes all doubt and is surprisingly rare.
- One next action. Follow, watch, enter, call. Not all four.
- Test it on mobile data with Wi-Fi off. A heavy photo gallery that loads instantly at home can time out in a packed car park.
- Keep the URL short. It is what lets the code stay sparse enough to scan at 2 cm.
If you post a car regularly, one permanent page per car is worth building. It ages better than a feed, it is easy to update, and it is the destination people actually wanted. Creators who run the handle and the code together will find more on that in the content creators page.
Test it before the meet
Five minutes in the driveway saves a whole weekend of a code nobody mentions because nobody could scan it. Test it the way it will actually be used, not square-on from 10 cm in your kitchen.
- Two phones, one iPhone and one Android. Camera apps differ and so do their low-light abilities.
- Through the actual glass, including whatever tint is on it. A code that scans on the workbench can fail behind a dark film.
- At a realistic angle, standing where a person would stand rather than directly in front of it.
- In sun and after dark. Midday with the sun on the glass is the hardest case; a dim car park with only street lighting is the second hardest.
- At the distance you expect, then a step further back. If it only works at the exact distance, it is too small.
- On mobile data with Wi-Fi off, which catches both a slow page and a redirect that has quietly expired.
- Tap through to the end. Confirm the page that opens is the page you meant, and not a login screen or a “this link has been deactivated” notice.
When something fails, fix it in this order, because that is the order of impact:
- Shorten the URL, so the pattern gets simpler.
- Increase the contrast between the code and its background.
- Make the code physically bigger.
- Move it out of the glare, or change the angle it faces.
Re-test every time you change the link, reprint the code, or move it to a different piece of glass. It takes a minute, and the alternative is a weekend of standing next to a square that does nothing.