HTTP redirect status codes

When a server wants to send a browser to a different URL, it answers with a redirect status code. The differences between them, permanent vs temporary and cached vs not, are exactly what decide whether a dynamic QR code can be repointed later. Here's how the four common ones compare.

Code Meaning Cached by browsers? How TangoQR uses it
301 Moved Permanently The resource has a new permanent home Yes, cached hard Avoided on the redirect spine; caching would pin a stale destination
302 Found Temporary redirect to another URL No, by default Every scan; keeps the destination editable forever
307 Temporary Redirect Like 302, but keeps the HTTP method No Not needed; a scan is a simple GET
308 Permanent Redirect Like 301, but keeps the HTTP method Yes Not used; same permanence problem as 301

The takeaway: an editable code must answer with a 302, never a 301, or browsers and edge caches would lock onto whatever destination was set first. That's a small but load-bearing choice behind "print once, repoint forever." See HTTP redirect in the glossary for the longer explanation.

See also

Make a QR code you can change later

Every TangoQR code is an editable redirect, free to start. Print once, repoint forever.

Make your first code, free

← All reference tables