Menú

Idioma

Unidades

Cambia el símbolo y el formato. No convierte importes.

Tema

Sugerir una herramienta

Codificador y descodificador de URL

Para meter texto en una dirección sin romperla. La diferencia entre codificar un valor y codificar la URL completa es la que suele fallar.

Código Codificar y contar Sin registro

Tus datos

Se procesa en tu navegador.
Algunos servidores antiguos los tratan como reservados.

Resultado

Resultado
caf%C3%A9%20%26%20churros
Caracteres
25
Secuencias codificadas
5
Diferencia de longitud
11

Qué damos por supuesto

  • Se procesa en tu navegador. Nada sale de tu equipo.
  • Se usan encodeURIComponent y encodeURI, que son los del estándar. La diferencia entre los dos es justo la opción de ámbito.
  • El signo «+» no se trata como espacio. Eso es cosa del formato de formularios, no de las URLs, y confundirlos corrompe los datos.
  • El texto se codifica en UTF-8, que es lo que dice el estándar actual para caracteres fuera de ASCII.

Cómo se calcula

Codificar una URL consiste en sustituir los caracteres que tienen un significado especial —o que no caben— por un % seguido de su valor en hexadecimal. Un espacio pasa a %20, y una eñe, que en UTF-8 son dos bytes, pasa a %C3%B1.

Valor o dirección: la decisión que importa

Si estás metiendo un texto dentro de un parámetro, hay que codificar todo lo especial, incluidos /, ? y &: si no, tu valor parte la URL en dos. Si lo que tienes es la dirección completa, codificar esos caracteres la destruye, porque son precisamente su estructura.

Es el error más común al llegar aquí, y por eso avisamos cuando detectamos que estás codificando algo que parece una dirección entera como si fuera un valor.

El «+» no es un espacio

En el cuerpo de un formulario application/x-www-form-urlencoded, el «+» significa espacio. En una URL normal es un «+» literal. Tratarlos igual es una fuente clásica de datos corrompidos, así que aquí se deja tal cual y se avisa.

Un ejemplo

café & churros como valor sale caf%C3%A9%20%26%20churros: la «é» ocupa dos bytes y el «&» se codifica porque, sin codificar, separaría parámetros. Como dirección completa, en cambio, el «&» se respeta.

Preguntas frecuentes

¿Cuál de los dos ámbitos necesito?

Si el texto va a ser el valor de un parámetro —lo que va después de un =—, elige «un valor». Si estás arreglando una dirección completa con espacios o acentos, elige «la dirección entera».

¿Por qué no convierte el «+» en espacio al descodificar?

Porque en una URL el «+» es un «+». Solo significa espacio dentro del cuerpo de un formulario, que es otro formato. Confundirlos corrompe los datos, así que preferimos avisarte.

¿Qué hace la opción estricta?

Codifica también !, ', (, ) y *, que el estándar deja pasar pero algunos servidores antiguos tratan como reservados. Si tu URL funciona sin ella, no la necesitas.

¿Sirve para un parámetro con una URL dentro?

Sí, y es justo el caso que pide «un valor»: una dirección metida dentro de otra hay que codificarla entera, :// incluido.

Sigue calculando

Todas las herramientas →

Actualizado el 2026-09-02. Los cálculos se ejecutan en tu navegador; los datos que introduces no se envían a ningún servidor.

moverse · abrir · Esc cerrar ¿Falta alguna?