Lendo URLs codificadas
Links copiados do navegador, de logs e de ferramentas de análise vêm cheios de sequências com %: %20 é espaço, %2F é barra, %C3%A7 é ç. Cada %XX é um byte em hexadecimal, e caracteres fora do ASCII ocupam de dois a quatro bytes em UTF-8, então um emoji como 👍 aparece como %F0%9F%91%8D. Decodificar devolve os caracteres originais.
Formulários e muitas URLs de busca usam + no lugar de espaço (q=pao+de+queijo). Deixe + como espaço ligado nesses casos; desligue ao decodificar um caminho ou um valor em que o + é literal, como um telefone +55.
Exemplo resolvido
O link de campanha utm_campaign=Black%20Friday%20%E2%80%93%2050%25%20off vira utm_campaign=Black Friday – 50% off. %E2%80%93 são os três bytes UTF-8 do travessão curto e %25 é um sinal de porcentagem literal.
Erros comuns
Um % sozinho ou uma sequência cortada no meio de um caractere de vários bytes (%E2%80 sem o último byte) não pode ser decodificado. A página aponta a primeira sequência ruim para você corrigir a origem.
Como funciona
A página troca + por espaço quando essa opção está ligada, decodifica cada sequência %XX como um byte e lê os bytes resultantes como UTF-8 (o decodeURIComponent do JavaScript, RFC 3986 §2.1). Caracteres fora das sequências ficam como estão. Sequências inválidas interrompem a decodificação e aparecem na tela para você ver o problema. Mude para Codificar para o caminho inverso. Tudo roda nesta aba.
Perguntas frequentes
O que significa %20?
É um espaço: 0x20 é o código ASCII do espaço. Outros comuns são %2F (/), %3F (?), %26 (&) e %25 (%).
Por que o + vira espaço?
Formulários HTML codificam espaços como +. Desligue a opção quando o + for literal.
E se o texto foi codificado duas vezes?
%2520 vira %20 na primeira passada. Cole o resultado de novo para obter o espaço.
Minha URL é enviada para algum lugar?
Não. A decodificação acontece no seu navegador e nada é registrado.
Fontes
- RFC 3986 — Uniform Resource Identifier (URI): Generic Syntax
- ECMA-262 — ECMAScript Language Specification
- Wikipedia — Percent-encoding
Revisado em 17 de out. de 2026 · vetores de teste fixtures/dev/url-decode/