Honest about browser limits

Redirect Chain Visualizer

Check whether a URL redirects, see what your browser can and can't reveal about it, or paste your own hop list to render a clean step-by-step redirect diagram.

Live URL check

Enter a URL to test it directly from your browser.

Browsers deliberately hide the destination of a manually-inspected redirect (an "opaqueredirect" response) as a security measure. This tool reports that honestly instead of guessing, and separately checks whether an automatic redirect-follow reveals a different final URL.

Paste your own hop list

Paste URLs one per line, or raw curl -IL output — Location headers are extracted automatically.

🛡

Honest by design

When a destination is hidden by browser security, this tool says so instead of faking data.

Two ways to trace

Try a live check first, then fall back to a pasted hop list for the full chain diagram.

📄

Reads curl output

Paste raw curl -IL text and Location headers are pulled out automatically.

How to use the redirect chain visualizer

Start with the live check, and use the hop list tool whenever the browser can't tell you enough.

  1. Try the live checkEnter a URL and click Check to see what your browser itself can determine.
  2. Run curl -IL if neededWhen the destination is hidden, run curl -IL on that URL in a terminal for the full chain.
  3. Paste the hop listPaste the resulting URLs (or the raw curl output) below to see a clean visual diagram.

Why full client-side redirect tracing isn't possible

A browser's fetch API gives JavaScript exactly two options for a cross-origin redirect: follow it automatically and only see the final URL, or inspect it manually and receive an opaque "opaqueredirect" response with the status, headers and destination all hidden. Neither option lets a webpage walk through every intermediate hop the way a command-line tool can, because that information could otherwise be used to fingerprint or snoop on requests the browser is making on the user's behalf.

Manual redirect mode

fetch(url, {redirect: 'manual'}) confirms a redirect exists via response.type === 'opaqueredirect', but reveals nothing about where it points.

Automatic follow mode

A normal fetch() follows every hop silently and exposes only response.url, the final destination — not the path taken to get there.

curl -IL from a terminal

Running outside the browser sandbox, curl can print every hop's status code and Location header in one command with full visibility.

The hop list tool

Since the data curl provides is exactly what a diagram needs, this page's second tool turns pasted hops into a clean visual chain instead of re-fetching anything.

Redirect chain visualizer FAQ

Questions about browser limits, curl and how the hop list parser works.

Why can't this tool show me the full redirect chain automatically?

When JavaScript asks a browser for a manual, unfollowed redirect response, the browser deliberately returns an opaque "opaqueredirect" result that hides the destination URL, status code and headers. This is a security feature, not a bug, and no client-side script can bypass it.

What does "this URL redirects but the destination is hidden" mean?

It means the manual-redirect fetch confirmed a redirect is happening (the browser reported an opaqueredirect response), but the browser's security model prevents this page's JavaScript from reading where it points.

How do I see the full redirect chain then?

Run curl -IL https://example.com/your-url from a terminal. It prints every hop's status code and Location header outside the browser sandbox. You can then paste that output, or just the URLs from it, into the hop list tool below to get a clean diagram.

What format does the hop list tool expect?

One URL per line works directly. It also understands raw curl -IL output: any line starting with Location: has its URL extracted automatically, so you can paste the whole terminal output without cleaning it up first.

Is my URL sent anywhere besides the site I'm checking?

No. The live check makes requests directly from your browser to the URL you enter, with no proxy or server in between. The hop list tool never makes a network request at all; it only formats text you paste.