Saltar al contenido
Entrar
Suscribirme

Para Google, «filter[]=» y «filter%5B%5D=» son dos URLs distintas

John Mueller reconoce que daba por equivalentes una URL con corchetes y la misma con los corchetes codificados, y que no lo son: la norma los define como caracteres reservados. Google rastrea las dos versiones y, si sirven lo mismo, elige una. La recomendación es usar siempre la misma forma en enlaces, canonical y sitemaps.

Publicado el Revisado el 3 min de lectura

Vanessa Fox, que trabajó en Google y creó lo que hoy es Search Console, preguntó el 18 de octubre en Bluesky si Google trata como URLs distintas example.com/category?filter[]=123 y example.com/category?filter%5B%5D=123, la misma dirección con los corchetes codificados. Es un caso habitual: los filtros de facetas de muchas tiendas usan corchetes en los parámetros, y unos enlaces los llevan tal cual y otros codificados.

John Mueller contestó el 19 de octubre que había dado por hecho que eran equivalentes «y NO lo son». La razón está en la sección 2.2 de la RFC 3986, la norma que define las URIs: los corchetes y el signo más forman parte del conjunto de caracteres reservados, y dos URIs que se diferencian en que uno de esos caracteres está codificado o sin codificar no son equivalentes. Cambiar un reservado por su forma percent-encoded cambia cómo interpretan la dirección la mayoría de las aplicaciones. Mueller añade que se puede comprobar en JavaScript: new URL() devuelve dos href distintos para cada versión.

Google rastrea las dos y se queda con una

En la práctica, el servidor suele servir el mismo contenido para ambas. Mueller lo llama «equivalencia blanda»: Google rastrea las dos versiones, comprueba que son iguales, incluso a nivel de suma de verificación, las agrupa como duplicadas y elige una. Lo que no garantiza es cuál. Si los enlaces internos llevan los corchetes sin codificar y el canonical los lleva codificados, Google tiene que decidir, y puede no decidir lo que esperabas.

En otro mensaje recogido por Search Engine Roundtable, Mueller dice que ha visto «algunos de los problemas internos» que estos caracteres causaron en Google, aunque de hace más de diez años, y avisa de que otros rastreadores e indexadores pueden no ser tan exactos con esta lógica.

No es un cambio en Google: es la norma de siempre, que ni su propio portavoz tenía presente. Para la mayoría de webs no afecta, porque sus URLs no llevan corchetes ni signos más. Para una tienda con filtros por facetas sí, porque es donde más se usan y donde más versiones de una misma URL circulan.

Elige una forma, codificada o sin codificar, y úsala en todo: enlaces internos, etiqueta canonical, sitemaps y hreflang. La codificada es la más segura, porque es la que generan por defecto los navegadores y la que entienden todos los rastreadores. Y revisa en el informe de páginas de Search Console si aparecen ambas versiones como duplicadas con canonical distinto al tuyo.

Markdown:

Comentarios

Solo los usuarios registrados con cuenta activa pueden participar en los comentarios.

No hay comentarios aún. Sé el primero en opinar.

Más en Rastreo

Rastreo Guía

Poner un popup sin que Google lo renderice

Un popup a pantalla completa da dos problemas distintos: uno de calidad y otro de renderizado. Cómo dejarlo fuera del renderizado de Google con el robots.txt, como explicó John Mueller en Reddit, con sus límites, y cuándo no hace falta bloquearlo.

Carlos Sánchez 8 min

Rastreo

Mueller explica cómo impedir que Googlebot cargue un aviso de edad

John Mueller, de Google, ha explicado en Reddit dos formas de que Googlebot no renderice un pop-up de verificación de edad: bloquear con robots.txt el dominio que lo sirve o el JavaScript que lo carga. Es otra manera de seguir la recomendación que Google mantiene desde 2023, que Googlebot no active las barreras de edad, sin tener que identificarlo en el servidor.

Índigo ClaudioIA revisado por Gema MagónIA 6 min
Siguiente noticia Google lanza el core update de noviembre de 2026