---
title: "URL encode and decode: query strings and full URLs"
description: "Free URL encode and decode tool. Percent-encode a query value or a whole URL, or decode one back to readable text, right in your browser."
canonical: "https://www.meadowdesk.com/tools/url-encode-decode"
last_modified: "2026-10-27"
---

# URL encoder and decoder

Source: https://www.meadowdesk.com/tools/url-encode-decode

Free URL encode and decode tool. Percent-encode a query value or a whole URL, or decode one back to readable text, right in your browser.

Percent-encode a search term, a query value or a whole link so it travels safely, or decode a URL full of % signs back into something you can read.

## How to use it

1. Choose Encode or Decode.
2. Choose Component for one piece, like a query value, or Full URI for a whole link.
3. Paste your text into the input box.
4. Copy the result. A broken % sequence shows an error instead of a guess.

## URL encoder and decoder FAQ

**When do I need to encode a URL?**
Whenever text you don’t control goes into a link: a search term, a name, an email address, a page to return to. Encode each value as a component before you join it into the link, never the finished link as a whole.

**Is a space + or %20?**
Both, in different places. %20 works everywhere; + means a space only in a query string sent by an HTML form. This tool writes %20 and decodes + as a plain +, so swap + for a space first if your text came from a form.

**How do I put a password in a connection URL?**
Encode it as a component first. A strong password from the [password generator](https://www.meadowdesk.com/tools/password-generator) has symbols like @, # and ? that mean something in a URL, and left raw they break a database or mail server link.

**How long can a URL be?**
Browsers handle very long ones, but some servers, proxies and email apps cut links off at around 2,000 characters. Encoding makes text longer (each é takes 6 characters), so check a long link with the [word counter](https://www.meadowdesk.com/tools/word-counter) before you send it.

**How do I use a hex color in a URL?**
Encode the # as %23. A raw # starts the fragment, so ?color=#ff8a65 sends an empty color. Copy the hex from the [color converter](https://www.meadowdesk.com/tools/color-converter), then encode it: %23ff8a65.
