Redirect Checker
Free individual check · without registration
Check forwards (301/302/307/308) and the final destination URL. They see the complete redirect chain, status codes per hop, optional canonical – and recognize typical SEO traps such as HTTP→HTTPS, www/non-www, loops and too many redirects.
- For permanent removals: 301 or 308 use (308 = permanent, method is preserved).
- Avoid chains: ideal max. 1 Hop.
- Final Target URL Should Be 200 Deliver and be self-canonical.
- Redirect chain (up to Max-Hop-Limit)
- Status codes per hop (2xx/3xx/4xx/5xx)
- Final Target URL + “Is Final Reachable?”
- HTTP→HTTPS & www/non-www
- Redirect loop detection
- Canonical of the final page (optional)
- Timing (TTFB/total per hop, optional) (unavailable for blockers)
- CSV Export of the chain
| Hop | Status | URL |
|---|---|---|
| — | ||
| Hop | Status code | From | After | Note: |
|---|---|---|---|---|
| No data yet. | ||||
What is a redirect?
One Redirect (forwarding) Redirects one URL to another automatically – e.g. HTTP→HTTPS, www→non-www, when moving content or after a relaunch. Important for SEO: Redirects should be clean and as possible Without chain be implemented.
Why Are Redirect Chains Bad?
Each additional forwarding takes time (TTFB), increases susceptibility to errors and can waste crawl budget.
In addition, signals (Links, Canonical, Hreflang) can be diluted or contradicted on the go. The ideal is: 1 Redirected from old → new, afterwards 200.
Which status codes are relevant?
301/308 = permanent, 302/307 = Temporary. For permanent removals is usually 301/308 correct. Temporary (e.g. A/B test, maintenance, geotargeting) rather 302/307.
- 301/308 = durable (Standard for relaunch/migration).
- 302/307 = Temporary (only if really wanted, e.g. short-term tests).
- The final status counts: Ideal 200 and self-canonical. 4xx/5xx At the end = problem.
- Client-side redirects (JS/Meta Refresh) are often worse for SEO than server-side 301/308.
Canonical and Redirects
The final page should ideally be canonical on itself. If Canonical points to another URL, this can be a signal conflict (Redirect says A, Canonical says B).
Redirect status codes at a glance
These codes are typically seen in redirect chains. Important: For SEO, not only the code is crucial, but also Chain length, Final status and Canonical.
| Status | Name of name | Significance | SEO classification | Typical traps |
|---|---|---|---|---|
| 301 | Moved Permanently | Persistent forwarding (old → new). | Best practice for relaunch/migration. | Chains (several 301), wrong target, final URL delivers 4xx/5xx. |
| 308 | Permanent Redirection | Permanent – Similar 301, method-stable. | Also included very good for permanent removals. | CDN/WAF mixes rules → unexpected chains. |
| 302 | Found | Temporary forwarding. | Only use when really Temporary (e.g. short test). | Often “accidentally” active (relaunch) → SEO signals inconsistent. |
| 307 | Temporary Redirect | Temporary – method stable. | OK for Temporary Diversions, not for migration. | Used with login/consent/geo-redirects → can affect crawlers undesirably. |
| 303 | Sea Others | Often by forms/POST → GET. | SEO mostly neutral, but in redirect chains rather Technical signal. | Hidden sometimes “workarounds” – check if the goal is really final. |
| Meta/JS | Client side | Redirect in HTML or via JavaScript (no HTTP redirect). | Often for SEO Deteriorated as server-side (slower, more insecure). | Tools often do not see this (server side). Better: 301/308 on the server. |
Shortening a forwarding chain to a jump
Practical example · for illustration
Starting position
Start with http://example.org/alt, even if the browser already displays an HTTPS target.
Classify the findings
The chain could contain HTTP → HTTPS /old → /new. The last status and each interhop belong to the finding.
Specific amendment
Forward the old version directly to https://example.org/neu and change internal links to the final URL.
Control and border
Check the original input again. For loops, the conflicting server or CMS rules must be corrected.