Skip to content

Redirect Chain Tracer

Follows a shortened or tracking URL through every redirect and shows the final destination.

Follows a shortened or tracking link on our server and shows you where it lands, one redirect at a time, without opening it in your browser. For a link that arrived in a text message from a number you do not recognise, that difference is the entire point.

☁️ Uses our serverurlredirectshortenersafety

Our server makes this request for you. Only the URL you typed is sent to it — none of your cookies or login state goes along. The server will only connect to public addresses and refuses private and internal ones.

Our server follows the link so you do not have to open it. The click may still be counted once.

How to use it

  1. Paste the link without opening it

    Long-press and copy rather than tap. A bare host works — https:// is assumed.

  2. Read the chain from the top

    Each hop shows its status code, the kind of redirect, the address it resolved to and the time it took. A chain that passes through several unrelated domains is a normal ad-tech pattern and also a normal phishing one.

  3. Take the clean URL if you do want to visit

    The destination is also given with utm_*, fbclid, gclid and similar identifiers removed — the same page, without the identifier that ties the visit back to you.

Common questions

Does the sender know I checked?

They see one click, from our server, with no cookies and no device details of yours. The click counter goes up by one; what it records is us, not you.

It stopped partway with an error

The chain so far is still shown, which is usually the useful part. Common causes: more than five redirects, a hop that requires a real browser, or a destination on a private address — that last one the fetcher refuses outright.

Is the destination safe just because it resolved?

No. This tells you where a link goes, not whether what is there is trustworthy. A convincing lookalike domain resolves as cleanly as the real one — the point is that you now get to read the address before deciding.

Why does it not follow a JavaScript redirect?

The chain is read from HTTP status codes and Location headers only; no page is executed. A destination reached by script or a meta refresh is where the trail stops, and the last hop shown is the page that would have moved you.

Feed it from

Next

These accept what this tool produces, so the result can go straight in.