Cada pocos meses alguien anuncia que las webs se van a morir. Que la gente ya no busca en Google, que le pregunta a ChatGPT, y que tu web se va a quedar como un folleto que nadie abre. Yo lo veo justo al revés.
Para que una IA te recomiende, antes alguien tiene que haber leído tu web. Puede ser una persona que llega desde Google, el bot de OpenAI indexando contenido para ChatGPT o un agente que un cliente ha lanzado desde su portátil para comparar tres proveedores. Da igual quién sea. Alguien entra, lee lo que cuentas y se queda con quién eres y qué ofreces. Sin web no hay nada que leer, y sin nada que leer no hay nada que recomendar.
Llevo trabajando con Drupal desde 2009 y el SEO técnico es parte de mi día a día. Con el GEO me está pasando algo curioso: cuando leo lo que se recomienda, la mayoría ya lo estaba haciendo. Así que hoy toca ordenarlo. Qué es el GEO, por qué en Drupal la parte técnica es prácticamente la misma que la del SEO de toda la vida, qué cosas sí cambian y cómo deberías medir todo esto ahora.
Lo de siempre antes de empezar: esto es mi opinión y mi experiencia como desarrollador. Lo mío es el SEO técnico. El SEO de contenidos lo toco de refilón y no me vendo como experto en eso.
Qué es GEO y en qué se diferencia del SEO
La forma más simple que tengo de explicarlo es esta.
SEO (Search Engine Optimization) es posicionarte para que un humano te busque y llegue a tu web.
GEO (Generative Engine Optimization) es posicionarte para que una inteligencia artificial llegue a tu web, la entienda y te cite o te recomiende en su respuesta.
A fin de cuentas, en los dos casos hablamos de entes que llegan a tu web. Unos son personas y otros son bots. Y lo que quieres de ambos es lo mismo: que te encuentren, que puedan leerte y que lo que lean les convenza.
Seguramente también hayas visto AEO, LLMO o AIO. Para lo que nos ocupa son nombres distintos para lo mismo. El término GEO viene de un paper académico de finales de 2023 (Aggarwal y otros, presentado en KDD 2024) que estudiaba cómo conseguir visibilidad en las respuestas de los motores generativos, y a partir de ahí se ha ido extendiendo.
El GEO es SEO para IA (y no pasa nada por llamarlo así)
Voy a mojarme con esto: para mí el GEO no es una disciplina nueva. Es SEO aplicado a otro canal.
Piénsalo. Cuando alguien optimiza un vídeo para salir en YouTube, lo llamamos SEO en YouTube. Lo mismo con Amazon, con Pinterest o con el SEO local. Cada plataforma tiene sus particularidades (en YouTube pesan la miniatura y la retención, en Amazon las reseñas) y nadie se ha inventado un acrónimo para cada una. Sigue siendo SEO. Con las IAs pasa igual: hay algún matiz propio, que te cuento más abajo, pero la base es la de siempre.
Si alguien te vende un servicio de GEO, hazle una pregunta sencilla: dime un factor de posicionamiento que sea solo de GEO y que no forme parte de un buen SEO. Te va a costar que te den uno que se sostenga.
Ahora, también entiendo por qué la palabra ha cuajado. La necesidad es real y no se la ha inventado nadie. Lo que pasa es muy simple: el responsable de una empresa le pregunta a ChatGPT cuál es la mejor empresa de lo suyo, le sale la competencia, y a partir de ahí quiere aparecer. Luego busca cómo se hace eso, se encuentra con la etiqueta "GEO" y empieza a pedirla. Por eso cada vez más clientes llegan pidiendo GEO en lugar de SEO.
No me parece mal recoger esa demanda y usar la palabra, si luego le explicas al cliente lo que de verdad necesita. Lo que me parece mal es venderlo como una dieta milagro. "Te voy a hacer un GEO increíble y vas a salir el primero en ChatGPT" es humo, porque nadie puede prometer eso.
Y, si lo piensas, ¿quién sabe hacer que una IA encuentre, entienda y recomiende una web? Los que llevamos toda la vida haciendo que Google la encuentre, la entienda y la posicione. No es casualidad.
Por qué un buen SEO técnico ya es casi todo el GEO
Lo que casi ningún artículo sobre GEO te dice claro: las IAs que buscan en internet no tienen una bola de cristal. Por debajo tiran de índices de buscadores, o de bots propios que funcionan exactamente igual que un buscador.
Google lo deja por escrito en su documentación sobre funciones de IA: para aparecer en AI Overviews o AI Mode no hay requisitos adicionales, las buenas prácticas de SEO de siempre siguen valiendo. Y quien rastrea es Googlebot, el de toda la vida. Copilot se apoya en el índice de Bing, hasta el punto de que las directrices para webmasters de Bing cubren las dos cosas a la vez. Claude ha usado Brave Search como proveedor de búsqueda y tiene su propio bot, Claude-SearchBot. ChatGPT empezó tirando de Bing y hoy tiene su rastreador, OAI-SearchBot. Perplexity tiene índice propio, alimentado por PerplexityBot.
¿Ves el patrón? Todo pasa por rastrear, indexar y posicionar. Lo que hace que Googlebot entienda bien tu web es lo mismo que hace que la entiendan los bots de las IAs. No hay un algoritmo secreto para IAs que premie otra cosa.
Lo que hago en Drupal y sirve igual para SEO que para GEO
No voy a entrar en configuración paso a paso, que daría para un artículo por módulo. Te cuento lo que reviso en cualquier Drupal que me llega y por qué le sirve igual a una persona que viene de Google que a un bot de IA.
URLs limpias y redirecciones
Drupal te da de serie /node/1234, que funciona pero no le dice nada a nadie. Con Pathauto generas alias a partir de patrones y te olvidas.
El compañero inseparable es Redirect. Cuando cambias una URL, la vieja tiene que ir con un 301 a la nueva. Si no, pierdes lo que esa página había ganado, y el bot que la tenía indexada se encuentra un 404 justo antes de decidir si te recomienda o no.
Metadatos y datos estructurados
Metatag es la base del SEO en Drupal: títulos, descripciones y canonical por tipo de contenido usando tokens, con la opción de sobrescribirlos página a página. Encima, Schema.org Metatag genera JSON-LD con Organization, Article, Product, BreadcrumbList y compañía. Para Google eso son resultados enriquecidos. Para una IA es una descripción sin ambigüedad de quién eres, qué vendes y quién firma el contenido.
Un matiz importante: no existe un "schema para IAs". Google dice que no hace falta ningún marcado especial y que los datos estructurados tienen que coincidir con lo que se ve en la página. El de siempre, bien hecho.
Sitemap e IndexNow
Simple XML Sitemap te genera el sitemap, con hreflang si tienes varios idiomas, y en sus versiones recientes puede avisar a los buscadores mediante IndexNow. En el mundo IA esto tiene su gracia: Bing usa esos avisos para refrescar su índice, y de ese índice bebe Copilot. Publicas o actualizas algo y se enteran antes.
HTML semántico y contenido renderizado en servidor
Esta es de las que más me encuentro mal en las auditorías. Un H1 por página. Encabezados en orden lógico, no "porque el H3 se ve más bonito". <main>, <nav> y <article> donde toca. Todo eso se decide en las plantillas Twig del tema.
Y lo más importante: que el contenido esté en el HTML que sirve el servidor. Drupal ya renderiza en servidor de serie, lo cual es una ventaja enorme. Pero en proyectos desacoplados, o con bloques que cargan el contenido por AJAX, lo veo romperse a menudo. Google ejecuta JavaScript. Muchos bots de IA no lo hacen, o no siempre. Si el texto no está en el HTML inicial, para ellos no existe.
Rendimiento
La velocidad cuenta para las personas y cuenta para los bots, que tienen un presupuesto de rastreo y no van a esperar eternamente. En Drupal empieza por la caché: Internal Page Cache y Dynamic Page Cache funcionando, Views con su caché configurada, nada que invalide medio sitio en cada petición y un Varnish o una CDN delante cuando el proyecto lo pide. Las imágenes, con estilos responsive, WebP o AVIF (desde Drupal 11.2 está en core) y lazy loading en lo que no se ve al cargar.
En casi todas las auditorías que hago, el problema no es que falte un módulo mágico. Es configuración mal puesta. Agregación de CSS y JS desactivada en producción, Views sin caché, un módulo custom que se carga las cache tags. Para encontrar esto sin ir a ciegas hice el módulo Audit, que te saca un informe de rendimiento, caché y SEO técnico de tu Drupal.
Accesibilidad
Una web accesible es una web que se entiende mejor. Textos alternativos en las imágenes, formularios con sus etiquetas, buen contraste, navegación por teclado. Los agentes de IA que navegan por una web se apoyan en buena parte en la misma información que usa un lector de pantalla, así que lo que haces por accesibilidad lo cobras dos veces.
Y el contenido
Aquí piso terreno que no es el mío, así que solo diré una cosa: ninguna optimización técnica arregla un contenido que no responde a nada. Lo que hace que Google te posicione, contenido útil escrito por alguien que sabe del tema y que responde preguntas concretas, es lo mismo que hace que una IA te cite.
Y otra que va muy ligada a lo que contaré después sobre métricas: escribe para tu cliente, no para el volumen. Un artículo sobre un tema de moda puede traerte miles de visitas y ningún cliente. Uno muy de nicho, que solo le interesa a quien tiene exactamente tu problema, trae muchas menos visitas y bastantes más contactos.
Lo que sí cambia con el GEO
Hasta aquí, SEO técnico de toda la vida. Ahora vamos con los matices que sí son propios de este canal.
El Markdown y el llms.txt: se recomendó, y ya no
Durante 2024 y 2025 se puso de moda la idea de que los LLMs leen mejor Markdown que HTML. Se propuso un fichero /llms.txt con un resumen de tu web, y también servir una versión .md de cada página a los bots. En Drupal salieron módulos para las dos cosas y alguna agencia empezó a venderlo como imprescindible.
Luego llegó la realidad. John Mueller, de Google, lo comparó con la vieja meta keywords y comentó que en los logs ni siquiera se ve a los bots pidiendo ese fichero. Gary Illyes confirmó que Google no lo usa. Y la propia documentación de Google ya dice que no hace falta crear ficheros especiales ni versiones en Markdown para aparecer en sus funciones de IA. Tiene toda la lógica: los modelos se han entrenado leyendo HTML normal, y lo leen sin ningún problema.
Para ser justo, hay matices. Dries Buytaert hizo la prueba en su blog ofreciendo una versión Markdown de cada post y lo contó en The Third Audience: los bots de OpenAI y Anthropic la empezaron a pedir enseguida. Pero que la cojan no significa que eso te haga salir más en las respuestas. Si tienes un portal de documentación técnica que consumen asistentes de programación, plantéatelo. Para una web corporativa, un ecommerce o un blog, no lo necesitas. Antes asegúrate de que tu HTML es limpio, que es lo que leen todos.
No bloquees a los bots de IA
Esta es la que más me preocupa, porque veo webs que se están borrando del mapa sin saberlo.
Con el SEO lo teníamos clarísimo: queríamos que Googlebot entrara y lo indexara todo. Si alguien lo bloqueaba por error en el robots.txt, a las dos semanas había drama porque el tráfico se había hundido. Con los bots de IA pasa exactamente lo mismo, pero con una diferencia: no te enteras. No hay un Search Console que te avise de que ChatGPT ha dejado de recomendarte.
Lo primero es entender que no todos los bots de IA hacen lo mismo. Los de entrenamiento, como GPTBot, ClaudeBot, Google-Extended o CCBot, recogen contenido para entrenar modelos futuros; bloquearlos te saca del entrenamiento, no de las respuestas. Los de búsqueda, como OAI-SearchBot, Claude-SearchBot o PerplexityBot (además de Googlebot y Bingbot, claro), construyen el índice que la IA consulta para responder. Si los bloqueas, dejas de aparecer, y OpenAI lo dice tal cual en su documentación de crawlers. Y luego están los que actúan en nombre de un usuario, como ChatGPT-User, Claude-User o Perplexity-User, que entran porque alguien acaba de preguntar algo y la IA quiere leer tu página en ese momento.
Mi recomendación por defecto para una web que vive de que la encuentren es dejar pasar a los de búsqueda y a los de usuario. Lo del entrenamiento es una decisión de negocio, y hay motivos de sobra para cerrarlo, pero tómala sabiendo lo que haces.
El problema es que muchas veces no lo decides tú. Te bloquean sin que lo sepas.
Cloudflare, desde julio de 2025, bloquea por defecto los crawlers de IA en los dominios nuevos, y desde entonces ha ido endureciendo esos valores por defecto. Si tu Drupal está detrás de Cloudflare, entra en el panel y mira qué tienes activado. Hoy, no mañana.
Luego está el WAF. Aquí Drupal tiene su propia historia: muchos sitios con búsquedas facetadas han sufrido picos de tráfico que parecían un DDoS y eran crawlers recorriendo todas las combinaciones posibles de facetas desde miles de IPs distintas. La reacción natural es meter reglas agresivas y bloquear todo lo que huela a bot. Lo entiendo, cuando el servidor está ardiendo nadie se pone a distinguir user agents. Pero con eso te llevas por delante a OAI-SearchBot, a Claude-User y al agente que un cliente ha mandado a mirar tus precios. La solución buena es atacar el problema concreto: facetas como filtros de formulario en lugar de enlaces, módulos como Facet Bot Blocker y rate limiting en los endpoints caros. Y dejar la puerta abierta para todo lo demás.
Y luego el clásico, el robots.txt heredado. Más de una vez me he encontrado un Disallow: / que venía de staging, o una lista de "bloquea todos los bots de IA" copiada de un blog de 2023 que hoy está bloqueando bots de búsqueda. Con el módulo RobotsTxt lo gestionas desde Drupal. Revísalo.
Lo peligroso de todo esto es que las consecuencias llegan tarde. Si el bot de una IA no puede leer tu web hoy, no te tendrá en su índice cuando dentro de unos meses alguien le pregunte por un proveedor como tú. Y no lo verás en ninguna gráfica.
Los agentes que vienen en nombre de tu cliente
Esto es lo que más va a crecer y lo que menos gente está mirando.
No hablo solo de los bots de las grandes empresas. Hablo de agentes que ejecuta un usuario cualquiera. Alguien que le dice a su asistente "búscame tres empresas de mantenimiento Drupal, mira qué ofrecen y dime cuál me conviene". El agente abre un navegador, a veces en la nube y a veces en el propio ordenador de esa persona, entra en tu web, lee tus servicios, quizá rellena el formulario de contacto y vuelve con una recomendación. Trabajo con agentes a diario, y que se usen para elegir proveedores es cuestión de tiempo, si no está pasando ya.
Algunos se identifican. Otros son literalmente un Chrome normal controlado por un modelo, con la IP y las cookies de tu futuro cliente. Si tu web le planta un CAPTCHA en cada clic o lo bloquea por comportarse "raro", le estás cerrando la puerta a alguien que venía a decidir si te contrata.
Lo que necesitan es lo mismo que necesita una persona. Cargar la página sin trabas, encontrar los servicios desde el menú, leer los precios en texto y no metidos en una imagen, entender un formulario porque sus campos tienen etiquetas. Otra vez HTML semántico y accesibilidad.
Deja de mirar posiciones y visitas: mira conversiones
Este es el cambio que creo que más cuesta asumir, tanto a los que hacemos la web como a los clientes.
Durante años, cuando se hablaba de SEO, mucha gente miraba dos cosas: en qué posición salía en Google y cuántas visitas recibía. Eran métricas vanidosas. La conversión siempre ha estado ahí, pero poca gente medía de verdad cuántas de esas visitas acababan pagando. Salir el primero en Google daba gusto verlo, aunque no se tradujera en clientes.
Con la IA esas métricas pierden todavía más sentido. Una IA puede leer tu web, recomendarte en su respuesta y que tú no te enteres nunca, porque la recomendación ocurre dentro de su plataforma. No hay una "posición" en ChatGPT que puedas consultar. Cada respuesta es distinta según quién pregunte, cómo lo pregunte, qué modelo use y lo que el asistente ya sepa de esa persona. Y encima son conversaciones: alguien empieza preguntando por una cosa y acaba recibiendo recomendaciones de otra que ni había buscado. El concepto de palabra clave, tal como lo conocíamos, aquí no aplica. Lo que hay son intenciones.
Ya hay herramientas que prometen medir tu visibilidad en las IAs. Lo que hacen, básicamente, es lanzar unas cuantas preguntas inventadas a varios modelos y mirar si sales. Algo te pueden orientar, pero no te fíes demasiado: tu cliente no pregunta lo que tú te has inventado, y aunque lo hiciera, le saldría otra respuesta.
Mi forma de verlo es que el GEO se parece más a un anuncio en la tele que a una campaña de Google Ads. Sabes que salir en la tele te beneficia, ves que las ventas suben, pero no puedes trazar cada cliente hasta el anuncio que vio. Con la IA pasa algo parecido. Alguien le pregunta a ChatGPT por un proveedor, le salen tres nombres, busca el tuyo en Google y entra. En tu analítica eso aparece como una búsqueda de marca o tráfico directo. La IA no sale por ningún lado, pero ha sido la que te ha traído el cliente.
Por eso, para mí, la métrica que importa es la conversión. Es perfectamente posible que en unos años recibas bastantes menos visitas que ahora y que, aun así, tengas muchas más ventas. ¿Por qué? Porque los que llegan vienen mucho más filtrados. Antes entraba alguien que había hecho una búsqueda genérica y estaba mirando diez webs a la vez. Ahora, muchas veces, quien llega ya ha preguntado a una IA, ha recibido dos o tres recomendaciones y entra en tu web para confirmar. O directamente llega un agente que ya ha comparado por él. Son visitas mucho más cualificadas, y la gente que te busca y te encuentra está bastante más predispuesta a contratarte que la que ve un anuncio entre otros cien.
Si tu web vende algo, y si estás leyendo esto seguramente sí, lo que importa es cuánta gente acaba contactando, pidiendo presupuesto o comprando. Todo lo que he contado en este artículo son cambios que a largo plazo mejoran eso, porque llegas a más gente por más caminos, aunque no tengas una gráfica que te diga cuántas veces te ha recomendado una IA.
En Drupal esto se monta sin complicarse demasiado:
- Marca como conversión el envío de los formularios que importan, contacto o presupuesto, en tu analítica, sea GA4 o Matomo.
- Vigila la evolución de las búsquedas de marca y del tráfico directo. Si suben sin que hayas hecho nada especial, algo te está recomendando.
- Segmenta las visitas que llegan desde chatgpt.com, perplexity.ai, copilot.microsoft.com o gemini.google.com. ChatGPT, además, suele añadir
utm_source=chatgpt.coma sus enlaces. - Añade a tu formulario de contacto un "¿cómo nos has conocido?" con la opción de ChatGPT u otra IA. Es lo más rudimentario del mundo y, para algunos clientes, la única forma de saberlo.
- Mira de vez en cuando los logs del servidor para comprobar que los bots de búsqueda de las IAs entran y reciben un 200, no un 403.
No vas a tener la foto completa, eso hay que asumirlo. La atribución va a ser más estadística que exacta. Pero sí puedes saber si te llegan más contactos y si son mejores que los de antes.
Y tengo la sensación de que esto no será siempre así. ChatGPT ya está empezando a meter anuncios, y cualquier plataforma que quiera vender publicidad acaba dando a las empresas datos sobre su visibilidad orgánica, igual que Google tiene Search Console. Supongo que algún día tendremos un panel oficial de cada IA. Hasta entonces, conversiones.
Mi checklist rápido para un Drupal preparado para SEO y GEO
Si solo te quedas con una parte del artículo, que sea esta:
- Pathauto y Redirect funcionando, sin
/node/123sueltos ni cadenas de redirecciones. - Metatag con títulos, descripciones y canonical coherentes por tipo de contenido.
- Schema.org Metatag con datos que coincidan con lo que se ve en la página.
- Sitemap enviado a Google y a Bing, con IndexNow activado.
- robots.txt revisado, con los bots de búsqueda y de usuario permitidos.
- Cloudflare y WAF revisados, sin bloqueos de "bots de IA" que no hayas decidido tú.
- Contenido en el HTML que sirve el servidor, con HTML semántico.
- Caché, imágenes y Core Web Vitals en orden.
- hreflang correcto si la web es multilingüe.
- Conversiones y búsquedas de marca medidas, no solo visitas y posiciones.
Preguntas frecuentes sobre SEO y GEO en Drupal
¿Qué es el GEO (Generative Engine Optimization)?
Es optimizar tu web para que los motores de respuesta con IA, como ChatGPT, los AI Overviews de Google, Copilot, Claude o Perplexity, puedan encontrarla, entenderla y citarla o recomendarla en sus respuestas.
¿Qué diferencia hay entre SEO y GEO?
Con SEO, un humano busca y llega a tu web. Con GEO, una IA llega a tu web para responder a un humano. La base técnica es casi la misma, porque las IAs usan índices de buscadores o bots que funcionan como buscadores. Para mí, el GEO es SEO aplicado a un canal nuevo.
¿Hay que hacer algo especial en Drupal para el GEO?
Poco más allá de un buen SEO técnico. No bloquear los bots de búsqueda y de usuario de las IAs, revisar Cloudflare y el WAF, y asegurarte de que el contenido está en el HTML renderizado en servidor.
¿Necesito un llms.txt o versiones en Markdown de mis páginas?
Para la mayoría de webs, no. Google ha dicho que no lo usa y que no hacen falta ficheros especiales para aparecer en sus funciones de IA. Solo le veo sentido en portales de documentación técnica.
¿Si bloqueo GPTBot desaparezco de ChatGPT?
No. GPTBot es el bot de entrenamiento. Lo que te da visibilidad en la búsqueda de ChatGPT es OAI-SearchBot, que se controla por separado en el robots.txt.
¿Qué módulos de Drupal necesito para SEO y GEO?
Los mismos para los dos: Pathauto, Redirect, Metatag, Schema.org Metatag, Simple XML Sitemap y RobotsTxt, más una caché bien configurada.
¿Cómo sé si una IA me está recomendando?
Directamente, hoy no puedes saberlo con precisión. Lo que sí puedes es medir conversiones, vigilar las búsquedas de marca y el tráfico directo, segmentar las visitas que llegan desde plataformas de IA y preguntar a tus clientes cómo te han encontrado.
Al final, son entes que llegan a tu web
Si me tengo que mojar: no contrates "GEO" como un servicio aparte si tu SEO técnico no está bien, porque pagarás dos veces por lo mismo o pagarás por cosas que no hacen falta. Arregla la base de tu Drupal y luego dedica un rato a lo que sí es nuevo. Qué bots dejas entrar, qué está haciendo tu Cloudflare por su cuenta y si un agente entendería tu web igual que la entiende un cliente.
Tampoco me creo eso de que el SEO se esté muriendo. Las IAs no le están quitando nada a la web, están abriendo canales nuevos por los que te pueden encontrar. Puede que baje el tráfico, pero si lo que llega convierte mejor, el negocio sale ganando.
¿Cambiará todo esto en seis meses? En los detalles, seguramente sí. Los bots cambian de nombre, Cloudflare toca sus valores por defecto y alguien inventará otro acrónimo. Lo que no creo que cambie es lo de fondo: humanos o bots, alguien tiene que poder entrar en tu web y entender lo que cuentas. Y si al final de ese camino hay un cliente que te contrata, lo demás importa bastante menos.
Si quieres que le eche un ojo a tu Drupal, ya sabes dónde estoy.