Saltar al contenido
Herramienta gratuita

URL Encoder & Decoder: codifica y decodifica URL online

Codifica y decodifica URL directamente en el navegador: URL Encoder convierte texto y URL mediante codificación porcentual; un espacio pasa a ser %20 y «ä», %C3%A4. Como URL Decoder, convierte las secuencias % en texto legible. Puedes comparar encodeURIComponent, encodeURI y el formato de formulario con +, ver los parámetros de consulta de una URL decodificados y crear cadenas de consulta y enlaces UTM. Gratis y sin registro; tu texto permanece en tu navegador.

Creado por Dimitri Heissler

¿Estás creando algo propio? Alójalo en un VPS con control total.

Codifica todo excepto letras, cifras y los caracteres -_.~!*'(). Adecuado para valores de parámetros individuales, segmentos de ruta y cualquier elemento incrustado en una URL.

Tu texto permanece en tu navegador: no se sube ni se guarda.

Caracteres en la entrada
0
Caracteres en el resultado
0
Caracteres codificados
0
Bytes de entrada
0

Crear una cadena de consulta y un enlace UTM

Introduce el nombre y el valor de cada parámetro, o añade los tres campos para un enlace de campaña con «Parámetros UTM». Cada valor se codifica por separado, de modo que un & o un = dentro del valor no romperá la URL.

0 parámetros en la URL

Resultado de ejemplo

Qué te muestra este codificador y decodificador de URL

Pega un texto o una URL y obtendrás al instante el resultado codificado o decodificado. Al codificar, también verás una lista de los caracteres sustituidos y sus bytes; al decodificar una URL, verás cada parámetro de consulta por separado y de forma legible. Tres ejemplos:

Ejemplo 1: codificar un valor

Entrada (variante de componente, encodeURIComponent):

Müller & Söhne: ¿50 % de descuento?

Salida:

M%C3%BCller%20%26%20S%C3%B6hne%3A%20%C2%BF50%20%25%20de%20descuento%3F
Caracteres sustituidos del primer ejemplo
CaracteresBytesResultado
üC3 BC%C3%BC
Espacios20%20
&26%26
öC3 B6%C3%B6
:3A%3A
¿C2 BF%C2%BF
%25%25
?3F%3F

Resultado en palabras: 35 caracteres se convierten en 70 caracteres. Se han sustituido 13 caracteres. La ü ocupa dos bytes y se convierte en %C3%BC, & se convierte en %26 y el propio % en %25. Las letras y los dígitos permanecen sin cambios.

Ejemplo 2: decodificar y descomponer una URL

Entrada (variante de formulario; + se interpreta como espacio):

https://example.com/search?q=tomates%20verdes&sort=price_asc&category=Frutas%2Bverduras

Salida:

https://example.com/search?q=tomates verdes&sort=price_asc&category=Frutas+verduras
Parámetros de consulta del segundo ejemplo
NombreValor (decodificado)Sin decodificar
qtomates verdestomates%20verdes
sortprice_ascprice_asc
categoryFrutas+verdurasFrutas%2Bverduras

Resultado en palabras: la URL tiene 3 parámetros de consulta. El valor de «q» es «tomates verdes», el de «sort» es «price_asc» y el de «category» es «Frutas+verduras». El signo más en «Frutas+verduras» está codificado como %2B, por lo que sigue siendo un signo más.

Ejemplo 3: la misma URL en cuatro variantes

Entrada:

https://example.com/calle/sobre nosotros?q=jalapeño#contacto
Resultado de las cuatro variantes para la misma URL
VarianteResultado
Componente (encodeURIComponent)https%3A%2F%2Fexample.com%2Fcalle%2Fsobre%20nosotros%3Fq%3Djalape%C3%B1o%23contacto
URL completa (encodeURI)https://example.com/calle/sobre%20nosotros?q=jalape%C3%B1o#contacto
Estricto (RFC 3986)https%3A%2F%2Fexample.com%2Fcalle%2Fsobre%20nosotros%3Fq%3Djalape%C3%B1o%23contacto
Formulario (+ para espacios)https%3A%2F%2Fexample.com%2Fcalle%2Fsobre+nosotros%3Fq%3Djalape%C3%B1o%23contacto

Resultado en palabras: solo «URL completa (encodeURI)» conserva https://, /, ? y #, por lo que la dirección sigue siendo accesible. Las otras tres variantes también codifican estos separadores y convierten la dirección en un único valor largo. Esto es lo adecuado si quieres insertar la URL completa como valor dentro de otra URL.

Cómo funciona

Cómo codificas y decodificas una URL

Cuatro pasos del texto a la URL final, sin cuenta ni descargas.

Paso 1

Pegar texto o URL

Pega el texto que quieras codificar o la URL codificada que quieras leer. Con «Ejemplo» cargas un texto de ejemplo. El resultado aparece mientras escribes, sin pulsar ningún botón.

Paso 2

Elige la dirección, la variante y el conjunto de caracteres

Elige «Codificar» o «Decodificar». Para un valor individual, usa encodeURIComponent; para una URL completa, encodeURI; y para datos de un formulario HTML, el formato de formulario con +. Al codificar también puedes elegir la variante estricta según RFC 3986 y la opción «Codificar cada línea por separado». Como conjunto de caracteres, elige UTF-8 o ISO-8859-1.

Paso 3

Comprobar y copiar el resultado

La herramienta muestra cuántos caracteres se han sustituido, enumera al codificar los caracteres sustituidos con su número Unicode y sus bytes, y advierte sobre la doble codificación, las secuencias % no válidas o el uso de una variante incorrecta para una URL completa. Usa «Copiar» para llevarte el resultado.

Paso 4

Leer o crear parámetros

Al decodificar una URL, la herramienta muestra sus componentes y los parámetros de consulta decodificados en una tabla. En «Crear cadena de consulta y enlace UTM», introduce un nombre y un valor o añade los campos para un enlace de campaña con «Parámetros UTM», y copia la URL ya codificada.

Variantes

encodeURIComponent, encodeURI o formulario: ¿cuándo usar cada opción?

Las cuatro variantes siguen el mismo principio de codificación, pero sustituyen distintas cantidades de caracteres. Elige según lo que vayas a codificar, no por intuición.

Componente (encodeURIComponent)
Para un valor individual: el valor de un parámetro, un segmento de ruta, un nombre de archivo o una URL incluida como parámetro en otra URL. Codifica todo excepto letras, dígitos y los caracteres -_.~!*'(). En caso de duda, esta es la opción adecuada.
Equivale aproximadamente a: encodeURIComponent / decodeURIComponent
URL completa (encodeURI)
Para una URL completa que aún contenga espacios o caracteres especiales. Deja intactos ; , / ? : @ & = + $ # para que la dirección funcione. No codifica & ni = dentro de un valor, por lo que no sirve para ese caso.
Equivale aproximadamente a: encodeURI / decodeURI
Estricto (RFC 3986)
Como componente, pero codifica además ! ' ( ) *. Es necesario si otro sistema interpreta estos caracteres como separadores, por ejemplo, al firmar solicitudes OAuth.
Equivale aproximadamente a: PHP rawurlencode, Python urllib.parse.quote(wert, safe='')
Formulario (+ para espacios)
El formato de un formulario HTML (application/x-www-form-urlencoded). Los espacios se convierten en + y solo se conservan las letras, los dígitos y *-._; ~ pasa a ser %7E. Se aplica a las cadenas de consulta de formularios y a los cuerpos POST de este tipo. PHP urlencode y Python quote_plus difieren ligeramente en * y ~.
Equivale aproximadamente a: Java URLEncoder, JavaScript URLSearchParams

Tabla de caracteres

Caracteres especiales en las URL y su codificación

Así se codifican los caracteres especiales más frecuentes según la variante. Un guion significa que el carácter permanece sin cambios.

Codificación de caracteres especiales: componente, URL completa y formulario
CaracteresComponenteURL completaFormulario
EspaciosEspacios, que en las cadenas de consulta suelen escribirse como +%20%20+
!Delimitador inferior, sin significado fijo––%21
"no permitido en las URL%22%22%22
#Inicio del fragmento (ancla)%23–%23
$Delimitador inferior, sin significado fijo%24–%24
%introduce una codificación %XX%25%25%25
&separa los parámetros de consulta%26–%26
'Delimitador inferior, sin significado fijo––%27
(Delimitador inferior, sin significado fijo––%28
)Delimitador inferior, sin significado fijo––%29
*Delimitador inferior, se detiene en encodeURIComponent–––
+Signo más, un espacio en formato de formulario%2B–%2B
,separa los valores de la lista%2C–%2C
/separa los segmentos de la ruta%2F–%2F
:separa el esquema, el host y el puerto%3A–%3A
;Delimitador inferior, sin significado fijo%3B–%3B
=separa el nombre del parámetro y su valor%3D–%3D
?Inicio de la consulta%3F–%3F
@separa la información del usuario y el host%40–%40
[solo para direcciones IPv6 en el host%5B%5B%5B
]solo para direcciones IPv6 en el host%5D%5D%5D
~sin protección; solo el formato del formulario lo codifica (%7E)––%7E
ä%C3%A4%C3%A4%C3%A4
€%E2%82%AC%E2%82%AC%E2%82%AC
😀%F0%9F%98%80%F0%9F%98%80%F0%9F%98%80

Parámetros UTM

Crear un enlace UTM: cómo escribir correctamente los parámetros UTM

Los parámetros UTM se añaden a un enlace para que Google Analytics sepa de dónde vienen los visitantes. El generador de cadenas de consulta de la herramienta añade con «Parámetros UTM» los tres campos habituales utm_source, utm_medium y utm_campaign, y codifica cada valor por separado para que los espacios y caracteres especiales no rompan el enlace.

Los cinco parámetros UTM y su significado
ParámetrosSignificadoDato
utm_sourceDe dónde viene el visitante, por ejemplo, newsletter, google o instagram.habitual
utm_mediumA través de qué canal, por ejemplo, e-mail, cpc o social.habitual
utm_campaignEl nombre de la campaña, por ejemplo, sommer-aktion.habitual
utm_termEl término de búsqueda en la búsqueda de pago.opcional
utm_contentQué variante se ha pulsado, por ejemplo, banner o enlace de texto.opcional

Ejemplo: un enlace de newsletter

URL base y tres parámetros:

https://example.com/aktion
utm_source = newsletter
utm_medium = e-mail
utm_campaign = Promoción de verano

Resultado:

https://example.com/aktion?utm_source=newsletter&utm_medium=e-mail&utm_campaign=Promoci%C3%B3n%20de%20verano

Escribe los valores en minúsculas y sin espacios, por ejemplo, sommer-aktion. Analytics distingue entre «Newsletter» y «newsletter» y los analiza por separado.

Descubrir más

Más herramientas

FAQ

Preguntas frecuentes sobre URL Encoder & Decoder

Respuestas breves sobre codificación de URL, signos de porcentaje y esta herramienta.

En una URL solo se permiten ciertos caracteres. Los demás se representan con % seguido de dos dígitos hexadecimales por cada byte del carácter en UTF-8. Un espacio se convierte en %20, «ä» en %C3%A4 (dos bytes), «€» en %E2%82%AC (tres bytes) y un emoji como 😀 en %F0%9F%98%80 (cuatro bytes). Este proceso también se llama codificación porcentual o codificación de URL; entre desarrolladores se conoce como URL Encode y el proceso inverso como URL Decode.

%20 es un espacio codificado: 20 es el valor hexadecimal del espacio. Del mismo modo, %3D representa =, %26 representa &, %2F representa / y %2C representa una coma. %20 vale en cualquier parte de una URL. El + para representar un espacio solo se usa en el formato de formulario (application/x-www-form-urlencoded), es decir, en las cadenas de consulta generadas por un formulario HTML. En la ruta, + es un signo más literal. «Käse & Brot» se convierte en «K%C3%A4se+%26+Brot» como valor de formulario y en «K%C3%A4se%20%26%20Brot» con encodeURIComponent. Por eso, al decodificar, elige la variante adecuada: «Formulario» para datos de formularios y búsquedas.

encodeURI conserva los separadores de una URL: ; , / ? : @ & = + $ #. encodeURIComponent también los codifica. «a/b?c=d» se convierte en «a/b?c=d» con encodeURI y en «a%2Fb%3Fc%3Dd» con encodeURIComponent. Para una dirección completa, usa encodeURI. Para un valor individual que se inserta en una URL, usa encodeURIComponent; de lo contrario, un & o un = dentro del valor puede separar los parámetros.

Elige «Decodificar» y pega arriba la URL o el texto codificado. «M%C3%BCller%20%26%20S%C3%B6hne» se convierte en «Müller & Söhne». Si se trata de una URL, la herramienta también desglosa la dirección en componentes como esquema, host, ruta, consulta y fragmento, y muestra los parámetros de consulta en una tabla con el nombre, el valor decodificado y el valor original; por ejemplo, q = tomates verdes en lugar de gr%C3%BCne%20Tomaten. Los parámetros van después de ?, el nombre y el valor se separan con =, y los distintos parámetros con &. Para datos de un formulario o una búsqueda, elige la variante «Formulario» para que + también se interprete como un espacio en el resultado.

Las letras de A a Z y de a a z, los dígitos del 0 al 9 y los caracteres -_.~ no cambian; solo el formato de formulario codifica la virgulilla como %7E. Los separadores : / ? # [ ] @ ! $ & ' ( ) * + , ; = solo se permiten cuando cumplen su función, como & entre dos parámetros. Deben codificarse, entre otros, los espacios, las comillas, %, < > ^ { | } y todos los caracteres fuera de ASCII, como las letras acentuadas o los emojis. encodeURIComponent también deja intactos ! * ' ( ), mientras que la variante estricta según RFC 3986 los codifica. La tabla de caracteres anterior muestra los caracteres especiales más habituales y su resultado.

No se escriben directamente: se codifican. Letras como «ä», «ß», «é», «ñ» o «å» ocupan dos bytes cada una en UTF-8: «ä» se convierte en %C3%A4, «ß» en %C3%9F, «é» en %C3%A9, «ñ» en %C3%B1 y «å» en %C3%A5. Un espacio se convierte en %20 o, en formularios, en +. Los navegadores suelen mostrar la dirección de forma legible y la codifican al enviarla. En los enlaces que escribas tú, codifica el valor con encodeURIComponent o con esta herramienta; la tabla «Qué ocurre con tus caracteres» muestra el número Unicode y los bytes de los caracteres sustituidos. Los caracteres especiales en un nombre de dominio no se codifican con porcentajes, sino que se convierten mediante Punycode (müller.de pasa a ser xn--mller-kva.de); esta herramienta no lo hace.

Si se codifica de nuevo un texto ya codificado, el % se convierte en %25: «%20» pasa a ser «%2520». Puedes reconocerlo porque aparece %25 seguido de dos dígitos y porque, tras la decodificación, aún quedan secuencias %XX en el resultado. La herramienta te lo indica y ofrece la opción «Decodificar de nuevo». Para evitarlo, codifica cada valor una sola vez, justo al construir la URL.

Hoy en día, UTF-8 es el estándar: en él, «ä» = %C3%A4. Sin embargo, algunas páginas y sistemas antiguos usan ISO-8859-1 (Latin-1), donde «ä» = %E4 y «é» = %E9. Un %E4 aislado no es válido en UTF-8: la herramienta indica su posición y ofrece «Usar ISO-8859-1». Con ese conjunto de caracteres, «K%E4se» vuelve a ser «Käse». Los caracteres que no existen en ISO-8859-1, como «€», no se pueden codificar así; para hacerlo, vuelve a UTF-8.

No. La codificación y la decodificación se realizan en tu navegador: tu texto no se sube ni se almacena. Esto también se aplica a las URL con tokens o credenciales. La herramienta es gratuita y no requiere registro.

¿Tienes más preguntas?

Contactar con soporte
¿Estás creando algo propio?

Tu aplicación necesita un servidor que responda a sus URL de forma fiable

Un VPS de ZAP-Hosting pone tu aplicación o proyecto en línea de forma fiable.

4,4/5 Trustpilot32.000+ Servidores activosDesde 2010

Sin configuración. Sin riesgos. En línea en segundos.

Duración flexibleCancelable en cualquier momentoEn línea en 60 segundos

¿Buscas más herramientas? Ver todas las herramientas para desarrolladores