Skip to content
URL utilities

URL Encode / Decode

Encode or decode URL strings instantly by pasting text into the input field.
This tool supports percent-encoding commonly used in URLs, making it easy to convert special characters into a safe format
or restore encoded strings back to readable text.

It is useful for building query parameters, checking API request URLs, and debugging encoded values found in logs or configuration files.
With a single click, you can switch between encoding and decoding
and view the result immediately.

All processing is performed locally in your browser.
No input text or results are sent to any server, ensuring fast performance and privacy-safe usage.

Guide: How to use & features

  • Enter text at the top and click Encode or Decode to transform it.
  • Review how spaces and special characters change, then copy the output for reuse.
  • Long query strings are supported; very large inputs may take a moment to process.
  • All conversions run locally with no network requests.

Samples: Sample input & output

URL-encode a query

Input

https://example.com/search?q=open api&lang=en

Output

https%3A%2F%2Fexample.com%2Fsearch%3Fq%3Dopen%20api%26lang%3Den

FAQ: FAQ

  • Why is a space sometimes %20 and sometimes +?

    In a path or with percent-encoding a space becomes %20. By convention, HTML form submissions (application/x-www-form-urlencoded) represent a space as +. This tool does URL-style percent-encoding, so it uses %20. Keep the difference in mind when sending a query string to a system that expects +.
  • Can I safely encode a whole URL by pasting it in?

    If the : / ? & = in http:// are also encoded, you get a broken URL. As a rule, encode only the values (a parameter’s contents or non-ASCII text), not the separators. Paste just the part you want encoded rather than the entire URL.
  • Why does decoding fail or produce garbled text?

    A % that is not followed by two hex digits (for example %ZZ, or a trailing lone %) is an invalid sequence and fails. Also, a string encoded in something other than UTF-8 may come out garbled because it is interpreted as UTF-8. Check that the input is valid percent-encoding and that the original encoding was UTF-8.

Use cases: Common use cases

  • Building query parameters

    When putting search keywords or a redirect URL into a query string, convert characters like & = ? and non-ASCII text into a form that survives the trip. It prevents mistakes when you hand-write links or generate parameters in a script.

  • Debugging APIs and webhooks

    Paste an encoded string such as %E3%81%82 from your logs or a dashboard and decode it to see exactly what value was sent. Handy for confirming whether a request matches what you intended.

  • Untangling double-encoding

    Decode a value like %2520 step by step to find where an extra layer of encoding crept in. Useful when chasing bugs in handoffs that cross proxies or frameworks.

Notes: Notes & limitations

  • Work stays in your browser

    Inputs and outputs remain local. Closing the tab or clearing cache will remove any temporary state.

  • Validate critical data

    Results are helper outputs—double-check them before sending to production systems or sharing externally.

  • Large payloads depend on your device

    Very large text or files can feel slow in some browsers. Use a desktop environment for heavy workloads.

URL Encoder and Decoder

URLs often need special characters, spaces, non-English text, and symbols to be percent-encoded. This URL encoder and decoder helps you convert readable text into URL-safe strings and decode encoded values such as %20, %2F, or UTF-8 sequences.

Common use cases

  • Debug query strings: Decode parameters from tracking links, API requests, or redirects.
  • Prepare safe URLs: Encode search terms, callback URLs, filenames, and form values.
  • Inspect copied links: Understand what a long encoded URL actually contains.

Encoding note

Different contexts encode spaces and reserved characters differently. A value that is safe in a query parameter may not be safe in a path segment, so check the exact place where the value will be used.

Articles for this tool

Recent Articles

Use Case
2026-08-07

curl Options Cheat Sheet: What -X, -H and -d Actually Do

A reference for the curl options you meet in real API work: why -d already implies POST, how -d differs from --data-raw, the @ prefix that silently reads a file, single vs double quotes, and why -k and -L deserve more caution than they usually get.

Introduction
2026-08-06

Converting Between JSON Schema and Zod: How required Maps to .optional()

Inside a two-way converter that turns JSON Schema into a Zod schema and Zod code back into JSON Schema. Covers the inverted defaults between required and .optional(), the constraint mapping table, and how the Zod side is parsed without executing any code.

Use Case
2026-08-06

SQL Clause Order Reference: Why WHERE Can't See Your SELECT Alias

The order you write SQL clauses is not the order the database runs them. A reference for the logical execution order (FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY → LIMIT), why aliases fail in WHERE, when to use WHERE vs HAVING, and the MySQL/PostgreSQL differences that bite.

Use Case
2026-08-06

Unified Diff Format Reference: Reading @@ Hunks in git diff Output

How to read the unified diff format git produces: what the four numbers in @@ -12,7 +12,9 @@ mean, why a one-character edit shows as a whole-line replacement, the whitespace and line-ending traps, \ No newline at end of file, combined @@@ diffs on merges, and rename detection via similarity index.

Use Case
2026-08-06

UTC to JST Reference: The 9-Hour Offset, Cheat Sheet & Timezone Pitfalls

Convert between UTC and JST (Japan Standard Time) with a cheat sheet. Covers what Z and +09:00 mean in ISO 8601, when JavaScript date parsing silently shifts by 9 hours, MySQL/PostgreSQL timezone behavior, and why GitHub Actions cron always runs in UTC.

Use Case
2026-08-04

CREATE TABLE Reference: MySQL vs PostgreSQL vs SQLite Types & Constraints

A cross-database CREATE TABLE (DDL) reference with cheat sheets for data types, auto-increment keys (AUTO_INCREMENT / IDENTITY / rowid), foreign key ON DELETE behavior, and the CHECK constraint that MySQL silently ignores.

Ad

Ad