What you are seeing
This fix replaces the stale destination with current content and protects the code against the next update. You will check what the code points at, find the current content, and either update the page or redirect the code to the live version. Verify the final page shows current content on two phones, not just that it loads.
Likely causes
1.
Code points at a frozen campaign page — Quick test: compare the page content with the current offer or notice.
2.
Redirect still points at an old page — Quick test: follow the redirect chain to the final page and check its content.
3.
Cached page served to visitors — Quick test: open the page in a private window and compare it with the edited version.
4.
Code reused from an old campaign — Quick test: check the artwork history and the destination it encodes.
5.
Content updated in one place but not the other — Quick test: compare the QR destination with the current source of truth.
Step-by-step fix
Step 1: Decode the payload and open the destination. Write down what is outdated.
Step 2: Find the current content and its correct address.
Step 3: If the page is meant to be live, update its content and confirm the update is published.
Step 4: If the content has moved, add or update a redirect from the old address to the current page.
Step 5: Check the cache: open the page in a private window and confirm the updated content appears.
Step 6: If the code was reused from an old campaign, regenerate it from the current destination.
Step 7: Retest on two phones and confirm the final page shows current content, not just that it loads.
Putting this into practice
In practice, point printed codes at pages you update in place rather than at campaign pages you replace. A stable page that you refresh survives far longer than a campaign page that goes stale. Record the before-and-after behaviour with the job file, so the fix is provable rather than anecdotal. When the same failure appears again, that record tells you whether the old fix held or a new cause appeared.
Common mistakes to avoid
- Reprinting a code that points at a campaign page nobody owns, so the content goes stale again within weeks.
- Reprinting the full run before a single proof passes, which turns one failure into many.
- Testing on one phone in ideal conditions instead of two phones in the real conditions where a code that shows an outdated page will be used.
- Changing the artwork and the placement at the same time, so you cannot tell which change fixed a code that shows an outdated page.- Skipping the proof test because the change looked small, when small changes cause most repeat failures.
Quick checklist
- The final page shows current content on two phones
- Redirects point at the current page
- The destination has an owner and a review date
- The corrected proof passes on two phones in the real conditions
- The fix is recorded in the job file so the next reprint starts from a proven setup
- Every printed copy is checked against the approved proof
- The proof is retested after any later change to the link, design, or placement
Related tools and guides
- [QR redirect chain viewer](/qr-redirect-chain-viewer)
- [QR expiry checker](/qr-expiry-checker)
- [QR batch validator](/qr-batch-validator)
- [QR typosquat checker](/qr-typosquat-checker)
- [QR safety checker](/qr-safety-checker)
- [UTM builder](/utm-builder)
- [blog](/blog)