CANON

URL Canonicalizer

Compare URLs using a fixed normalization rule

SEO & Schema
🔒 100% client-side — your data never leaves this page
Maintained by Evan•Updated: September 29, 2026
Options
URL Input

Enter complete URLs, one per line, to apply fixed query-key and trailing-slash rules. Results do not determine a site’s canonical URL.

Normalized URLs
Normalized URLs will appear here
🔒 Processed locally in your browser
Page reading mode

The full guide also includes pitfalls, worked examples, snippets, FAQs, and related tools for checking results or troubleshooting.

About this tool

Compare complete URL strings under a fixed rule: normalize host syntax, remove selected tracking fields, sort query names and remove one trailing slash from non-root paths. Repeated query values and fragments remain. Output updates as you type; invalid lines carry an INVALID marker. This produces normalized strings for review, not a decision about which URL a search engine should index. Local input drafts are removed with Clear.

Failure Clinic (Common Pitfalls)

A normalized address points to a different resource

Cause: Some sites distinguish /docs from /docs/, depend on query order, or sign the original query bytes. This rule changes those representations and offers no per-rule switches.

Fix: Use the original address when those distinctions matter. Normalization alone cannot establish that two resources are equivalent.

Production Snippets

A fixed normalization rule with visible boundaries

text

Input:
HTTPS://Example.COM:443/docs/?b=2&a=1&a=0&utm_source=mail#intro

Output:
https://example.com/docs?a=1&a=0&b=2#intro

Repeated a values and #intro remain.
/docs/// becomes /docs// in one run; the root / remains /.

Scenario Recipes

01

Compare two exported address variants

Goal: See whether host casing, tracking fields or query-key order explain a difference.

  1. Paste complete URLs on separate lines; this tool requires an explicit scheme such as https://.
  2. Compare the resulting lines. The fixed rule sorts names, preserves repeated values, and removes one non-root trailing slash.
  3. Check your site’s actual routing and redirects before using a normalized address in a canonical tag or redirect rule.

Result: Equal output means the strings converge under these rules. The tool does not fetch pages, compare content, follow redirects or choose Google’s canonical URL.

Frequently Asked Questions

Which tracking names are removed?

Names starting with utm_, plus the exact names fbclid, gclid and msclkid, ignoring case. Names such as gclid_extra remain.

Are repeated query keys deduplicated?

No. All values are retained in their original relative order within the same key. Sorting uses the browser’s locale comparison for names, so it is not a cryptographic canonicalization algorithm.

What encoding changes can normalization make?

URLSearchParams reserializes the query: spaces become +, a flag without = becomes flag=, and some characters are percent-encoded. The browser also normalizes hostnames and default ports.

What do Basic and Advanced change?

Both use the same fixed rule. Advanced reveals scenarios and invalid-line details; it does not add sorting, deduplication or slash-policy controls.

Keep browsing