How-to guide

How to Check HTTP Redirects

To check redirects, enter a URL into a redirect checker. It requests the URL, follows each Location header and reports every hop with its status code until it reaches a final response. Look for chains of more than one hop, mixed 301 and 302 responses, and loops. Each extra hop costs latency for visitors and crawl budget for search engines.

URL Redirect Checker

Follow a redirect chain and see every hop.

Open the tool

Redirect problems are invisible from a browser, because the browser quietly follows the chain and shows you the destination. A URL that takes four hops and a URL that takes one look identical to a person and very different to a crawler.

The distinction that matters most is 301 versus 302. A 301 is permanent and tells search engines to transfer ranking signals to the new URL. A 302 is temporary and tells them to keep the old one indexed. Using 302 for a permanent migration is one of the most common and most costly SEO mistakes.

Step by step

  1. Enter the full URL

    Include the scheme. http:// and https:// frequently behave differently, and testing the wrong one hides an entire hop of the chain.

  2. Read every hop, not just the destination

    The report lists each URL and the status it returned. The interesting information is in the middle of the chain, not at the end.

  3. Count the hops

    One hop from old URL to final destination is the goal. Two is tolerable. Three or more is worth fixing: each adds latency for every visitor and consumes crawl budget on every crawl.

  4. Check 301 against 302

    Permanent moves should return 301 (or 308 to preserve the request method). A 302 on a permanent migration keeps the old URL indexed and holds ranking signals on a page you no longer want.

  5. Watch for the http-to-www double hop

    A very common pattern is http://example.com to https://example.com to https://www.example.com. That is two hops where one would do. Redirect straight to the final canonical origin in a single rule.

  6. Confirm the destination returns 200

    A chain that ends in a 404 or a soft 404 is worse than no redirect at all, because it wastes the crawl and gives the visitor nothing.

Example

A three-hop chain that should be a single hop straight to the canonical HTTPS www origin.

Starting URL

http://example.com/old-page

Chain

301  http://example.com/old-page
     → https://example.com/old-page
301  https://example.com/old-page
     → https://www.example.com/old-page
301  https://www.example.com/old-page
     → https://www.example.com/new-page
200  https://www.example.com/new-page

Frequently asked questions

What is the difference between 301 and 302?
A 301 is permanent: search engines update their index to the new URL and transfer ranking signals. A 302 is temporary: they keep the old URL indexed. Use 301 for migrations and 302 only when the original really will return.
How many redirects are too many?
One hop to the destination is the goal and two is tolerable. Beyond that you are paying latency on every request and crawl budget on every crawl. Most browsers give up somewhere around twenty hops, but the practical limit is far lower.
What are 307 and 308?
They are the method-preserving equivalents of 302 and 301. A 301 or 302 may cause a client to convert a POST into a GET; 308 and 307 guarantee the original method and body are preserved, which matters for APIs.
Why does this run on your server?
A browser cannot read the headers of a cross-origin response or observe another site's redirect chain — the same-origin policy prevents it. Our server makes the requests and reports what it saw.
Can I check a URL behind a login?
No. The checker makes an unauthenticated request, so a protected URL will report whatever it returns to an anonymous visitor — typically a redirect to a login page, which is itself useful to see.

Tools used in this guide

All tools →
All guides →

Last reviewed .