Decoded URL
{{ urlObj.hostname }}
{{ seg }}
KeyValue
{{ p.key }} {{ p.value }}
Scheme{{ urlObj.protocol.replace(':','') }}
User info{{ urlObj.username ? urlObj.username + ' : ' + urlObj.password : '—' }}
Host{{ urlObj.hostname }}
Port{{ urlObj.port }}
Path{{ urlObj.pathname || '/' }}
Fragment{{ urlObj.hash.slice(1) }}
Total length{{ decodedOutput.length }} chars
encodeURIComponent{{ onceEncoded }}
Double-encoded{{ twiceEncoded }}
Base64{{ base64 }}
URL-safe Base64{{ urlSafeB64 }}

Introduction:

URL encoding represents unsafe characters with percent-escaped sequences so links survive transport through e-mail, messaging, and server logs without corruption or misinterpretation.

You paste any encoded link, toggle decoding and canonicalisation options, then a reactive engine reverses nested encodings, removes trackers, normalises the host, and returns a clean, human-readable URL.

Shareable, analytics-free links help newsletters, social posts, or research notes stay concise and trustworthy—always verify unfamiliar addresses before opening them.

Technical Details:

Concept Overview

Uniform Resource Identifiers (RFC 3986) encode non-ASCII and reserved characters using %HH hex pairs. Decoding reverses this mapping, while canonicalisation enforces reproducible host, path, and query formats so identical resources resolve to one definitive address.

Core Process

  1. Iteratively apply decodeURIComponent until the string stabilises or the user-set depth limit is reached.
  2. If requested, strip marketing parameters (e.g. utm_* , fbclid).
  3. Convert Punycode hosts to Unicode for readability (xn-- → ☃ form).
  4. Apply canonical rules: lowercase host, trim trailing slash, remove www., sort query pairs, and optionally drop fragments.

Interpretation Bands

Output FeatureIndicative Meaning
No query stringResource has no parameters or all trackers removed
Mixed-case hostCanonicalisation unchecked; original casing preserved
Non-ASCII hostIDN converted successfully to Unicode
Fragment droppedUser opted to omit in-page anchors

Each feature highlights how aggressively the tool sanitises and consolidates link variants.

Parameters

ParameterMeaningTypical Range
multiDecode up to eight nested levelsBoolean
cleanRemove common tracking keysBoolean
idnConvert Punycode host to UnicodeBoolean
stripFragmentDiscard # and followingBoolean
sortParamsAlphabetise query pairsBoolean

Worked Example

Input: https%3A%2F%2Fwww.example.com%2Fsearch%3Futm_source%3Dnews%26q%3Dvue

Step 1 – Decode: https://www.example.com/search?utm_source=news&q=vue

Step 2 – Strip trackers: https://www.example.com/search?q=vue

Step 3 – Canonicalise: https://example.com/search?q=vue

Assumptions & Limitations

  • Decoding limit of eight iterations avoids runaway loops.
  • Unicode conversion relies on browser support for Punycode library.
  • Tracker list covers common campaign tags, not bespoke keys.
  • Canonical rules follow mainstream SEO guidelines, not strict RFCs.

Edge Cases & Error Sources

  • Malformed percent sequences halt decoding early.
  • Spaces encoded as + inside legacy query strings.
  • Non-HTTP schemes (mailto, data) are skipped by canonical rules.
  • Internationalised paths remain percent-encoded per standard.

Scientific Validity & References

Process aligns with RFC 3986 (URI Generic Syntax), WHATWG URL Living Standard, and SEO canonicalisation best practices discussed in ACM DL “Reducing Duplicate Web Content”.

Privacy & Compliance

All transformations run client-side in memory; no personal data leaves the browser and no storage occurs, supporting GDPR principles of data minimisation.

Step-by-Step Guide:

Follow this concise procedure to decode and clean your link.

  1. Paste or type the encoded link into the Encoded URL field.
  2. (Optional) Click Advanced to reveal extra switches and set your preferences.
  3. Review the decoded result shown above the input; copy, open, or share it as needed.
  4. Switch between Info, Parameters, Components, and Encodings tabs for deeper analysis.
  5. If the result looks wrong, toggle Multi-level decode or check for malformed input characters.

FAQ:

Is my data stored?

No. All decoding occurs locally; nothing is transmitted or logged.

What is multi-level decoding?

Some links are encoded repeatedly; this option runs the decoder up to eight times until no further changes appear.

Can it handle non-HTTP schemes?

Yes, but canonical rules apply only to HTTP(S); other schemes are simply decoded.

Why strip trackers?

Marketing parameters reveal user behaviour; removing them creates cleaner, privacy-respecting links.

Does decoding affect link safety?

No transformation alters the destination server; always inspect the final host before visiting unfamiliar sites.

Glossary:

Percent Encoding
Replaces bytes with %HH hexadecimal pairs.
Canonical URL
Standardised form representing one resource uniquely.
Punycode
ASCII representation of Unicode domain names.
Query Parameter
Key–value pair after the ? in a URL.
Fragment Identifier
Section reference following # in a URL.

No data is transmitted or stored server-side.