Cómo aparecer y medir tu presencia en ChatGPT y AI Overviews: guía para analizar tu visibilidad de marca en la IA
Si le preguntas a ChatGPT dónde comprar el producto que vendes o contratar el servicio que ofreces, ¿aparece tu marca? Y si no aparece tu marca, ¿al menos tu web ha sido una de las fuentes que el modelo ha usado para construir la respuesta? Da igual si vendes sofás, gestionas una clínica dental o comercializas un servicio B2B: saber cómo aparecer y medir tu presencia en ChatGPT y en las AI Overviews de Google es hoy el primer paso para posicionar tu empresa en la IA.
Google ya ha dado un primer paso en Search Console: en junio de 2026 anunció un nuevo informe (todavía en despliegue por fases) que muestra las impresiones que reciben tus páginas dentro de AI Overviews y AI Mode, es decir, cuántas veces ha aparecido tu web como fuente. Es un avance real, pero tiene un techo claro: no te dice cuántas veces se menciona tu marca en la respuesta —aunque tu web no haya sido la fuente utilizada—, ni tu cuota de visibilidad frente a la competencia, ni qué fuentes están usando los LLMs para construir las respuestas de las consultas relevantes de tu sector, que es justo lo que necesitas saber para poder influir en ellas de forma quirúrgica y ganar más menciones. Y en ChatGPT, de momento, no hay ni siquiera eso: ni ChatGPT ni el resto de LLMs ofrecen un panel de analítica propio.
Esta guía te explica, paso a paso, cómo montar tu propio sistema para analizar visibilidad en ChatGPT y en AI Overviews con un Google Sheet, un script y las APIs de los modelos que quieras monitorizar. No hace falta pagar ninguna herramienta de terceros: con esto puedes medir la visibilidad de marca en ChatGPT, saber qué fuentes están citando los LLMs en tu sector y qué hacer con esa información para posicionar mejor tu empresa en la IA.
Por qué posicionar tu empresa en la IA (y cómo lo vamos a hacer)
Cada vez más gente resuelve sus dudas y decide qué marca comprar preguntándole directamente a una IA, sin pasar por una lista de resultados. Las fuentes y las marcas que la IA cita hoy tienden a seguir siendo las citadas mañana, porque los modelos reutilizan patrones de confianza ya establecidos: cuanto antes entres en ese circuito, antes empiezas a beneficiarte de ese efecto acumulativo. Medir tu punto de partida es el primer paso para entrar en él.
Posicionarte en la IA no es una sola cosa: hay dos tipos de posicionamiento distintos, y en esta guía los vas a medir por separado, no mezclados.
- Posicionamiento por mención de marca: que la IA diga tu nombre cuando alguien pregunta directamente por tu categoría de producto o servicio ("dónde comprar las mejores neveras"). Es el equivalente a que te encuentren buscando tu marca por nombre.
- Posicionamiento por citación de tu web o recurso digital: que tus artículos, guías de compra o incluso tus redes sociales sean la fuente que la IA usa para construir la respuesta, aunque tu marca no se mencione explícitamente. Es notoriedad indirecta: no te nombran a ti, pero tu contenido está educando la respuesta.
Nuestro método, resumido en cinco movimientos (el detalle completo, paso a paso, viene justo después de este resumen):
- Conviertes tu keyword research en prompts sintéticos: las preguntas reales que un usuario le haría a una IA sobre tu categoría.
- Separas esos prompts en dos paquetes según la intención: uno informacional (¿tus recursos educan al usuario?) y otro comercial (¿te menciona como marca?).
- Automatizas la medición contra AI Overview con un script que tú mismo controlas: pagas el coste de las llamadas a la API, pero te sale considerablemente más barato que contratar una herramienta de terceros que por dentro hace exactamente esas mismas llamadas.
- Analizas los resultados con tablas dinámicas: cuántas veces te mencionan y qué fuentes está usando la IA para construir sus respuestas.
- Actúas en dos frentes distintos: digital PR para ganar menciones de marca, y ajustes de contenido propio para que tus recursos se conviertan en fuente.
Al final de esta guía te llevas tres cosas concretas y accionables: un sistema de medición propio y repetible (un Google Sheet + un script), un ranking de qué fuentes priorizar en tus acciones de PR, y un criterio claro de qué tocar en tu contenido para que la IA empiece a citarte a ti directamente. Vamos con el detalle.
Qué significa aparecer y medir tu presencia en la IA
Ya has visto la distinción al principio: mención de marca por un lado, citación de tu web o recurso digital por otro. Vamos a bajar un nivel más y ver exactamente qué preguntas responde cada una y cómo se traduce en la práctica —porque, como verás en el paso 3, esta separación no es solo conceptual: se traduce en dos paquetes de prompts distintos, no en un único listado mezclado.
- Citación de tu web o recurso digital: ¿está tu contenido entre las fuentes que el LLM ha usado para construir la respuesta? Esto se mide con preguntas puramente informativas ("qué debo tener en cuenta antes de comprar una nevera americana"), donde el usuario todavía no está decidiendo qué marca comprar. Aquí compruebas si tus artículos de blog, tus guías de compra o incluso contenido como tus reels están influyendo en esas fases iniciales del customer journey.
- Mención de marca en la respuesta: cuando un usuario pregunta algo directamente relacionado con una decisión de compra ("dónde comprar las mejores neveras"), ¿el LLM menciona tu marca? Aquí no mides tu contenido, mides tu huella digital: si es lo bastante profunda como para que el LLM te recomiende a ti, y no a la competencia, en cuanto le preguntan por tu categoría de producto o servicio.
Medir ambas cosas te da visibilidad de todo el customer journey: desde que el usuario empieza a informarse hasta que está listo para comprar. Y hay un tercer dato que casi nunca se mide y que aporta valor directo a Social Media: si tus perfiles en redes sociales están siendo usados como fuente por los LLMs. Lo veremos en el apartado bonus, al final.
Paso 1 — El punto de partida para posicionar tu empresa en la IA: tu keyword research
No hace falta ninguna herramienta nueva para este primer paso. Usa el keyword research que ya tengas (Search Console, tu herramienta de SEO habitual, lo que sea) y selecciona las keywords con volumen de búsqueda relevantes para tu negocio, agrupadas por topic. Si vendes electrodomésticos, un topic sería "neveras", otro "lavadoras", otro "aires acondicionados". Si vendes un servicio B2B, un topic podría ser cada una de tus líneas de producto o cada problema que resuelves para tus clientes.
De cada topic no te quedes con una sola keyword: selecciona un conjunto amplio, al menos 10-15 keywords relevantes (más adelante, en el paso 2, verás que lo ideal es llegar a 20-30 por topic). Prioriza las de mayor volumen y las que representen distintas formas de buscar dentro de esa categoría —no es lo mismo "mejores neveras" que "nevera americana barata", aunque las dos pertenezcan al mismo topic. Cada una de esas keywords será la semilla de su propio grupo de prompts sintéticos en el paso siguiente.
- Mantén el número de keywords parejo entre topics: si "neveras" se queda con 25 keywords y "lavadoras" con solo 8, luego no vas a poder comparar tu visibilidad entre ambos topics con números realistas, aunque el análisis final lo expreses en porcentajes. Apunta a un número similar de keywords por topic desde este primer paso: es más fácil corregirlo aquí que en el paso 6, con las tablas dinámicas ya construidas.
Paso 2 — Convierte cada keyword en "prompts sintéticos" para medir tu presencia en ChatGPT y AI Overviews
Un prompt sintético es una variación conversacional de una de tus keywords: la forma en la que una persona real le preguntaría eso mismo a un LLM. La keyword "mejores neveras" tiene volumen de búsqueda en Google, pero nadie escribe literalmente "mejores neveras" en ChatGPT. Este ejercicio se repite para cada una de las 10-15 (o más) keywords que seleccionaste en el paso 1, no solo para una.
Aquí hay un matiz que cambia cómo se construye todo el ejercicio: las intenciones informacional y comercial no se mezclan dentro del mismo listado. Se generan dos paquetes de prompts separados, cada uno con un objetivo de medición distinto.
Cuántos prompts sintéticos necesitas por keyword
Para sacar conclusiones sólidas basadas en datos hace falta trabajar con un volumen alto de prompts, no con 2 o 3 por keyword. La referencia con la que trabajamos es de unos 10 prompts sintéticos por cada keyword y por cada intención: 10 informacionales + 10 comerciales, 20 prompts en total por keyword. Si en el paso 1 seleccionaste, como se recomendaba, entre 20 y 30 keywords por topic, el resultado es de entre 400 y 600 prompts sintéticos por topic —y ese es precisamente el volumen que necesitas para que las tablas dinámicas del paso 6 arrojen conclusiones fiables, no ruido estadístico.
El problema es evidente: escribir 200-300 prompts a mano por topic, uno a uno, no es realista. Ahí es donde entran los prompts semilla.
Un atajo para escalar: los prompts semilla
Un prompt semilla es una estructura genérica, sin keyword todavía, que replicas mecánicamente sobre cada una de tus keywords para generar tus 10 prompts sintéticos por keyword y por intención, sin tener que redactarlos uno a uno. El prompt semilla "Mejores..." aplicado a la keyword "marcas de nevera" da como resultado el prompt sintético "Mejores marcas de nevera". Con una lista de 8-10 prompts semilla por paquete (informacional y comercial) y tus 20-30 keywords por topic, generas el volumen completo de forma prácticamente mecánica.
| Prompt semilla | Keyword | Prompt sintético resultante |
|---|---|---|
| Mejores... | marcas de nevera | Mejores marcas de nevera |
| ¿Cuáles son las mejores...? | marcas de nevera | ¿Cuáles son las mejores marcas de nevera? |
| Dime 10 marcas de... | marcas de nevera | Dime 10 marcas de nevera |
Tres prompts semilla aplicados a la misma keyword ("marcas de nevera"). En un caso real tendrías una lista de 8-10 prompts semilla por paquete (informacional y comercial), aplicada a cada una de tus keywords del topic.
Paso 3 — Separa tus prompts en dos paquetes por intención
Con tus prompts sintéticos ya generados, el último ajuste antes de pasar a la hoja de cálculo es dividirlos en dos paquetes que no se mezclan nunca entre sí, porque miden cosas distintas y se analizan por separado en el paso 6.
Paquete informacional: mide si tus activos digitales influyen en las primeras fases
Prompts que reflejan a un usuario que todavía se está informando, sin haber decidido marca. Prompts semilla típicos de este paquete: "¿Qué debo tener en cuenta antes de...?", "¿Cómo elegir...?", "Diferencias entre... y...". Aplicados a la keyword "comprar nevera americana":
- "¿Qué debo tener en cuenta antes de comprar una nevera americana?"
- "¿Cómo elegir el tamaño de nevera para una familia de 4?"
- "Diferencias entre una nevera americana y una de dos puertas"
Este paquete se cruza más adelante con la pestaña de fuentes citadas (paso 6): sirve para comprobar si tus artículos de blog, tus guías de compra o incluso contenido como tus reels están siendo usados por los LLMs para responder a este tipo de preguntas, antes de que el usuario haya decidido qué marca comprar.
Paquete comercial: mide la mención de tu marca
Prompts que reflejan a un usuario que ya está listo para decidir entre marcas. Prompts semilla típicos de este paquete: "Mejores...", "¿Cuáles son las mejores...?", "Recomiéndame...", "Dime 10 marcas de...". Aplicados a la keyword "mejores neveras":
- "¿Cuáles son las mejores neveras del mercado?"
- "Recomiéndame una nevera americana buena y no muy cara"
- "Mejores marcas de neveras en 2026"
Este paquete se cruza con la pestaña de respuestas (paso 6) para medir si tu huella digital es lo bastante profunda como para que, en cuanto preguntan por tu categoría de producto o servicio, el LLM te recomiende a ti y no a la competencia.
Geolocaliza tus prompts (las APIs no lo hacen por ti)
La mayoría de las APIs de los LLMs no permiten indicar una ubicación geográfica como parámetro de la consulta, a diferencia de una búsqueda en Google. Si te interesa saber cómo respondería el modelo a alguien que busca desde España frente a alguien que busca desde México, la forma práctica de forzarlo es añadir la región directamente al final del prompt sintético:
| Prompt sintético base | Región objetivo | Prompt sintético geolocalizado |
|---|---|---|
| Mejores marcas de nevera | España | Mejores marcas de nevera en España |
| Mejores marcas de nevera | México | Mejores marcas de nevera en México |
El mismo prompt sintético, geolocalizado añadiendo la región al final del texto.
Si decides trabajar con varias geolocalizaciones, ten en cuenta que el ejercicio se replica entero por cada una: los mismos prompts semilla, aplicados a las mismas keywords, pero con el sufijo de cada región, y lanzados contra cada LLM. Por ejemplo, si mides 4 topics con una media de 500 prompts sintéticos por topic (2.000 prompts en total) y quieres comparar España y México, pasas a tener 4.000 prompts (2.000 por región). Lanzados contra dos LLMs, eso son 8.000 respuestas para analizar en lugar de 4.000. Es un multiplicador que conviene tener en cuenta antes de decidir cuántas regiones vas a medir a la vez.
- Repite el ejercicio por cada topic y subcategoría: si dentro de "neveras" te interesa distinguir entre neveras americanas y neveras de dos puertas, genera ambos paquetes (informacional y comercial) para cada subcategoría, no solo para el topic general.
Aplica también aquí la regla de paridad del paso 1: intenta que el número de prompts sintéticos por topic sea similar entre todos tus topics. Si "neveras" termina con 300 prompts y "lavadoras" con 120, comparar la visibilidad entre ambos topics deja de ser fiable incluso en términos porcentuales, porque cada porcentaje se apoya en una base muy distinta. El objetivo es que, cuando compares topics entre sí, lo hagas sobre números absolutos parecidos.
Con 20-30 keywords y 400-600 prompts sintéticos por topic, si quieres medir 4 topics son entre 1.600 y 2.400 prompts sintéticos en total. Y si los lanzas contra dos LLMs —por ejemplo AI Overviews y ChatGPT—, obtendrás entre 3.200 y 4.800 respuestas para analizar. Son cifras que dan una idea real de la inversión de tiempo (y de coste de API) que requiere hacer este ejercicio con rigor, frente a lanzar un puñado de prompts sueltos a mano.
Paso 4 — Organiza tus prompts en un Google Sheet
Crea una pestaña llamada "Prompts" con estas cinco columnas, incluyendo la intención de cada prompt (informacional o comercial) para poder separar los análisis más adelante. Esta tabla es la que alimentará el script del paso siguiente:
| Prompt | Topic | Subcategoría | Keyword origen | Intención |
|---|---|---|---|---|
| ¿Qué debo tener en cuenta antes de comprar una nevera americana? | Neveras | Neveras americanas | comprar nevera americana | Informacional |
| ¿Cuáles son las mejores neveras del mercado? | Neveras | Neveras americanas | mejores neveras | Comercial |
| Recomiéndame una nevera americana buena y no muy cara | Neveras | Neveras americanas | mejores neveras | Comercial |
Ejemplo de la pestaña "Prompts" con datos reales de muestra: dos prompts del paquete comercial y uno del paquete informacional.
Paso 5 — Automatiza la medición en AI Overview con SerpApi
Este es el paso que marca la diferencia frente a ir probando prompts a mano uno por uno. Con un script en Google Apps Script (nativo de Google Sheets, no requiere instalar nada) puedes recorrer toda la pestaña "Prompts", lanzar cada prompt contra AI Overviews y volcar los resultados en dos pestañas nuevas.
Para automatizar específicamente AI Overviews usamos la Google AI Overview API de SerpApi, un servicio de terceros que hace de intermediario: le mandas una consulta y te devuelve el AI Overview real que Google mostraría para esa búsqueda, ya troceado en JSON (texto y fuentes citadas por separado), sin que tengas que abrir un navegador y copiar a mano. Necesitas una cuenta en serpapi.com y una API key propia (tienen plan gratuito limitado para probar).
La ventaja frente a llamar directamente a un LLM conversacional: esta API sí acepta parámetros de idioma (hl) y región (gl) de forma nativa, así que para medir AI Overviews no necesitas el truco de añadir la región al final del prompt que vimos antes —ese truco sigue siendo necesario si más adelante quieres sumar ChatGPT u otro modelo por su propia API, que no aceptan geolocalización como parámetro.
Así queda un ejemplo funcional del script, pensado para ejecutarse directamente desde Extensiones → Apps Script en tu Google Sheet. La API key se guarda en las propiedades del script, nunca en el propio código, y el idioma y la región se configuran como parámetros de la llamada:
function medirVisibilidadAIOverview() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const hojaPrompts = ss.getSheetByName('Prompts');
if (!hojaPrompts) {
throw new Error('No existe ninguna pestaña llamada "Prompts" en este Google Sheet. Revisa el nombre exacto de la pestaña (mayúsculas, espacios) y vuelve a ejecutar.');
}
const prompts = hojaPrompts.getDataRange().getValues();
const respuestas = ss.insertSheet('Respuestas_' + new Date().getTime());
const fuentes = ss.insertSheet('Fuentes_' + new Date().getTime());
respuestas.appendRow(['Prompt ID','Prompt','Topic','Subcategoria','Intencion','Respuesta']);
fuentes.appendRow(['Prompt ID','Fuente (dominio)','URL completa','Topic','Subcategoria','Intencion']);
for (let i = 1; i < prompts.length; i++) {
const promptId = i; // usamos el número de fila como ID, no hace falta una columna aparte
const [prompt, topic, subcategoria, , intencion] = prompts[i]; // el 4º valor (keyword origen) no se usa aquí
const resultado = llamarGoogleAIOverview(prompt);
respuestas.appendRow([promptId, prompt, topic, subcategoria, intencion, resultado.texto]);
resultado.fuentes.forEach(url => {
fuentes.appendRow([promptId, extraerDominio(url), url, topic, subcategoria, intencion]);
});
Utilities.sleep(1000); // evita saturar el rate limit de la API
}
}
function llamarGoogleAIOverview(prompt) {
const apiKey = PropertiesService.getScriptProperties().getProperty('SERPAPI_API_KEY');
// ↑ AQUÍ VA TU API KEY DE SERPAPI (Configuración del proyecto > Propiedades del script)
if (!apiKey) {
throw new Error('No se ha encontrado la propiedad SERPAPI_API_KEY. Ve a Configuración del proyecto > Propiedades del script y añádela con tu API key de serpapi.com.');
}
const params = {
engine: 'google',
q: prompt,
hl: 'es', // ← AQUÍ EL IDIOMA (hl = idioma de la búsqueda: 'es', 'en', 'fr'...)
gl: 'es', // ← AQUÍ LA REGIÓN (gl = país objetivo: 'es', 'mx', 'us'...)
api_key: apiKey
};
const primeraLlamada = JSON.parse(
UrlFetchApp.fetch('https://serpapi.com/search.json?' + construirQuery(params)).getContentText()
);
let aiOverview = primeraLlamada.ai_overview;
// Algunas consultas requieren una segunda llamada para completar el AI Overview
if (aiOverview && aiOverview.page_token) {
const paramsToken = {
engine: 'google_ai_overview',
page_token: aiOverview.page_token,
api_key: apiKey
};
const segundaLlamada = JSON.parse(
UrlFetchApp.fetch('https://serpapi.com/search.json?' + construirQuery(paramsToken)).getContentText()
);
aiOverview = segundaLlamada.ai_overview;
}
if (!aiOverview) {
return { texto: '(Google no mostró AI Overview para este prompt)', fuentes: [] };
}
const texto = (aiOverview.text_blocks || [])
.map(bloque => bloque.snippet || '')
.filter(Boolean)
.join(' ');
const fuentesUrls = (aiOverview.references || [])
.map(referencia => referencia.link)
.filter(Boolean);
return { texto: texto, fuentes: fuentesUrls };
}
function construirQuery(params) {
return Object.keys(params)
.map(clave => encodeURIComponent(clave) + '=' + encodeURIComponent(params[clave]))
.join('&');
}
function extraerDominio(url) {
return url.split('/')[2] || url;
}
Ejemplo de Apps Script: recorre la pestaña "Prompts", llama a la Google AI Overview API de SerpApi (con hl y gl configurados) y vuelca respuestas y fuentes en dos pestañas nuevas. La constante SERPAPI_API_KEY se define en Configuración del proyecto → Propiedades del script, no en el código.
Paso a paso para poner en marcha el script
Si es la primera vez que usas Apps Script, estos son todos los pasos, uno por uno, desde la hoja en blanco hasta ver los resultados. Antes de nada, dos cosas que hay que respetar sí o sí para que el script funcione:
- El nombre de la pestaña de entrada: tiene que llamarse exactamente Prompts —con P mayúscula, sin tilde, sin espacios antes ni después—. El script busca ese nombre literal; si no lo encuentra, falla.
- El orden de las columnas, no el texto de la cabecera: el script lee cada fila por posición (columna A, B, C...), no por el texto que pongas en la fila 1. Puedes escribir la cabecera como quieras ("Prompt", "prompt", "Mi prompt" — da igual), pero el ORDEN de las columnas tiene que ser: A = Prompt, B = Topic, C = Subcategoría, D = Keyword origen, E = Intención. La fila 1 se ignora siempre (se asume que es la cabecera), así que empieza a meter datos reales en la fila 2.
-
Crea la pestaña "Prompts" en tu Google Sheet.
Añade una pestaña nueva (icono "+" abajo a la izquierda) y renómbrala a Prompts —este nombre sí lo usa el script para encontrar la pestaña, tiene que ser exactamente ese—. Dentro de esa pestaña, en la fila 1 escribe las cabeceras: esto es solo a modo de recordatorio visual para ti, el script no lee el texto de la fila 1 (la ignora siempre). Lo que sí importa es el orden de las columnas: a partir de la fila 2, rellena tus prompts sintéticos con sus columnas Topic, Subcategoría, Keyword origen e Intención, en ese orden exacto.
-
Abre el editor de Apps Script y pega el script.
Desde tu Google Sheet: menú Extensiones → Apps Script. Se abrirá una pestaña nueva del navegador con un archivo llamado Código.gs (o Code.gs) con una función vacía de ejemplo. Selecciona todo ese contenido (Ctrl+A) y bórralo, y pega el script completo. Guarda con el icono del disquete o Ctrl+S; si te pide un nombre para el proyecto, ponle el que quieras (por ejemplo "Visibilidad AI Overview"), no afecta al funcionamiento.
-
Configura tu API key como propiedad del script.
En el menú lateral izquierdo del editor de Apps Script, pulsa el icono de engranaje ⚙️ (Configuración del proyecto). Baja hasta "Propiedades del script" y pulsa "Añadir propiedad del script". En el campo Propiedad escribe exactamente SERPAPI_API_KEY, y en el campo Valor pega tu API key real, copiada de serpapi.com/manage-api-key. Guarda. Este es el único sitio donde va tu key: nunca se escribe dentro del código.
-
Ejecuta la función y acepta los permisos de Google.
Vuelve al editor de código (icono "<>" en el menú lateral). Arriba, junto al botón Ejecutar, hay un desplegable de funciones: selecciona medirVisibilidadAIOverview y pulsa Ejecutar (▶). La primera vez te aparecerá una ventana "Autorización necesaria": pulsa Revisar permisos, elige tu cuenta de Google, y te aparecerá una pantalla que dice algo como "Google no ha verificado esta aplicación". Esto es normal y esperable: es tu propio script personal, no una app pública, así que Google no lo tiene verificado. Pulsa en Avanzado (o "Advanced") y luego en "Ir a [nombre de tu proyecto] (no seguro)". En la siguiente pantalla verás qué permisos pide el script (acceso a tus hojas de cálculo y a servicios externos, para poder llamar a la API) y pulsas Permitir.
-
Comprueba que ha funcionado.
Tras aceptar los permisos, el script se ejecuta solo (si no, vuelve a pulsar Ejecutar). Abajo, en el panel de "Ejecución" del editor, puedes ver si ha terminado sin errores. Vuelve a tu Google Sheet: deberían haber aparecido dos pestañas nuevas, Respuestas_... y Fuentes_..., con los resultados de cada prompt.
Un par de detalles a tener en cuenta antes de lanzar el volumen completo: el plan gratuito de SerpApi incluye 250 búsquedas al mes, de sobra para probar con un puñado de prompts antes de lanzar los 400-600 por topic de los que hablábamos en el paso 2. Y si el script falla, el propio editor de Apps Script guarda un historial de ejecuciones (icono del reloj, en el menú lateral) donde puedes ver el error exacto de cada intento.
Al ejecutar la función, obtienes dos pestañas nuevas:
- Respuestas: una fila por cada prompt, con el texto completo del AI Overview obtenido (o el aviso de que Google no mostró AI Overview para esa consulta).
- Fuentes: una fila por cada URL citada, ya asociada a su topic y subcategoría, lista para analizar.
Ejemplo de cómo queda la pestaña de respuestas para un prompt del paquete comercial. Como la fila la genera un único AI Overview, para comparar con la competencia buscas manualmente el nombre de cada marca dentro de ese mismo texto (aquí, a modo de referencia, se muestra el resultado ya anotado con tu marca y con la de un competidor):
| Prompt ID | Respuesta (extracto del AI Overview) | Marca mencionada (1/0) |
|---|---|---|
| 002 | [texto del AI Overview] | 1 |
| 002 | [texto del AI Overview, competidor] | 0 |
La columna "Marca mencionada (1/0)" indica solo si tu marca aparece o no en esa respuesta: 1 significa que se menciona, 0 que no se menciona.
Cómo se rellena: en la pestaña "Respuestas", añade una columna nueva junto a las que genera el script (por ejemplo la columna G) y en la primera fila de datos escribe una fórmula como esta:
=SI(ESNUMERO(HALLAR("marca";F2));1;0)
Sustituye "marca" por el nombre real de tu marca, y F2 por la celda de la columna "Respuesta" de esa misma fila (en nuestra estructura de pestaña, la F). Luego arrastra esa celda hacia abajo (el pequeño cuadrado azul de la esquina inferior derecha de la celda) para copiar la fórmula a todas las filas: Sheets ajustará automáticamente F2 a F3, F4, F5... según la fila.
Qué hace cada parte de la fórmula, de dentro hacia fuera:
- HALLAR("marca";F2): busca el texto "marca" dentro de la celda F2. Si lo encuentra, devuelve la posición donde empieza (un número); si no lo encuentra, devuelve un error. A diferencia de ENCONTRAR, HALLAR no distingue mayúsculas de minúsculas, así que detecta igual "Marca", "MARCA" o "marca".
- ESNUMERO(...): comprueba si lo que ha devuelto HALLAR es un número (lo encontró) o un error (no lo encontró), y lo convierte en VERDADERO o FALSO.
- SI(...;1;0): traduce ese VERDADERO/FALSO a 1 o 0, que es el formato que interesa para poder sumar la columna directamente en la tabla dinámica del paso 6.
Y así queda la pestaña de fuentes, con una fila por cada URL que Google haya citado dentro del AI Overview:
| Prompt ID | Fuente (dominio) | URL completa | Topic | Subcategoría |
|---|---|---|---|---|
| 001 | ocu.org | ocu.org/electrodomesticos/neveras/analisis-comparativas | Neveras | Americanas |
| 001 | elmueble.com | elmueble.com/hogar/neveras-americanas-mejores-marcas | Neveras | Americanas |
Cada fila es una fuente citada por un prompt en el AI Overview obtenido. La columna "Fuente (dominio)" es la que usarás en el paso 6 para el ranking de dominios; "URL completa" es el artículo exacto, la que necesitas a mano cuando vayas a hacer digital PR sobre esa fuente.
Paso 6 — Analiza tu visibilidad con tablas dinámicas
Con las dos pestañas ya pobladas, todo el análisis se hace con tablas dinámicas nativas de Google Sheets, sin ninguna herramienta adicional. Necesitas construir dos tablas distintas:
Tabla dinámica 1 — Cuota de respuesta de tu marca
Inserta → Tabla dinámica, usando la pestaña "Respuestas" como origen, filtrada por Intención = Comercial (es este paquete el que mide menciones de marca, no el informacional). Configúrala así:
- Filas: Topic y Subcategoría
- Valores: suma de la columna "Marca mencionada (1/0)"
Al ser una columna numérica (1 si te menciona, 0 si no), sumarla equivale directamente a contar en cuántas respuestas apareces, sin necesidad de filtrar por ningún valor de texto. El resultado te dice, para cada categoría de producto, en cuántos AI Overviews te menciona. Repite el mismo ejercicio con una columna calculada igual pero para cada competidor relevante (misma fórmula, cambiando "marca" por su nombre), y tendrás una comparativa directa de cuota de respuesta por categoría. Si más adelante añades otro motor (por ejemplo ChatGPT, siguiendo el mismo patrón de script), puedes recuperar una columna "Motor" en la tabla dinámica para comparar entre ambos.
Tabla dinámica 2 — Fuentes más citadas en AI Overview
Esta usa la pestaña "Fuentes" como origen. Configúrala igual que la anterior, pero esta vez merece la pena mirarla en dos pasadas separadas, filtrando por Intención cada vez, porque cada una te dice algo distinto:
- Filas: Fuente (dominio)
- Columnas: Topic
- Valores: recuento de apariciones
- Ordena de mayor a menor por el total
Con la tabla montada, fíltrala primero por un valor de Intención y luego por el otro; cada pasada te dice algo distinto:
- Filtrada por Intención = Comercial: aquí ves qué recursos digitales —directorios de empresas, medios generalistas, medios sectoriales— usa más la IA para construir respuestas de compra en tu categoría. Esos dominios son tu objetivo de digital PR: cuantas más menciones consigas en su contenido, más probable que el LLM acabe mencionándote a ti (esto es justo lo que retomamos en el paso 7 con el Mention Gap).
- Filtrada por Intención = Informacional: aquí mides tu propia visibilidad como recurso: cuántas veces te citan los LLMs a ti y a tus competidores, y qué recursos exactos usan (qué artículos, qué páginas concretas). Comparando esos patrones —qué tipo de contenido y formato se repite entre lo más citado— puedes extraer qué funciona mejor a la hora de ser citado, y llevarlo a tu propia creación de contenido.
Este ranking es la pieza más valiosa de todo el ejercicio: te dice exactamente qué medios, webs o directorios están alimentando las respuestas de los LLMs en cada una de tus categorías. Si un mismo dominio aparece de forma recurrente en "neveras", ya sabes dónde concentrar tus esfuerzos en el paso siguiente.
Paso 7 — Cómo posicionar tu empresa en la IA a partir de los resultados
Con los datos del paso 6 sobre la mesa, la estrategia se bifurca en dos caminos que, si has seguido la separación en paquetes del paso 3, ya tienes prácticamente montados: uno para consultas comerciales (que te mencionen) y otro para consultas informacionales (que tus recursos sean la fuente). Entre los dos cubren todo el customer journey: desde que el usuario todavía se está informando hasta que ya está decidiendo entre marcas.
Consultas comerciales: consigue que te mencionen
En la agencia, con este mismo tipo de datos vamos un paso más allá con lo que llamamos el Mention Gap, un ejercicio que requiere tecnología adicional que no cubrimos en esta guía. La lógica es esta: de todos los prompts comerciales cuya respuesta NO menciona a la marca del cliente, extraemos las fuentes que han participado en construir esas respuestas. Después recorremos el contenido exacto de cada una de esas fuentes, de forma automática, buscando el nombre de la marca. Las fuentes que cumplen las dos condiciones a la vez —participan en respuestas donde no aparecemos, y tampoco nos mencionan en su propio contenido— son el activable real: ahí es donde una acción de PR tiene más probabilidad de traducirse en una mención futura, porque no hay ningún rastro previo de la marca compitiendo por esa atención. Es el tipo de dato que buscan los equipos de PR y outreach para priorizar con precisión quirúrgica.
No hace falta esa tecnología para sacar partido a lo que ya tienes montado con esta guía. Sin acceso al cruce automático, apóyate directamente en la tabla dinámica 2 filtrada por Comercial: el ranking de qué directorios, medios generalistas o medios sectoriales tienen más peso a la hora de construir respuestas sobre tu topic o categoría. No es tan quirúrgico como el Mention Gap —no sabes si esa fuente concreta ya te menciona o no—, pero ya es un activable real y con datos: sabes exactamente dónde concentrar tus esfuerzos de digital PR, en lugar de repartirlos a ciegas entre todos los medios de tu sector.
Consultas informacionales: consigue que tus recursos sean la fuente
Aquí también hacemos en la agencia un análisis automatizado del contenido de las fuentes más citadas. Pero, igual que en el caso anterior, no hace falta esa automatización para sacar conclusiones útiles: con la tabla dinámica 2 filtrada por Informacional, coge las URLs completas (la columna que guarda el script en la pestaña de Fuentes) de tus fuentes con más citaciones y revísalas una a una, buscando patrones que se repitan entre ellas: si usan tablas para describir cierto tipo de contenido, si recurren a listas, qué tipo de encabezados usan, qué longitud tienen las respuestas directas, si incluyen datos concretos y verificables.
El objetivo es replicar ese patrón en tu propio blog o tus guías de compra, sin perder de vista los aspectos técnicos que lo sostienen (rastreo, indexación, velocidad de carga), que dan para un artículo aparte. Cuando vuelvas a lanzar el paquete informacional dentro de unos meses, el objetivo es que tu propio dominio empiece a aparecer en la pestaña de Fuentes, no solo terceros.
Con estos dos frentes trabajando a la vez —PR sobre las fuentes con más peso para las consultas comerciales, contenido propio para las informacionales— cubres la visibilidad de tu marca en toda la IA a lo largo de todo el customer journey, no solo en el momento final de decisión.
Relanza este mismo proceso cada 2-3 meses con los mismos prompts. Así conviertes una foto puntual en una serie temporal: podrás ver si las acciones de digital PR o los cambios de contenido están moviendo la aguja.
Bonus — Mide también tus redes sociales
La pestaña de fuentes no distingue entre una web corporativa y un perfil de LinkedIn, Instagram o un hilo de Reddit: si el LLM lo ha citado, aparece igual. Filtra esa pestaña por dominios de redes sociales (linkedin.com, instagram.com, reddit.com...) y tendrás un dato que casi nunca se mide: si el contenido que publica tu equipo de Social Media está siendo usado por los LLMs para construir respuestas. Es un indicador directo del impacto real de esas publicaciones, más allá de likes y comentarios.
Checklist resumen
- Selecciona tus topics y, para cada uno, un conjunto de al menos 10-15 keywords a partir de tu keyword research.
- Genera dos paquetes de prompts sintéticos separados por intención: informacional (mide si tus activos digitales influyen en las primeras fases) y comercial (mide la mención de tu marca).
- Apunta a un volumen alto y realista: 20-30 keywords por topic y ~10 prompts por keyword y por intención (400-600 prompts por topic).
- Monta la pestaña "Prompts" con las columnas prompt / topic / subcategoría / keyword origen / intención.
- Configura tu API key de SerpApi (Google AI Overview API) en las propiedades del script, y define el idioma (hl) y la región (gl) que quieras medir.
- Ejecuta el script y revisa las pestañas "Respuestas" y "Fuentes".
- Construye las dos tablas dinámicas, cada una filtrada por su paquete: menciones de marca (comercial) y fuentes más citadas (informacional).
- Decide tu prioridad (mención de marca o cita directa de tu web) y actúa en consecuencia.
- Repite el proceso cada 2-3 meses con los mismos prompts para medir evolución.
Conclusión
Este sistema no es 100% gratuito: pagas el coste de las llamadas a la API de SerpApi. Pero te sale considerablemente más barato que contratar cualquier herramienta de terceros para medir visibilidad en LLMs, porque esas herramientas, por dentro, están haciendo exactamente las mismas llamadas a la API y cargándote un margen encima.
La parte más laboriosa —montar el Google Sheet, definir tus prompts sintéticos y dejar el script funcionando— la haces una sola vez. A partir de ahí, cada vez que quieras nuevos resultados solo tienes que volver a lanzar el script y jugar con las tablas dinámicas para desentrañar los datos; no hay que rehacer el setup cada vez.
Con un Google Sheet, un listado bien construido de prompts sintéticos y un script que llame a la API de SerpApi, tienes un sistema propio para analizar visibilidad en ChatGPT y en AI Overviews, adaptado a tus categorías y tus competidores, y repetible cada pocos meses para ver si tu estrategia para posicionar tu empresa en la IA está funcionando.
¿Te has atascado en algún punto del setup? Escríbenos y te ayudamos a configurarlo correctamente.
Fecha de publicación: 8 de julio de 2026
