When a search term contains & or +, encode the value before assembling the URL. Passing an entire URL to the URL Encoder/Decoder also escapes the https://, ? and = delimiters. The resulting string is no longer a directly usable URL.

Reproduce the exact outputs

This tool uses encodeURIComponent and then additionally escapes ! ' ( ) *. Its output differs from calling encodeURIComponent alone.

Original value Encoded output Meaning
あ %E3%81%82 Three UTF-8 bytes
a b a%20b Space becomes %20
a+b a%2Bb Literal plus becomes %2B
A&B A%26B Keep value data separate from query delimiters
!'()* %21%27%28%29%2A All are escaped by this implementation
%20 %2520 Encoding the percent sign adds another layer

Not every Japanese character takes three UTF-8 bytes. For example, 𠮷 uses four and encodes as %F0%A0%AE%B7. Each percent sign and two hex digits represents a byte, not a whole character.

Build a query with a search term and page number

For the search term a+b & c and page 2:

  1. Enter only the search term and select Encode.
  2. Copy a%2Bb%20%26%20c.
  3. Place it into the value position:
https://example.com/search?q=a%2Bb%20%26%20c&page=2

The example domain is illustrative. Escaping the value’s ampersand prevents it from becoming another parameter delimiter. In application code, choose URL or URLSearchParams APIs according to the destination’s required format.

Encoding a+b gives a%2Bb, while decoding a+b preserves the literal plus
Direction and data format determine the handling of plus signs. Select to enlarge.

Distinguish %20 from +

Input to Decode Tool output Interpretation
a%20b a b %20 represents space
a%2Bb a+b %2B represents plus
a+b a+b Literal + is not changed to space
%2520 %20 One pass removes one encoding layer

Form-urlencoded data uses + to represent space. Use a parser for that format when reading a form value. Repeatedly decoding until text looks readable can change meaningful percent escapes or delimiters. Check the producer’s contract and the number of encoding layers instead.

Troubleshoot decoding errors

%, %GG and %E3%81 cannot be decoded. Check incomplete hex pairs and truncated UTF-8 sequences. Percent-encoded bytes in another encoding, such as Shift_JIS, may not be readable by this UTF-8-based decoder.

Both buttons process the input field. Paste the output back into it if another transformation is intended. The implementation transforms data in the browser without uploading the input. Encoding is not encryption and does not protect secrets placed in URLs.

Frequently asked questions

Should I encode the entire Japanese URL here?

No: this tool handles components such as parameter values. Complete URL structure, hostnames and reserved delimiters need different handling.

Are exclamation marks and parentheses escaped?

Yes. The implementation adds that escaping after encodeURIComponent.

Why does a plus sign remain after decoding?

The tool uses decodeURIComponent. It does not apply form-urlencoded space conversion.

Return to the same workflow

Open the URL Encoder/Decoder, reproduce the small example and inspect the result before processing your own data. Favorite the tool near its name to reopen it through My Tools in the same browser. Favorites store the tool choice, not your inputs or files; clearing site data removes them.

Scope and evidence

On October 25, 2026 we compared these steps and examples with the published implementation. Primary references support the standard or API; the output tables and limits describe Tools Hub. This is not a speed or capacity benchmark, a guarantee for every environment or professional certification.