How it works
A redirect is an HTTP response with a status code between 300 and 399 and a Location header naming the new target. 301 and 308 mean “moved permanently”, 302 and 307 “moved temporarily”; 307 and 308 also require the client to keep the request method (RFC 9110).
Chains usually grow over time: http://example.com redirects to https://example.com, which goes to https://www.example.com, which in turn sends you to a language version like /en/. Every hop costs another round trip, often with a fresh connection and TLS handshake.
The goal is for all four variants – http and https, with and without www – to reach the same canonical HTTPS URL in at most one redirect. When a chain loops back on itself, it becomes a redirect loop and browsers give up with an error page.
Why it matters
Long chains noticeably delay the first render, especially on mobile, and drag down load times that feed into Core Web Vitals. Search engines only follow a limited number of redirects and spend crawl budget on every intermediate hop.
Broken chains are worse than long ones: a variant that does not redirect at all, a hop over plain http that undermines HSTS, or a destination that ends in a 404 or 500. Inconsistent targets also split links and rankings across several URLs.
How to prevent it
- Pick one canonical URL, such as https://www.example.com/, and send every other variant there in a single step.
- Use 301 or 308 for permanent moves, and 302 or 307 only when the old URL is genuinely coming back.
- Keep redirect rules in one place, the web server or the CDN, instead of spreading them across host, CMS and plugins, which is where most double hops come from.
- After every migration, host change or CDN switch, test all four variants: http and https, each with and without www.
- Update internal links, canonical tags and the sitemap to the final URLs so nothing needs redirecting in the first place.
How DomainWarn detects it
The Redirects check requests http://, http://www., https:// and https://www. once a day (for a subdomain, only http and https of that host) and expects all of them to end at the same HTTPS URL. Unreachable variants, a missing redirect to https, an error status at the end and inconsistent targets open the incident “Redirects broken”. Chains of three or more redirects and temporary redirects (302, 307) are informational notes, and a change of the canonical URL is reported as a warning.
On every run, the Website monitor also flags an HTTPS URL that redirects to http:// (incident “Redirect to HTTP”), chains of three or more hops and URLs that redirect too many times. The Website check, which crawls the sitemap and internal links, points out sitemap URLs that redirect themselves.
DomainWarn checks this for all your domains on a schedule and alerts you when something is missing or changes.