Skip to content
Free tools Redirect Checker

Redirect Checker — trace every hop, status code and header

See the full redirect chain for any URL — 301s, 302s, loops, timing and the final status — as a browser, Googlebot or an AI crawler sees it. Check 20 URLs at once, or verify a whole migration redirect map.

100% free No signup Bulk: 20 URLs Googlebot & AI user agents Migration map check

How it works

  1. Paste a URL, a list or a redirect map

    One URL, up to 20 at once, or "old URL → new URL" pairs from a site migration (CSV, tabs or arrows all work).

  2. Every hop, as the crawler sees it

    We follow each redirect ourselves and record its status code, Location, timing and headers — as Chrome, an iPhone, Googlebot, Bingbot, GPTBot or ClaudeBot.

  3. Fix what matters

    Loops, long chains, temporary redirects, https downgrades and dead ends are explained in plain English — and migration maps get a pass/fail per row with CSV export.

What a redirect checker shows you

When you type a URL, the server often answers "not here — go there" before any page loads: from http:// to https://, from example.com to www.example.com, from an old page to its replacement. Browsers follow those redirects so quickly you never see them, which is exactly why broken, slow or wrong redirects go unnoticed. This checker follows the chain one hop at a time and shows every step: the status code, where it points (the Location header), how long it took — split into connection, TLS and server time — and all the response headers.

Reading the status codes

  • 301 Moved Permanently and 308 Permanent Redirect — the page has moved for good. Search engines transfer its rankings to the new URL. A 308 also obliges the browser to repeat the same method (POST stays POST).
  • 302 Found, 303 See Other and 307 Temporary Redirect — temporary. The old URL may stay in search results and keep its credit. Right for login, language and campaign redirects; wrong for a page that has moved permanently.
  • 200 OK — the chain ended on a real page. This is what every chain should end with.
  • 404 Not Found and 410 Gone — a dead end. Links and rankings that pointed at the first URL are lost.
  • 403, 429 and 503 — the server, or a firewall in front of it, refused the request. The checker names the culprit when it can recognise it (Cloudflare, Akamai, Imperva, Sucuri, DataDome, AWS WAF).
  • 5xx — the destination is failing. Search engines slow down crawling and eventually drop pages that keep erroring.

What the checker flags

Loops and chains

A loop — rule A sends visitors to B and rule B sends them back — breaks the page entirely with "too many redirects". It's usually two layers disagreeing: a CDN that talks to your server over http while the server forces https, or one rule adding a trailing slash while another removes it. Chains of three or more hops don't break anything, but each hop is another round trip on a mobile connection, and Googlebot stops following after ten. Point the first URL straight at the final one.

Temporary where it should be permanent

The most common SEO mistake in redirects: a page moved for good with a 302. Search engines may keep indexing the old URL and won't fully credit the new one. If the move is permanent, make it a 301 or 308.

Downgrades, hosts and the final page

The checker warns when a redirect drops from https to http, confirms when http:// is upgraded to https://, and shows which host is canonical (with or without www). On the page the chain ends at, it reads the <meta http-equiv="refresh"> tag (a browser-side redirect), the meta robots tag and X-Robots-Tag header (a noindex there hides the page from search), and the canonical link, which may point search engines somewhere else entirely.

Check as Googlebot, GPTBot or an iPhone

Servers don't always treat every visitor the same. A mobile redirect may only fire for a phone, a firewall may block AI crawlers by user agent, and a misconfigured rule may send bots somewhere humans never go — which search engines treat as cloaking. Switch the user agent to Googlebot, Bingbot, GPTBot, ClaudeBot, PerplexityBot or an iPhone and compare the chains. One honest caveat: the real crawlers request pages from their own networks, and some firewalls verify bots by IP address, so a block that only appears for a crawler user agent can also mean "impersonators are blocked".

Bulk mode: up to 20 URLs

Paste a list — your key landing pages, every variant of the home page, the URLs from a sitemap — and get a table with each chain's status codes, final URL, time and verdict. Expand any row to see every hop, or export the whole table as CSV.

Migration map mode: verify a redirect plan

Site migrations live or die by their redirects. Paste your redirect map as "old URL, new URL" pairs — exported from the spreadsheet, CSV or tab-separated, or with arrows — and each row is judged on its own:

  • Pass — the old URL answers with a permanent redirect and lands, with a 200, on the expected page.
  • Wrong target — it redirects, but somewhere else (often the home page, which search engines treat as a soft 404).
  • Temporary — right destination, but via a 302 or 307.
  • Chain or slash differs — right destination, reached through extra hops.
  • No redirect or broken target — the old URL still serves its old page, or the new one returns an error.

Problems come first, and the result exports as CSV for the client or the developers. Relative paths like /blog/old-post are resolved against the site address you give (or the first full URL in the list).

Related tools

If a hop fails with a certificate error, the SSL Certificate Checker explains why. The Robots.txt Tester tells you whether crawlers may fetch the final URL at all, and the SEO & AI Visibility Audit reviews the page the chain ends on.

Redirects break later. Monity catches it.

Redirects that work on launch day break later: a CMS update rewrites the rules, a plugin is removed, a CDN setting changes. Monity re-checks your important URLs on a schedule and alerts you in email, Slack or Teams when a status code changes — a 301 that becomes a 404 — when the canonical URL changes, or when a page turns noindex. Set it up for the weeks after a migration and you'll hear about a broken redirect before your rankings do. The free plan watches three URLs, forever.

FAQ

Common questions

What's the difference between a 301 and a 302 redirect?

A 301 says the page has moved for good: search engines transfer its rankings to the new URL and drop the old one. A 302 (and 307) says the move is temporary: the old URL may stay indexed and keep the credit. 308 is the permanent version of 307 — like a 301, but the browser must repeat the same request method, which matters for forms and APIs. For moved pages, use 301 or 308; keep 302 for things like login, language or campaign redirects.

How many redirects are too many?

One is ideal, two is common (http → https → www), three or more is a chain worth fixing: every hop is another round trip on a slow mobile connection, and Googlebot gives up after ten. Loops — two rules sending visitors back and forth — break the page outright with "too many redirects". The fix is almost always to send the first URL straight to the final one and update internal links.

How do I check all my redirects after a site migration?

Use the Migration map mode: paste your redirect plan as "old URL, new URL" lines (exported from a spreadsheet works). Each row passes only when the old URL answers with a permanent redirect and lands on the expected page with a 200. Wrong targets, 302s, chains, trailing-slash mismatches and 404s are flagged, problems first, and the whole result exports as CSV for the client or the dev team.

Why does the chain differ for Googlebot or GPTBot?

Some servers, CDNs and firewalls treat crawlers differently: a bot rule that blocks AI crawlers, a mobile redirect that only fires for a phone user agent, or a misconfigured rule that sends bots somewhere else (which search engines call cloaking). Switching the user agent shows those differences. One caveat: real Googlebot and GPTBot requests come from those companies' own networks, and some firewalls verify that, so a block here can also mean "impersonators blocked".

Does it detect JavaScript and meta refresh redirects?

Server redirects (301, 302, 303, 307, 308) are followed hop by hop. On the page the chain ends at, a <meta http-equiv="refresh"> redirect is detected and reported, along with its noindex and canonical tags. Redirects done in JavaScript need a real browser to run the page — that's what Monity's monitors use.

Can Monity watch my redirects for me?

Yes. Monity checks your important URLs on a schedule and alerts you in email, Slack or Teams when the HTTP status changes (a 301 that turns into a 404 after a deploy), the canonical URL changes, or a page becomes noindex — ideal for the weeks after a migration. The free plan includes 3 monitors forever.

Powered by Monity

Redirects break quietly — a deploy, a plugin, an expired rule.
Monity tells you the same day.

Monity watches your key URLs and alerts you when a status code, canonical or indexing tag changes — before the traffic graph does.

  • Free 7-day trial
  • No credit card
  • 3 monitors free, forever
Kamil, Alex and Martyna Median reply under 6 hours

Have a question?

Pricing, security, or scoping - pick a route and you will land in a real person's inbox.