Codifique e decodifique URLs, query strings e componentes. Analisa parâmetros e estrutura da URL automaticamente.
URL Encoding (também chamado de Percent-Encoding) é o processo de converter caracteres especiais ou não seguros em um formato que pode ser transmitido pela internet de forma segura e padronizada. Ele substitui caracteres problemáticos por um sinal de % seguido de dois dígitos hexadecimais que representam o código ASCII do caractere.
| Caractere Original | Codificado (Encoded) | Motivo da Codificação |
|---|---|---|
| Espaço ( ) | %20 (ou + em query string) | URLs não podem conter espaços literais. |
| E comercial (&) | %26 | O & é usado para separar parâmetros na query string. |
| Igual (=) | %3D | O = é usado para atribuir valor a um parâmetro. |
| Interrogação (?) | %3F | O ? marca o início da query string. |
| Barra (/) | %2F | A barra é um separador de caminho (path). Se fizer parte de um valor, deve ser codificada. |
| Cedilha (ç) / Acentos | %C3%A7 / %C3%A3 / %C3%A9 | Caracteres não-ASCII são codificados em UTF-8. |
No JavaScript, existem duas funções principais para codificação. Usar a função errada pode quebrar sua URL ou gerar vulnerabilidades.
| Função | Caracteres NÃO Codificados | Quando Usar |
|---|---|---|
encodeURI() | A-Z a-z 0-9 ; , / ? : @ & = + $ - _ . ! ~ * ' ( ) # | Para codificar uma URL inteira que já está montada. Preserva a estrutura (://, /, ?, &, =). |
encodeURIComponent() | A-Z a-z 0-9 - _ . ! ~ * ' ( ) | Para codificar valores de parâmetros (query string) ou partes específicas da URL. É mais agressiva. |
https://site.com/?nome=João & SilvaencodeURI() não codifica o & (E comercial), gerando uma URL inválida onde "Silva" vira um novo parâmetro vazio.encodeURIComponent() no valor "João & Silva".https://site.com/?nome=Jo%C3%A3o%20%26%20Silva
const nome = "João & Silva";
const url = `https://api.exemplo.com/busca?q=${encodeURIComponent(nome)}`;
fetch(url);Segurança (XSS): Sempre use encodeURIComponent() ao inserir dados do usuário em uma URL ou atributo href. Isso previne ataques de Cross-Site Scripting (XSS) que poderiam injetar código malicioso via parâmetros não sanitizados.
A Query String é a parte da URL que começa após o caractere ?. Ela contém pares chave=valor separados por &.
Use o Analisador de URL acima para visualizar e decodificar automaticamente todos os parâmetros de uma URL complexa, incluindo UTM tags do Google Analytics.
?cidade=São Paulo → ?cidade=S%C3%A3o%20Pauloutm_campaign=Lançamento Verão 2026 → utm_campaign=Lan%C3%A7amento%20Ver%C3%A3o%202026urldecode(), Python: unquote()).%20, %3A? Cole no Decodificador para entender o que está sendo passado.?), o espaço pode ser codificado como + (ex: ?q=ol%C3%A1+mundo). Essa é uma convenção histórica do tipo de conteúdo application/x-www-form-urlencoded.%20.%20 para garantir compatibilidade total. Nossa ferramenta segue o padrão %20 (RFC 3986).
://, /, ?, &, =. Exemplo: https://site.com/arquivo nome.pdf → https://site.com/arquivo%20nome.pdf. Note que a barra não foi codificada.
0xC3 0xA7. Cada byte é convertido para hexadecimal e prefixado com %, resultando em %C3%A7. Isso garante que qualquer caractere do mundo (emojis, mandarim, árabe) possa ser transmitido.
=IMPORTDATA() com uma URL codificada, mas para decodificar texto puro, é mais fácil usar nosso conversor online.
%2F para não ser confundida com um separador de caminho. Exemplo: ?path=/home/user → ?path=%2Fhome%2Fuser. Use encodeURIComponent().
%20 de volta em espaço, %26 em &, etc. Use para:
Veja também