La codificación de URL explicada
Actualizado 2026-07-06
Copia una URL con un término de búsqueda dentro y a menudo verás algo como %20 o %C3%A9 donde debería haber un espacio o una letra acentuada. Esa es la codificación de URL en acción. Esta guía explica qué hace, por qué se necesita y qué caracteres se escapan.
Qué es la codificación de URL
La codificación de URL — también llamada codificación por porcentaje (percent-encoding) — es una forma de representar en una URL caracteres que de otro modo serían inseguros o ambiguos. Cada carácter así se reemplaza por un % seguido de su valor de byte en hexadecimal. Un espacio se convierte en %20; un ampersand se convierte en %26.
Por qué se necesita
Las URL solo pueden contener un conjunto limitado de caracteres, y algunos tienen funciones especiales: ? inicia la cadena de consulta, & separa parámetros, / separa segmentos de ruta y # marca un fragmento. Si un valor que pones en una URL contiene uno de estos, hay que codificarlo para que se trate como datos, no como estructura.
Search term: cats & dogs In a URL: ?q=cats%20%26%20dogs
Sin codificación, el & crudo se leería como el inicio de un nuevo parámetro y la búsqueda se rompería.
Caracteres reservados vs. no reservados
- Los caracteres no reservados (Unreserved) — letras, dígitos y
- _ . ~— son siempre seguros y nunca necesitan codificación. - Los caracteres reservados (Reserved) — como
? & / # : @ =— tienen significado especial y deben codificarse cuando se usan como datos literales. - Todo lo demás — espacios, letras acentuadas, emoji y la mayoría de los símbolos — se codifica según sus bytes UTF-8, y por eso un carácter puede convertirse en varios pares
%xx.
Una confusión común: el signo más
En la cadena de consulta del envío de un formulario, los espacios a veces se codifican como + en lugar de %20. Ambos pueden significar «espacio» según el contexto, lo que hace tropezar a la gente — ante la duda, %20 siempre es seguro.
Codificación de URL vs. Base64
Estas resuelven problemas distintos. La codificación de URL hace que el texto sea seguro para colocar dentro de una URL; Base64 hace que los datos binarios sean seguros para moverse por canales basados en texto. A veces se combinan (Base64URL) pero no son intercambiables.
Para codificar o decodificar un valor, usa el codificador de URL, y para desglosar todos los parámetros de una cadena de consulta, el analizador de cadenas de consulta los divide en una lista legible.
Más de Formatos de datos y codificación
Ver todas las guías de Formatos de datos y codificación →Herramientas mencionadas en esta guía