vasilenko.info

URL encoding

/en/tool/url-encoder/ works Encodes in the browser

Paste a URL or parameter value — the tool encodes it with percent-encoding and decodes it back, breaks the URL into parts, displays the parameters in a table, and lets you rebuild the URL. It supports legacy encodings, Cyrillic domains, and a list of URLs, one per line. Everything is processed in the browser; nothing is sent to the server.

promoTwenty years of notes on websitesHow we did it in 2008 and what still works today.Open

URL encoding

What we do
What to encode

“Form data” uses the x-www-form-urlencoded format: spaces become plus signs, while asterisks, hyphens, periods and underscores remain unchanged.

Byte encoding

Percent-encoding encodes bytes, not letters. Modern URLs use UTF-8; links from engines from a decade ago may use windows-1251, which becomes garbled in UTF-8.

Details

“Entire URL” leaves reserved characters untouched—colons, slashes, question marks, ampersands and hash signs. “Parameter value” encodes them too, so the value cannot break the URL.

Result

encoded

Done

    Characters in
    Characters out
    Characters replaced
    Parameters in URL
    Lines processed

    Encoding runs on your device. Neither the URL nor parameter values are sent anywhere: after loading, the page makes no requests.

    The same in code

    Three ready-to-use snippets for the selected mode, with your string inside. Copy and run them: the result will match what you see above.

    JavaScript
    PHP
    Python
    promoCalculate ROI at the same timeCampaign payback based on spend and revenue.Open

    How to use it

    1. Choose what to encode. “Entire address” preserves the structure: the colon, slashes, question mark, ampersand, and hash remain address delimiters. “Parameter value” encodes them too. “Form data” uses the x-www-form-urlencoded format, where a space becomes a plus.

    2. If an old link decoded into garbled text, switch the byte encoding. The tool automatically tests UTF-8, windows-1251, and KOI8-R and suggests the matching one with a button—click it to recalculate the result.

    3. See the “Address by parts” section: the scheme, username, password, host, port, path, query, and fragment are shown separately in decoded form. The Cyrillic domain is also converted to punycode there—in the address, it appears as xn--, not as percent encoding.

    4. Edit the parameters directly in the table and click “Rebuild address”. The values are encoded again using the selected rules, and the link is placed in the input field. Remove an unwanted parameter with the button, or add a new one.

    5. Process a list of addresses in batch: enable “Each line separately”, paste a column from a spreadsheet, and download the result as a .txt file. Parameters can be exported separately as .csv.

    6. Share the page link together with the parsed result: the mode and string are appended to the page address after the hash.

    promoBrowser task listNo account required—everything is stored on your device.Open

    The formula and what it includes

    character → bytes in the selected encoding → %XX for each byte

    It is the bytes—not the letters—that are encoded. That is why the same text produces different percent sequences in UTF-8 and a single-byte encoding, and one cannot be substituted for the other. The host follows a different rule: percent encoding does not work there; the domain name is converted to punycode.

    Example breakdown: parameter value “кофе и чай”

    The input data is the same as the default field values: you can calculate it mentally and confirm that the tool is telling the truth.

    1. The string has 10 characters: eight Cyrillic letters and two spaces.

    2. Each Cyrillic letter in UTF-8 uses two bytes, which means six characters in the form %D0%BA. Eight letters produce 8 × 6 = 48 characters.

    3. Each space becomes %20—three characters. Two spaces produce 6.

    4. Total: 48 + 6 = 54 characters.

    5. In “form data” mode, each space would become a plus: 48 + 2 = 50 characters. In windows-1251, each letter uses one byte, so the entire string would shrink to 8 × 3 + 6 = 30 characters.

    The result is %D0%BA%D0%BE%D1%84%D0%B5%20%D0%B8%20%D1%87%D0%B0%D0%B9—54 characters instead of 10; all 10 original characters are replaced.

    Frequently asked questions

    promoAll toolsForty-four tools, all running in your browser.Open

    Related tools

    6

    MD5 and SHA hashes

    Calculates MD5, SHA-1, SHA-256, and SHA-512 hashes for a string or file.

    Open

    Password generator

    Creates passwords of the required length and assesses how difficult they are to crack.

    Open