🧰 ToolPicoTodas las herramientas →

Codificador / Decodificador URL

Codifica texto con encodeURIComponent/encodeURI, decodifica una cadena codificada en porcentaje, analiza o construye una query string, descompón una URL completa en sus partes — además de codificación/decodificación Base64 y un limpiador de parámetros de tracking. Todo se ejecuta en tu navegador, nada se envía a un servidor.

6 modos en una sola herramienta 100% en el cliente Norma: RFC 3986 Actualizado: 26 jul. 2026
Las letras acentuadas, los emoji y los símbolos especiales son totalmente compatibles.
Codificación de formulario (+ para el espacio)Estilo application/x-www-form-urlencoded: «+» en lugar de %20
Pega una cadena codificada en porcentaje (%XX), o una URL entera codificada.
Decodificación multinivel (anidada)Resuelve valores doblemente codificados como %2520 a través de cada capa
Cada línea se procesa de forma independiente; los resultados vuelven en el mismo orden. Ideal para codificar/decodificar decenas de enlaces o parámetros a la vez y copiarlos todos juntos.
Los parámetros se decodifican automáticamente; los parámetros de tracking conocidos (UTM/gclid/fbclid) se señalan.
Deja este campo vacío para generar solo una query string ?clave=valor.
Descompone una URL en protocolo, host, puerto, ruta, query y fragmento (hash).
Respuesta rápida La codificación URL (codificación porcentual) convierte los caracteres que no pueden aparecer en una URL — espacios, letras acentuadas, emoji y símbolos reservados como &, ? y # — en un formato seguro %XX. encodeURIComponent() codifica un solo valor de parámetro; encodeURI() codifica una dirección entera. decodeURIComponent() invierte cualquiera de las dos.
UTF-8Norma de codificación de caracteres
RFC 3986Norma de codificación porcentual de URI
%20Código porcentual de un espacio
GratisIlimitado, sin registro
⚙️ Nota sobre privacidad: toda la codificación, decodificación y análisis se hace directamente en tu navegador (JavaScript en el cliente). El texto o la URL que introduces nunca se envía a un servidor, ni se guarda, ni se registra. El botón «Compartir» solo codifica tu entrada en un enlace si eliges usarlo — piensa con quién compartes ese enlace antes de incluir información sensible.

¿Qué es la codificación URL, y cómo funciona?

Una guía completa sobre la codificación porcentual, la diferencia entre encodeURIComponent y encodeURI, las query strings y Base64.

Una URL solo puede transportar directamente un conjunto limitado de caracteres — letras, números y algunos símbolos no reservados. Los espacios, las letras acentuadas (como é, ü, ñ), los emoji y los caracteres & ? # % + = — los caracteres reservados que estructuran una URL — deben convertirse primero al formato %XX, un proceso llamado codificación porcentual o, más comúnmente, codificación URL. La operación inversa es la decodificación URL. La herramienta de arriba gestiona ambos sentidos, además del análisis/construcción de query string, el análisis de URL completa y Base64, al instante en tu navegador.

¿Cuál es la diferencia entre encodeURIComponent y encodeURI?

Respuesta rápidaencodeURIComponent() codifica UNA SOLA parte de una URL — por ejemplo un valor de consulta — y también codifica caracteres estructurales como & = ? / : #, lo que lo convierte en la opción adecuada para valores de parámetro. encodeURI() sirve para codificar una dirección ENTERA; deja intactos los caracteres que una URL necesita para funcionar — : / ? # & =.
  • encodeURIComponent("a&b=c")a%26b%3Dc (& y = también se codifican — correcto para un solo VALOR de parámetro)
  • encodeURI("https://x.com/a b?c=1&d=2")https://x.com/a%20b?c=1&d=2 (solo el espacio se codifica; la estructura de la URL se conserva)

¿Cómo se codifican los caracteres acentuados y los emoji en una URL?

Respuesta rápidaLos navegadores usan la codificación UTF-8 para las URL. Cada letra acentuada o emoji se convierte primero en bytes UTF-8, y luego cada byte se escribe en su propio valor %XX. Por ejemplo, é ocupa 2 bytes y se convierte en %C3%A9; un emoji de 4 bytes se convierte en cuatro grupos %XX distintos. Nunca necesitas calcular esto a mano — encodeURIComponent() lo hace automáticamente.
Caracteres comunes y su forma codificada en porcentaje (UTF-8)
CarácterSignificadoForma codificada
(espacio)Carácter espacio%20 (o + en formularios)
éLetra acentuada, ej. café%C3%A9
üLetra acentuada, ej. Zúrich%C3%BC
&Separador de parámetros%26
=Separador clave-valor%3D
?Inicio de la query string%3F
#Inicio del fragmento/ancla%23
%El propio signo de porcentaje%25
🚀Emoji (UTF-8 de 4 bytes)%F0%9F%9A%80

¿Cómo se construye y analiza una query string?

Respuesta rápidaUna query string es el conjunto de pares clave=valor que siguen al ? en una URL, separados por &. La pestaña «Construir Query» de arriba permite introducir pares clave-valor y genera una query string correctamente codificada en porcentaje; la pestaña «Analizar Query» toma una URL existente y convierte cada parámetro en una tabla legible. La herramienta también señala automáticamente los parámetros de tracking conocidos como utm_source, gclid y fbclid.

¿En qué se diferencia la codificación Base64 de la codificación URL?

Respuesta rápidaBase64 convierte cualquier dato binario o de texto en un alfabeto de 64 caracteres (A-Z a-z 0-9 + /); se usa habitualmente para tokens, claves de API o incrustar archivos pequeños como texto, y no tiene nada que ver con la estructura de una URL. La codificación URL hace específicamente seguros los caracteres especiales dentro de una URL. Como la salida Base64 contiene caracteres + y /, a veces necesita un paso adicional por encodeURIComponent() antes de poder entrar en un parámetro de URL — pruébalo en la sección de mini-herramientas de abajo.

Ejemplos populares de codificación y decodificación de URL

Conversiones habituales que puedes abrir directamente — cada una rellena la herramienta de arriba con el modo y la entrada correctos.

Mini-herramientas: Base64, Query → JSON, Limpiador de URL, Punycode

Cuatro pequeñas herramientas a menudo necesarias junto a la codificación/decodificación de URL — todas se ejecutan en tu navegador.

🔤Codificador/Decodificador Base64
Convierte texto a Base64, o Base64 a texto (compatible con Unicode).
🧩Query String → JSON
Pega una query string o una URL, convierte sus parámetros en un objeto JSON.
🧹Limpiador de URL
Elimina parámetros UTM, gclid, fbclid y otros parámetros de tracking para obtener un enlace limpio.
🌐Punycode / dominio IDN
Convierte un dominio con acentos o Unicode a su forma ASCII xn--, o al revés.

Tablas de referencia y datos prácticos

Clases de caracteres RFC 3986 citables, una comparación encodeURI vs encodeURIComponent, y los parámetros de tracking más comunes.

RFC 3986 — caracteres no reservados y reservados
ClaseCaracteres
No reservados (nunca se codifican)A-Z a-z 0-9 - _ . ~
Delimitadores generales (gen-delims): / ? # [ ] @
Subdelimitadores (sub-delims)! $ & ' ( ) * + , ; =
Todo lo demásSiempre se codifica en porcentaje (espacios, letras acentuadas, emoji, bytes no ASCII, etc.)

Fuente: RFC 3986 (Uniform Resource Identifier — Generic Syntax), IETF.

Caracteres que cada función de codificación de JavaScript deja intactos
FunciónDeja sin codificar
encodeURIComponent()A-Z a-z 0-9 - _ . ! ~ * ' ( )
encodeURI()Lo anterior, más ; / ? : @ & = + $ , #
decodeURIComponent()Decodifica secuencias %XX; lanza un URIError ante una secuencia inválida

Regla práctica: usa encodeURIComponent para un solo VALOR de parámetro, y encodeURI para una URL completa.

Parámetros de consulta de tracking habituales
ParámetroOrigen / significado
utm_source, utm_medium, utm_campaignEtiquetas de campaña de Google Analytics
utm_term, utm_contentEtiquetas de palabra clave / variante de anuncio
gclidIdentificador de clic de Google Ads
fbclidIdentificador de clic de Meta (Facebook/Instagram)
msclkidIdentificador de clic de Microsoft Ads (Bing)
mc_cid, mc_eidIdentificador de campaña de email de Mailchimp
igshid, ref_src, refEtiquetas de referencia de Instagram / genéricas

La pestaña «Analizar URL» y la mini-herramienta «Limpiador de URL» de arriba reconocen y señalan/eliminan automáticamente estos parámetros.

Añade esta herramienta a tu sitio (código de integración)

Integra gratis la herramienta de codificación/decodificación de URL en tu propio sitio. Copia el código de abajo en tu HTML — la herramienta se muestra en una vista simplificada y enlaza a esta página como fuente.

La herramienta integrada tiene un diseño fijo; puedes ajustar el valor de height según tu sitio. Sin publicidad ni datos personales, funciona íntegramente en el cliente.

Glosario de términos de URL y codificación

Definiciones breves de los conceptos esenciales de la codificación y decodificación de URL.

URI / URLUna URI es el formato general para identificar un recurso; una URL (Uniform Resource Locator) es el tipo de URI más común, el que además indica cómo encontrar el recurso.
Codificación porcentualEl método de representar caracteres reservados o no ASCII como secuencias %XX (byte hexadecimal); sinónimo de codificación URL.
Caracteres reservados / no reservadosSegún RFC 3986, los caracteres no reservados (letras, números, - _ . ~) nunca se codifican; los caracteres reservados (: / ? # & = etc.) sostienen la estructura de la URL.
Query stringLos parámetros clave=valor que siguen al «?» en una URL, separados por «&».
Fragmento / hash (#)La parte de una URL después de «#»; nunca se envía al servidor y se usa para la navegación dentro de la página o el estado en el cliente.
encodeURIComponent()Una función de JavaScript que codifica un solo componente de URL (un valor de parámetro), codificando también los caracteres estructurales.
encodeURI()Una función de JavaScript que codifica una URL entera dejando intactos los caracteres que la estructura de la URL necesita.
Codificación doble / anidadaCodificar una cadena ya codificada por segunda vez; «%25» (el código del signo de porcentaje literal) suele ser la señal de ello.
Base64Una codificación de propósito general que representa datos binarios o de texto con un alfabeto de 64 caracteres, independiente de la estructura de la URL.
Parámetros UTMEtiquetas derivadas de Google Analytics — utm_source, utm_medium, utm_campaign, etc. — añadidas a una query string para rastrear campañas de marketing.
PunycodeUna codificación distinta que convierte nombres de dominio internacionalizados a ASCII; diferente de la codificación URL, y usada solo para nombres de host.
application/x-www-form-urlencodedEl formato de envío por defecto de los formularios HTML; codifica un espacio como «+» en lugar de %20.

Guías en profundidad

Respuestas detalladas a las preguntas más frecuentes sobre la codificación de URL.

Mis caracteres acentuados aparecen deformados al compartir una URL — ¿qué hago?

Cuando se añaden caracteres acentuados a una URL sin codificar (en bytes UTF-8 crudos), algunas aplicaciones, plataformas de mensajería o sistemas antiguos pueden interpretarlos mal, produciendo texto deformado (mojibake). La solución es codificar el texto con encodeURIComponent() antes de compartirlo: una palabra como «café» se convierte en «caf%C3%A9» y se decodifica correctamente al recibirla.

Pega tu texto en la pestaña «Codificar» de arriba y elige el modo «URI completa» para conservar intacta la estructura de la dirección codificando solo los caracteres problemáticos; luego usa el resultado directamente en la barra de direcciones de tu navegador o compártelo como enlace.

¿En qué hay que fijarse al leer los parámetros de una query string?

Para examinar una query string, sepárala primero en parámetros por cada &, y luego separa cada parámetro en clave y valor por el =; los valores suelen estar codificados en porcentaje, así que hay que decodificarlos para que sean legibles. Ten también en cuenta que parámetros como utm_*, gclid y fbclid no son datos funcionales — son etiquetas de tracking de marketing, y quizá quieras eliminarlos antes de compartir un enlace.

La pestaña «Analizar Query» de arriba hace este análisis automáticamente y resalta en ámbar los parámetros de tracking; la mini-herramienta «Limpiador de URL» los elimina con un clic.

¿Qué codificación usar al llamar a una API?

Cuando envíes un parámetro de consulta a una API REST, codifica siempre el valor con encodeURIComponent() — sobre todo si contiene espacios, «&» o letras acentuadas — porque ese valor es solo un COMPONENTE de la URL. Si envías JSON en el cuerpo de la solicitud, no hace falta codificación adicional, ya que JSON tiene sus propias reglas de escape. Usa encodeURI solo si codificas de una sola vez una URL entera ya construida; de lo contrario, arriesgas codificar caracteres necesarios como «?» y «&» y romper la solicitud.

Preguntas frecuentes

¿Qué es la codificación URL?
La codificación URL (codificación porcentual) convierte los caracteres que no pueden usarse directamente en una URL — espacios, letras acentuadas, símbolos reservados como & ? #, y emoji — al formato %XX que entienden los navegadores. Por ejemplo, un espacio se convierte en %20, y «é» se convierte en %C3%A9. Esto permite añadir texto de forma segura a una dirección o parámetro sin romper la estructura de la URL.
¿Cómo se codifica un texto para una URL?
En un navegador, usa las funciones de JavaScript encodeURIComponent() o encodeURI(), o una herramienta online como esta. Pega tu texto en la pestaña «Codificar», elige un modo y haz clic en Codificar; luego copia el resultado y añádelo a una URL o un parámetro de consulta.
¿Qué es encodeURIComponent?
encodeURIComponent() es una función de JavaScript usada para codificar UNA SOLA parte de una URL (un valor de consulta, un parámetro); también codifica caracteres estructurales como & = ? / :. Si estás codificando un VALOR en lugar de una dirección completa, es la función que debes usar.
¿Cómo se construye una query string?
Una query string es el conjunto de pares clave=valor que siguen al «?» en una URL, unidos por & (p. ej. ?color=rojo&talla=42). Introduce tus pares clave-valor en la pestaña «Construir Query» y haz clic en Construir; los valores se codifican automática y correctamente en una query string completa o una URL completa.
¿Cómo se codifican los caracteres acentuados en una URL?
Los navegadores modernos usan UTF-8 en las URL; cada carácter acentuado se convierte en una secuencia %XX%XX de 2 bytes (p. ej. «é» → %C3%A9). encodeURIComponent() y encodeURI() realizan esta conversión automática y correctamente.
¿Qué es la codificación/decodificación Base64?
Base64 es una codificación binario-texto de propósito general que representa los datos con un alfabeto de 64 caracteres (A-Z, a-z, 0-9, +, /); se usa para tokens, imágenes o incrustar archivos pequeños. Es distinta de la codificación URL, que codifica específicamente los caracteres especiales dentro de una URL. Pruébalas ambas en la sección de mini-herramientas de arriba.
¿Qué es la decodificación URL, y cómo se hace?
La decodificación URL convierte una cadena codificada en porcentaje (%XX) en su texto original y legible; es lo contrario de la codificación. Pega el texto codificado en la pestaña «Decodificar» y haz clic en Decodificar; para un texto codificado más de una vez (anidado), la opción «decodificación multinivel» resuelve cada capa en un solo paso.
¿Por qué a veces veo un valor doblemente codificado como %2520?
%2520 resulta de codificar un %20 ya codificado (un espacio) una segunda vez, porque el propio «%» se codifica como %25. Suele estar causado por un sistema que codifica por error los mismos datos dos veces. La opción «decodificación multinivel» en la pestaña «Decodificar» resuelve cada capa anidada hasta llegar al texto original en una sola pasada.
¿Puedo codificar o decodificar varias URL a la vez (en masa)?
Sí. Pega un texto o una URL por línea en la pestaña «Masa», elige la operación (encodeURIComponent, encodeURI, o decode), y haz clic en Ejecutar; cada línea se procesa de forma independiente y los resultados vuelven en el mismo orden. Así puedes procesar decenas de enlaces o parámetros a la vez en lugar de uno por uno. Todo se ejecuta en tu navegador — ninguna línea se envía nunca a un servidor.

Metodología y fuentes

La herramienta de codificación / decodificación URL de ToolPico es una herramienta gratuita e independiente. La codificación y decodificación se realizan directamente con las funciones nativas del navegador encodeURIComponent() / encodeURI() / decodeURIComponent() (basadas en UTF-8, conformes a RFC 3986); el análisis de URL usa la API Web URL(), y la conversión Base64 usa un wrapper compatible con UTF-8 alrededor de btoa()/atob(). Ningún cálculo se envía nunca a un servidor.

Fuentes: RFC 3986 (Uniform Resource Identifier — Generic Syntax, IETF) · WHATWG URL Standard · MDN Web Docs (encodeURIComponent, encodeURI, URL). Última actualización: 26 de julio de 2026. Los resultados se ofrecen solo con fines informativos.

🔗 Añade esta herramienta a tu sitio

Copia el código de abajo en tu propio sitio. La herramienta es gratuita, siempre actualizada, y funciona íntegramente en tu página. No requiere registro.

Vista previa →
⚡ Creado con ToolPico · toolpico.com