URL Encoder & Decoder Online for URLs, Text and Query Strings

Decode percent-encoded URLs or encode special characters instantly. Inspect and edit query parameters securely in your browser.

🔒 Runs locally in your browser

Encode/decode individual values and strings.

0 characters
Result0 characters
Input UTF-8: 0 bytesResult UTF-8: 0 bytesEncoding: UTF-8

Query parameters

NameValueAction
Parse a URL to inspect its parameters.

Repeated parameters are preserved. Rebuilding uses standard form-style query encoding (`+` for spaces).

Ready to decode. Type or paste text to begin.

URL conversion guide

Encode and Decode URLs Online Without Changing Their Meaning

Need to decode a URL, convert special characters, or safely place text inside a query parameter? The URL Encoder & Decoder above converts percent-encoded text into readable characters and encodes text for use in web addresses. Choose the right mode for a complete URL, a URL component, or form data.

URL encoding is particularly useful when handling search terms, API request parameters, redirects, tracking links, and text containing spaces, symbols, or non-English characters. The difference between encoding an entire address and encoding a parameter value matters: the same character can represent data in one context and a separator in another.

What Is URL Encoding?

URL encoding, often called percent-encoding, represents certain characters as a percent sign followed by two hexadecimal digits. For example, a space can be represented by %20, an ampersand by %26, and a percent sign by %25. It helps represent text within URL components while distinguishing the data from characters that have a structural role.

Under RFC 3986, letters, digits, hyphens, periods, underscores, and tildes are unreserved. Characters such as ?, &, =, /, and # may be used as URL delimiters, so their treatment depends on which part of the URL is being encoded.

Simple URL encoding example
Original: coffee & tea Encoded: coffee%20%26%20tea Decoded: coffee & tea
Important: URL encoding is not encryption. It does not hide information from anyone who can see the URL. Never put passwords, access tokens, or other secrets in a URL merely because the characters are percent-encoded.

How to Use the URL Encoder & Decoder

How to Decode a URL

1

Choose Decode

Select the Decode tab in the converter above.

2

Paste encoded text

For example, paste Hello%20World%21 into the input area.

3

Read and copy

View Hello World!, then copy the output.

How to Encode a URL

1

Choose Encode

Switch to Encode to convert readable characters into encoded text.

2

Select the scope

Choose Component for a parameter value, Full URL for an existing address, or Form Data for form values.

3

Convert and copy

Enter coffee & tea; Component mode produces coffee%20%26%20tea.

If you already have a URL with several parameters, use the Parse URL tab to inspect the URL structure and review individual key/value pairs rather than decoding all separators into one ambiguous string.

URL Component vs Full URL vs Form Data Encoding

The correct encoding method depends on what you are converting. Encoding a full URL as one component can turn its separators into plain data, while failing to encode a query value can accidentally change a request.

ModeBest useSpaceAmpersand
URL ComponentIndividual query values, parameter names, or path segments%20%26
Full URLEncoding an existing URL while preserving common separators%20Kept as &
Form DataForm values and application/x-www-form-urlencoded data+%26
Strict RFC 3986Component encoding with only RFC 3986 unreserved characters left unescaped%20%26

encodeURI() vs encodeURIComponent()

In JavaScript, encodeURI() preserves characters used by complete URI syntax, while encodeURIComponent() encodes reserved separators when they are inside a data component. For example, a literal ampersand in a search phrase should generally be encoded as %26 before being placed in a query parameter value.

A search value containing a special character
Search value: red & blue Component: red%20%26%20blue Example URL: https://example.com/search?q=red%20%26%20blue

Practical rule: Encode individual pieces before assembling a URL. Avoid repeatedly encoding a complete URL that is already percent-encoded.

Common URL Encoded Characters

The following examples are useful when reading API requests, search links, and query strings. Encodings shown use UTF-8 where a character needs multiple bytes.

CharacterPercent-encoded formNotes
Space%20Often + in form data
&%26Query parameter separator when unencoded
=%3DSeparates key and value in query strings
?%3FMarks the beginning of a URL query
#%23Fragment separator
/%2FPath separator when unencoded
+%2BOften interpreted as space in form data
%%25Begins a percent-encoded byte
✓%E2%9C%93UTF-8 encoding
😀%F0%9F%98%80Four UTF-8 bytes

Decode a Query String and Inspect URL Parameters

Consider https://example.com/search?q=red%20shoes&sort=price&tag=sale&tag=new. Its query contains the keys q, sort, and two tag entries. A good URL parser keeps both tag values instead of collapsing them into one.

ParameterDecoded value
qred shoes
sortprice
tagsale
tagnew

Query strings can contain repeated names, blank values, and percent-encoded separators. If a data value includes a literal &, encode it as %26 so it is not mistaken for a separator.

Plus sign rule: In form-encoded query data, + represents a space and a literal plus sign should be written as %2B. In ordinary percent-decoding of a component, a literal + remains a plus sign. These behaviors are not interchangeable.

URL Encoding for UTF-8, Unicode, and Emojis

Modern URLs can represent non-ASCII text using UTF-8 percent-encoding. A character may require more than one UTF-8 byte, and each encoded byte receives its own percent sign and hexadecimal value. For example, the check mark ✓ becomes %E2%9C%93, and the emoji 😀 becomes %F0%9F%98%80.

This is why simply replacing a character by a single numeric code is not a reliable URL encoder. Browser-native URL encoding functions handle Unicode text and percent-encoded bytes properly when used for the correct component.

Common URL Decoding Errors and How to Fix Them

Invalid percent escapes

Sequences such as %ZZ or %2 are not complete valid hexadecimal triplets. Check for missing digits or copy/paste damage before trying to decode them.

Malformed UTF-8

An encoded byte sequence can contain valid-looking percent triplets but still fail UTF-8 decoding, such as %E0%A4%A. Make sure all bytes are present and in the expected encoding.

Double URL encoding

Encoding the percent sign in %20 yields %2520. One decoding pass returns %20. Decode a second time only if you know the value was intentionally encoded twice.

Unexpected query parameters

Using full-URL encoding for raw query data may leave & or = unchanged. Choose Component mode for the data value so separators are not mistaken for URL structure.

When debugging a link, first identify whether the input is an entire URL or only one component. Then select the matching mode and avoid applying decoding repeatedly unless the input format specifically requires it.

When Do Developers Use URL Encoding?

  • APIs: Safely construct parameters that contain spaces, ampersands, or international characters.
  • Search URLs: Encode search terms without changing the URL's structure.
  • Forms: Represent form values using application/x-www-form-urlencoded rules.
  • Redirect debugging: Inspect an encoded destination value without visiting the destination.
  • Analytics and tracking: Review parameters while keeping separators and repeated keys intact.
  • Web development: Compare how encodeURI() and encodeURIComponent() treat special characters.

URL encoding is a representation method, not a security check. Decoding an unfamiliar link can help you inspect it, but a readable URL is not necessarily safe to open.

Frequently Asked Questions

What is a URL decoder?

A URL decoder converts percent-encoded sequences such as %20 into readable characters. Different decoding modes preserve or interpret reserved separators according to the part of the URL being decoded.

How do I URL decode online?

Select Decode in the tool above, paste an encoded URL or text string, choose the appropriate scope, and copy the result. For example, Hello%20World decodes to Hello World.

What does %20 mean in a URL?

%20 represents a space byte in percent-encoding. In form-encoded query values, a space can instead be represented by a plus sign.

What is the difference between URL encoding and URL decoding?

Encoding transforms characters into a representation suitable for a URL component, while decoding reverses that representation. Both require attention to URL separators and form-data rules.

Why does a space sometimes become + instead of %20?

Form encoding represents spaces as +. Component encoding commonly represents them as %20. Use Form Data mode when working with application/x-www-form-urlencoded values.

Should I use encodeURI or encodeURIComponent?

Use encodeURIComponent() for a single parameter value or other URI component that can contain special characters. encodeURI() is designed for an entire URI and preserves many delimiters.

What is double URL encoding?

Double URL encoding means percent-encoded text is encoded again. For example, %20 becomes %2520. Repeated decoding should be intentional because it can change the meaning of delimiters.

Can URL encoding handle emojis and non-English text?

Yes. URL encoding can represent UTF-8 bytes for Unicode characters. For example, 😀 becomes %F0%9F%98%80.

Does URL encoding make a link safe or private?

No. URL encoding is reversible and does not validate a destination. Avoid adding secrets to URLs, and inspect unfamiliar destinations before opening them.

Why am I getting an invalid URL encoding error?

Common causes include incomplete percent sequences, non-hexadecimal digits after %, or malformed UTF-8 byte sequences. Check the input and use the correct decoding mode.

Continue with other browser-based utilities on UtilityDocks.

Reference: RFC 3986, Uniform Resource Identifier (URI): Generic Syntax. Examples are for illustration; always choose encoding rules that match the receiving application.