Answers
URL shortener with QR code: why the short link makes a better code
Every link here has a QR at its own URL, PNG or SVG. Shorter links produce fewer modules, which is the difference between a code that scans off a poster and one that does not.
By Wasim Idrishi · Updated · 2 min read
Any shortener can hand you a QR code. The reason to care which one is that the length of the link decides how good the code is.
The module arithmetic
A QR code stores a fixed number of characters per version, and each version is a grid of a fixed size. Fewer characters means a lower version, which means fewer modules across the same printed square, which means each module is physically larger.
Larger modules are what survive a cheap printer, a curved surface, poor light and a phone held two metres away. This is the one place where the difference between a 10-character link and a 40-character one is visible to the naked eye.
| Host | Service | Characters | With the slash | Registry |
|---|---|---|---|---|
| t.ly | T.LY | 4 | 5 | .ly, Libya |
| v.gd | v.gd | 4 | 5 | .gd, Grenada |
| gc.mw | gc.mw | 5 | 6 | .mw, Malawi |
| is.gd | is.gd | 5 | 6 | .gd, Grenada |
| bit.ly | Bitly | 6 | 7 | .ly, Libya |
| cutt.ly | Cutt.ly | 7 | 8 | .ly, Libya |
| rebrand.ly | Rebrandly | 10 | 11 | .ly, Libya |
| tinyurl.com | TinyURL | 11 | 12 | .com |
Where to get the code
Every link has one at its own URL. The .qr suffix returns a PNG sized for screens; the .svg suffix returns vector output for print. Size and colours are query parameters, which means a campaign with two hundred links can fetch two hundred codes from a script rather than from a download button.
Images are cached at the edge for a day, so a code printed on fifty thousand flyers costs nothing to serve when they all get scanned in the same week.
Editable after printing
This is the part a static QR generator cannot do. Encoding a destination directly into a QR freezes it in ink. Encoding a short link instead means the destination can be edited afterwards and every printed copy follows.
That is worth spelling out because it is the entire reason to combine a shortener and a QR generator rather than using a standalone generator: the code stays valid while the thing behind it moves.
The trap is expiry. A QR pointing at an anonymous 30-day link is a dead QR a month later. Anything going to a printer needs a link that does not expire, bought before the file is sent.
Scans against clicks
A visit through the QR endpoint is recorded as a scan rather than a plain click. That single distinction is what makes print measurable: put a different link on each poster location and the report tells you which wall works.
Print checklist
Use the SVG
A resized bitmap is where most unscannable codes come from.Two centimetres minimum
More for anything read from further than arm's length. Roughly one tenth of the scanning distance is a reasonable rule.Keep the quiet zone
Four modules of clear space on every side. Bleeding artwork into the code kills it.Keep the contrast dark on light
Inverted codes fail on a lot of scanners. Dark modules on a light ground is the safe choice.Test the proof, not the screen
Two different phones, on the actual printed piece, before the run.
Related: QR codes for print, QR code size and scan distance, and the QR product page.
Questions people ask
Where is the QR code for a link?
At the link's own URL with a suffix. The .qr form is a PNG for screens and the .svg form is vector for print. Both take query parameters for size and colours, so a build script can fetch a whole campaign's codes.
Does a shorter link really make a better QR code?
Yes, and it is arithmetic rather than opinion. QR encodes a fixed number of characters per version, and fewer characters means a lower version with fewer modules. Fewer modules at the same printed size means larger squares, which survive bad light, cheap printing and distance.
Are scans counted separately from clicks?
Yes. A visit arriving through the QR endpoint is recorded as a scan, so a poster and a newsletter can be compared instead of being added together into a number that means nothing.
Can I put a logo in the middle?
On paid plans, with error correction kept high enough that the logo does not break the read. A logo always costs some of the redundancy the code uses to survive damage, so keep it small and test the printed proof.