Component-safe output
Encode separators such as slash, question mark, ampersand, equals sign, and hash inside a value.
Start typing to search 227 tools.
Percent-encode UTF-8 text for use as one URL component while preserving JavaScript encodeURIComponent-safe characters.
URL Encoder converts UTF-8 text into percent-encoded form suitable for one URL component. Spaces become %20, a slash becomes %2F, a question mark becomes %3F, and non-ASCII text is encoded from its UTF-8 bytes.
The output follows behavior comparable to JavaScript encodeURIComponent(): letters, digits, hyphen, underscore, period, tilde, exclamation mark, apostrophe, parentheses, and asterisk remain readable while structural separators are encoded.
Encode the value that belongs inside a URL, not an already assembled URL, unless you intentionally want its scheme and separators encoded too. Applying component encoding twice will encode existing percent signs again.
Focused controls, predictable output, and a workflow designed around this exact transformation.
Encode separators such as slash, question mark, ampersand, equals sign, and hash inside a value.
Represent Ukrainian, accented text, emoji, and other Unicode through encoded UTF-8 bytes.
Compare the exact source and encoded result before inserting it into a URL.
The page explains how existing percent sequences can be changed by a second encoding pass.
Practical details about input, output, privacy, limits, and the best way to use this tool.
It encodes the supplied text as one URI component, including spaces, Unicode bytes, and reserved separators.
It will encode the entire input, including :, /, ?, and &. Usually you should encode only individual component values.
Spaces become %20, not a plus sign.
Inside one component, an unencoded slash would act as a path separator, so it becomes %2F.
Yes. Text is represented as UTF-8 bytes and each required byte is percent-encoded.
Encoding an already encoded value changes %20 into %2520 because the percent sign itself becomes encoded.
No. It is reversible transport encoding and provides no confidentiality.
Yes. The receiver must still validate decoded paths, redirects, commands, and identifiers according to application rules.
Learn percent-encoding, UTF-8 URLs, query strings, path segments, spaces, plus signs, and double-encoding mistakes.
A complete HTTP URL contains structural delimiters: :// separates the scheme, slashes divide path segments, ? starts a query, ampersands separate parameters, equals signs pair names and values, and # starts a fragment.
Component encoding protects literal delimiter characters inside one value. If an entire complete URL is encoded in one pass, those structural characters become data and the result is no longer a directly navigable URL. Build the URL from separately encoded values instead.
Percent encoding writes a byte as a percent sign followed by two hexadecimal digits. ASCII space is byte 20 hexadecimal, so it becomes %20. Unicode characters use multiple UTF-8 bytes and therefore produce several percent sequences.
Encoding and decoding must agree on the text encoding. Modern web systems normally use UTF-8, but legacy data can produce unreadable text when interpreted with the wrong character set.
This encoder uses component-style percent encoding and writes a space as %20. Traditional HTML form encoding often writes spaces as +. Those conventions overlap but are not identical.
If a literal plus sign is significant, component encoding protects it as %2B. Confirm which convention the receiving API or framework expects rather than replacing characters manually.
The most frequent error is encoding a value twice. Because an existing percent sign becomes %25, %2F changes to %252F. Preserve the raw source and record which layer of the application owns encoding.
Other mistakes include concatenating unencoded user values, encoding a complete URL unintentionally, and decoding then re-encoding signed URLs whose exact bytes are part of a signature.
Encoding prevents data from acting as separators, but it does not make the decoded value trustworthy. Validate redirect destinations, file paths, identifiers, and query values after decoding at the appropriate application boundary. Encoding is not sanitization, authorization, or encryption.
Reverse the result with URL Decoder, inspect full parameter sets with Query String Parser, or break down a complete address using URL Parser.
See RFC 3986 for URI syntax and the MDN documentation for encodeURIComponent() behavior.