The yard sign that outlived its landing page
Printed pieces cannot be recalled, and they are still being scanned long after the page they pointed at is gone. How Tag Docket's short codes are built for that: 302 not 301, retargeting that keeps the tagging, and a retired page that tells the person their phone is fine.
A yard sign goes into the ground in April with a QR code on it. The code points at a spring promotion page. In June the promotion ends and the page comes down, because it should. The sign stays in the ground, because nobody goes round collecting them. Somebody walks past it in August, points their phone at it, and gets an error.
That person does not think the promotion ended. They think the sign is broken, or their phone is. And the agency never hears about it, because a failed scan does not show up anywhere.
A digital ad can be paused. An email can be followed by another email. A printed piece cannot be recalled: once it is on a sign, a mailer or a flyer, it will be scanned for as long as it physically exists. Tag Docket’s short codes are built around that one fact, and almost every decision about them follows from it.
Why a short code at all
The honest answer is geometry, not vanity.
A QR code gets denser as the text inside it gets longer. A fully tagged URL, with its destination and five UTM parameters, is a long piece of text. Measured on a real link, printed 30cm wide for a three-metre scan distance, the full tagged URL needed a 61x61 grid, which works out to modules 4.92mm across. The same link as a Tag Docket short code needed a 33x33 grid, and the modules came out at 9.09mm.
Bigger modules are what let a phone read a sign from the pavement instead of from the lawn. That difference is the whole reason short codes exist in the product. It is also why they live on app.tagdocket.com/r/ rather than on a branded domain of your own: we do not offer custom short domains, and the short codes are there for print, not for looking tidy in a caption.
The characters were chosen for print too. Codes never use 0 or O, 1, I or L, or U, because a code printed on paper eventually gets read aloud or typed in by hand from a photo, and every ambiguous pair is a phone call.
Moving the destination without moving the tagging
Back to the sign in August. The spring page is gone, but the business still wants that scan. The fix is to point the code somewhere else: the current offer, or the homepage.
In Tag Docket that is retargeting, and it does one thing. It moves the destination and leaves the tagging alone. The person who scans in August lands on the new page carrying the same campaign parameters the sign was minted with, so GA4 keeps crediting the spring yard-sign campaign, which is the truth. A mailer already sitting in ten thousand letterboxes follows the same way.
The alternative, minting a new link, is no use here. You cannot print it onto the sign that is already in the ground.
Why 302 and never 301
This is the least visible decision and the one that most needed getting right.
A 301 redirect tells the phone, and anything between the phone and us, that the move is permanent and can be remembered. That sounds harmless until you retarget. Everybody whose phone cached the old answer keeps going to the old page, however many times you change it.
So every short code answers with a 302 and tells the browser not to store the answer. Each scan asks fresh. Retargeting works for the people who scanned in April as well as the people who have not scanned yet.
Disabled, never deleted
Sometimes the right answer is that a code should stop going anywhere at all: the client’s business changed, the offer was a mistake, the sign was meant to come down. Tag Docket lets you retire a code. It will not let you delete one.
The printed pieces still exist, and someone will scan one. The record of where that code pointed, who made it and when it was switched off has to outlive the decision to switch it off, or the next person to ask “what was on that postcard?” gets no answer.
The same goes for clients. When a client is retired in Tag Docket it is archived, not deleted, and its codes keep resolving. A sign in the ground does not know its client was tidied up.
The page that says your phone is fine
When a retired code is scanned, the person gets a small, plain page. It is built with no stylesheet, no font and no script, because it is being opened outdoors, on one bar of signal, by someone who has just been given a reason to think something is broken.
It says the link has been retired, and that their phone is fine. That second part is the question they are actually asking. A blank page or an error code answers neither.
Before the print run
Most of the trouble with printed codes is settled before anything is printed, so Tag Docket’s QR tools give print advice alongside the code: the grid size, the minimum printed width for the distance someone will scan from, and the module size in millimetres, with a warning when that drops below what ordinary print holds. Error correction is chosen for you by surface. A yard sign gets the highest level because it has a season of rain ahead of it; a screen gets the lowest because it does not. The quiet border around the code is kept, because a designer who crops to the black edge ships a code that works on their monitor and fails in the field.
A QR is always rendered from the link exactly as it was minted, tagging included, and it is refused outright for any link that still contains an unfilled platform macro. That is one mistake a reprint cannot undo.
What the sign needs from you
If your agency puts codes on anything physical, it is worth asking where last spring’s codes point today, and who could change them if they had to. If the answer is “a spreadsheet, and whoever made them”, the signs are fine until the day a page comes down.
Tag Docket keeps every code, where it points, and who can move it, in one place. You can read more about how short codes and QR work, or request access if you would like to see it with your own clients’ links.