Lab · prototype · local-only

Legacy URL Mapper

Paste a list of old URLs. It normalises them, groups query-string patterns, flags duplicates and many-to-one collapses, and proposes a review status for each group. You export the CSV and make the decisions yourself.

Data residency Everything runs in your browser. Your URLs are never uploaded, logged or stored — there is no request to any server after the page loads, and nothing is written to local storage. Read the unminified source →

Before you paste anything

What it does, in five steps.

  1. 01NormaliseTrim; lowercase scheme and host; drop the default port; decode percent-escapes once; drop the fragment; sort remaining query parameters by name.
  2. 02Strip tracking, keep the recordKnown tracking parameters leave the grouping key but stay in the row, so nothing disappears silently. The list is editable and incomplete by construction.
  3. 03GroupBy path plus the sorted set of parameter names — the signature — not by parameter values.
  4. 04ClassifyDuplicate when two inputs normalise identically. Manual review when one group holds more than one distinct value set. Unambiguous when the group holds exactly one.
  5. 05ExportEvery field, including the reason for the status and a MANUAL REVIEW REQUIRED decision column, so the CSV is auditable outside this page.
What this tool will never tell you It does not fetch a status code, it does not know what any historical URL returned, and it cannot know which parameter values were meaningful. “Unambiguous” means the group collapsed cleanly — not that the target is correct. Every proposal is a proposal.

Run it

One URL per line. Absolute or path-only. Blank lines and lines starting with # are ignored.

The sample is nine lines chosen to produce all four statuses, including one line that cannot be parsed at all.

Limits

  • It groups by path plus the set of parameter names — not by what the page actually returned. Two URLs in the same group may have served different content.
  • It cannot know which historical parameter values were meaningful. ?script= matters; ?utm_source= does not. The tracking-parameter list is editable and incomplete by construction.
  • Redirect proposals are proposals. auto means the group collapsed cleanly to one target, not that the target is correct.
  • No status codes are fetched. This tool never touches the network.

Status legend

Unambiguous
One URL, one value set. Nothing collapses — but the destination still has to exist.
Duplicate
Two or more inputs normalise to the same address. Keep one canonical form and redirect the rest.
Manual review
Several distinct value sets share a path and signature. Collapsing them would be many-to-one — decide per value.
Unparseable
The line is not a URL or a path. It is counted, listed and carried into the export rather than dropped.