Extract URLs from Text
Paste messy text, an email, a log or HTML and pull out every link. Get URLs, domains or emails, dedupe and sort, copy or download. Everything runs in your browser.
Encode or decode URLs and query values — Component, Full URL or Form mode, single or batch. Decodes recursively, breaks a URL into its parameters, and runs entirely in your browser.
Percent-encode or decode URLs and query values — component, full-URL or form mode, single or batch, with a live URL breakdown. All in your browser.
processed in your browser · never uploaded
Encode or Decode, then a mode (Component is the safe default).
Type a value, paste a URL, or upload a .txt. It converts live.
Copy the output, download it, or Swap to run the result back the other way.
We ran the same files through the popular alternatives first. These are the gaps we found, and what this tool does instead.
Explicit Component / Full / Form / Auto modes with an inline hint on which to use.
test: Encode a whole URL in Full mode — the :// and ? survive; in Component they're escaped.Decoding a full URL shows a live breakdown with every query parameter decoded.
test: Decode a tracking link — q, utm_source and nested redirects appear in a readable table.Recursive decode unwinds every layer and reports how many.
test: Decode Hello20World with recursive on — you get "Hello World" and "decoded 2 levels".Reverse of any of the above
test: Reading an encoded linkA URL encoder decoder converts text to and from percent-encoding — the %XX form that lets a link safely carry spaces, accents, emoji and reserved characters like &, ? and #. Paste a value to encode it, or paste an encoded string to decode it back into readable text. Everything runs in your browser, so API keys, tokens and private links never leave your machine.
The most common URL-encoding mistake is picking the wrong mode, and this tool makes the choice obvious. Component encoding (encodeURIComponent) escapes every reserved character — use it for a single query-parameter value. Full URL encoding (encodeURI) keeps the structure of a complete link intact, escaping only unsafe characters like spaces. Form mode encodes the way an HTML form does, turning spaces into a plus sign. A short hint under each mode tells you which to reach for, so you never break a link by over-encoding it, and an Auto option picks the right one for you.
Decoding turns %20 back into a space, %C3%A9 back into an accented letter, and so on. When you decode a full URL, a live breakdown appears underneath: the scheme, host, port, path, fragment, and a table of every query parameter with its value already decoded. That makes this a fast way to read a messy tracking or callback link — you can see exactly what q, utm_source or a nested redirect actually contains, without picking the string apart by hand.
Sometimes a value has been encoded more than once, so a space shows up as %2520 instead of %20. Turn on recursive decoding and the URL encoder decoder keeps unwinding the string until the text stops changing, then tells you how many levels it peeled back. It is the quickest way to untangle a link that has passed through several systems, each one adding another layer of encoding on top of the last.
You reach for a URL encoder whenever data has to travel inside a link. Building an API request, you encode search terms, IDs and filters so a stray & or = cannot corrupt the query string. Sharing a link that contains a space or a non-English character, you encode it so it survives every browser, server and CDN along the way. Debugging a redirect, you decode the URL to read what it really points to. Marketing teams encode UTM values and campaign names so commas and spaces make it through the redirect chain unchanged. In every case the rule of thumb is the same: encode a component when in doubt, and only use full-URL encoding on a complete, already-valid link.
Work on one value or many. Batch mode encodes or decodes each line on its own, so a whole list of URLs or query values is converted in a single pass, with any malformed line clearly flagged. You can upload a .txt file or drop one onto the box, copy the result, or download it. Character, byte and encoded-sequence counts sit under the output, so you always know precisely what changed — handy when a single stray character is breaking a request.
Pulled a pile of links out of a document first? Extract URLs from Text does that, and once you have a clean list, the Broken Link Checker tells you which ones still work. A URL encoder decoder is usually one step in that chain — encode a value for an API call, or decode a link to see where it really points.
Last reviewed August 2026 · this tool runs on-device.
Component (encodeURIComponent) escapes every reserved character — use it for a single value. Full URL (encodeURI) keeps a complete link's structure intact. Using Component on a whole URL breaks the :// and ?.
No. Encoding and decoding happen entirely in your browser, so API keys, tokens and private URLs stay on your device.
Yes. Turn on recursive decoding and it keeps unwinding %2520-style strings until the text stops changing, then tells you how many levels.
Yes. Decode a full URL and a breakdown appears with the scheme, host, path and every parameter's decoded value.
+ is the form (x-www-form-urlencoded) convention; %20 is standard percent-encoding. Pick Form mode for the first, Component or Full for the second.
Yes. Batch mode converts one value per line, and you can upload a .txt file or download the result.
Paste the full URL and switch to Decode. A breakdown appears below the output listing every query parameter with its value already decoded, plus the scheme, host and path — no manual parsing needed.
Use Component mode (encodeURIComponent), which escapes &, =, ? and spaces so the value can't corrupt the query string. Use Full URL mode only for a complete link.
Paste messy text, an email, a log or HTML and pull out every link. Get URLs, domains or emails, dedupe and sort, copy or download. Everything runs in your browser.
Crawl your whole site and find every broken link — and see exactly which page each one sits on. Live results, redirects flagged separately, CSV export.