QR code for a link
A link code holds one thing: a web address. It is the simplest type and the one most people actually need, which is why the failures are almost never in the code but in the address inside it.
Create a link QR codeStatic, no account, no expiry
Editorial teamLast reviewed: 29 October 2026Editorial standards
Short answer
Paste the full address including https://, keep it under about 100 characters, print at least 2.5 cm wide for a card held in the hand and 4 to 5 cm for a table stand. A static code never changes, so the page it points at has to stay where it is.
Every camera made in the last ten years reads a link code without an app. There is no format inside that can break, no version to pick, no compatibility list to check. What decides whether the scan works is the address and the surface it is printed on.
That makes this page less about technology and more about two decisions you make before generating anything: which URL goes in, and how large the code will be on the finished item.
What is stored in the code
The URL as plain text, protocol included. The code is static: the characters are baked into the pattern and stay there for as long as the printed item exists. Nothing is called at scan time, no service sits in between, and nothing can be switched off later.
The protocol matters more than people expect. Without https:// some camera apps do not recognise the string as an address and only offer to copy it, which is a dead end for a reader holding a flyer.
- Short and stable beats clever: example.com/menu rather than a campaign URL with five parameters
- Check the case of the path, most servers treat /Menu and /menu as different pages
- Spaces and accented characters must be percent-encoded or the server receives a path it does not know
- No redirect in front of the target if you can avoid it, every hop is another place to fail
How long is too long
Technically a QR code can hold thousands of characters. Practically, every extra character adds modules to the pattern, and the same physical square has to fit more and smaller dots. A 300 character address needs visibly more space than a 30 character one before it scans as reliably.
A workable rule: under 100 characters is not a concern, up to about 200 works if you print large enough, beyond that shorten the address. A short path on your own domain is better than a third-party shortener, because the domain stays yours and does not expire with a subscription.
Choosing a print size
Size follows reading distance, not taste. The long-standing rule of thumb for QR codes is a 10:1 ratio: one unit of edge length for every ten units of distance between the eye and the code. A size chart is below, and it is worth printing a test sheet before the real run.
Two adjustments on top of the ratio: add roughly a third of the width for long addresses, because the pattern is denser, and keep a quiet zone of four modules free on every side. No logo, no text and no border may sit inside that margin.
When a link is the wrong choice
If the destination has to change after printing, a static link code cannot help. That case needs a dynamic code with a redirect service, and the price is dependency: whoever runs the redirect can change the target, bill you, or shut the service down.
If the scan should open an app rather than a browser, a link is a detour. Wi-Fi, contacts, phone numbers and payments each have their own payload type that the scanner understands directly. Use the matching type instead of a page that loads slowly on mobile data.
How big the code has to be
| Where the code is | Typical distance | Minimum edge length |
|---|---|---|
| Business card, flyer in hand | 20 to 30 cm | 2.5 cm |
| Table stand, counter | 40 to 60 cm | 4 to 5 cm |
| Poster at eye level | 1 to 1.5 m | 10 to 15 cm |
| Sign read from a few steps back | 2 to 3 m | 20 to 30 cm |
Questions people ask about link codes
Can I change the address after the code is printed?
Not with a static code. The URL is part of the pattern. Changing it means a dynamic code with a redirect in front, and that introduces a provider you then depend on.
Do I need a QR scanner app?
No. iOS has read codes in the Camera app since iOS 11, and Android does the same in the camera app or from the quick settings. A separate app is only useful for niche formats.
Why does my code scan on screen but not on paper?
Paper has less contrast than a backlit screen, and printing small or on textured stock blurs the module edges. Increase the size, use pure black on uncoated white, and test the actual printed item in the light where it will be used.
Should I use a URL shortener?
Only if the short domain is yours. A rented shortener turns every printed code into a liability the day the subscription ends.