Análisis a fondo · 13 min de lectura

El informe de términos de búsqueda de Shopping que Google no te da

Shopping y PMax muestran la consulta, pero nunca el producto. Reconstruye el informe consulta × producto con un parámetro de URL y dos dimensiones de GA4.

Ilustración de una pila de consultas de búsqueda emparejada con un solo producto. Los informes de Google nunca muestran esa relación.
Los datos son reales — las portadas de los artículos no.

En resumen: Los informes de Shopping y PMax muestran la consulta, pero ocultan el producto. Añade un parámetro de URL, {lpurl}?utm_content={product_id}, y en una semana GA4 te entrega el informe consulta × producto que Google retiró, uniendo sessionManualAdContent con sessionGoogleAdsQuery. En una cuenta real, esa vista destapó que el 85 % del gasto se concentraba en pares que nunca convirtieron. El 0,25 % de los pares que sí convirtieron alcanzaba un ROAS de 46,8× y generaba todos los ingresos.

Descarga gratuita

¿Solo quieres el método destilado?

Descarga las instrucciones completas para la IA — un archivo que pegas en Claude o en cualquier agente de código capaz, y saca el informe consulta × producto de tu propia cuenta. Deja tu email y el archivo es tuyo — o sigue leyendo más abajo.

Un archivo, una lista. Solo escribo cuando hay algo que merece leerse.

Un cliente me hizo una vez una pregunta que debería tener respuesta en un clic. Alguien buscó «aspiradora sin cable por menos de 200», hizo clic en el anuncio de Shopping y la cuenta lo pagó. ¿En cuál de los 5.000 productos del feed aterrizó ese clic? Abrí el informe de términos de búsqueda, luego el de productos, y no había forma de conectarlos. Sigue sin haberla. Google te enseña la consulta y te enseña el producto, pero nunca juntos.

Hace años, la vieja API de AdWords te daba exactamente este emparejamiento. Luego desapareció en silencio, y ningún ajuste, ningún informe, ningún campo de la API lo trae de vuelta. Para una tienda online ese hueco no es un detalle menor. La relación entre consulta y producto es donde vive la optimización de verdad: te dice si tus títulos casan con la demanda real, qué productos atraen tráfico basura y por qué un producto recibe clics pero nunca convierte.

Doce años desarrollando sobre la Google Ads API me enseñaron que cuando Google retira un informe, no vuelve. Así que lo reconstruí yo mismo, y la reconstrucción es casi vergonzosamente simple. Un parámetro de URL. En una semana, GA4 te entrega cada clic de pago emparejado como consulta × producto, con sesiones, conversiones e ingresos incluidos. Ponerlo en marcha lleva unos minutos; el resto de este artículo va de qué hacer con lo que vuelve.

78 %
de los clics emparejados consulta × producto
22
campañas actualizadas
1
parámetro de URL, ese es todo el montaje
7 días
hasta datos verificados en GA4

El arreglo: un parámetro, dos dimensiones de GA4

Añade una plantilla de seguimiento

Pon {lpurl}?utm_content={product_id} en tus campañas de Shopping y PMax. La variable ValueTrack {product_id} envía el ID de producto de Merchant Center con cada clic.

GA4 almacena el producto

El UTM aterriza en la dimensión Contenido manual del anuncio de la sesión (sessionManualAdContent).

GA4 ya conoce la consulta

El auto-tagging (gclid) rellena sessionGoogleAdsQuery en la misma sesión.

Une las dos dimensiones

Cada clic de pago se convierte en un par consulta × producto, con sesiones, porcentaje de conversiones e ingresos incluidos.

El auto-tagging y el UTM manual no se pisan. El gclid sigue gestionando fuente, medio y campaña; tu UTM solo lleva el ID de producto.

Ten claro lo que obtienes (y lo que no)

  • Solo consultas con clic. Este conjunto de datos empieza en el clic. Las consultas en las que tu anuncio apareció pero nadie hizo clic nunca llegan a GA4. El análisis a nivel de impresión se queda en el informe estándar de Google, sin productos.
  • Alrededor del 20 % de los clics no se emparejará. Esos huecos son sesiones con consentimiento rechazado, superficies de PMax sin consulta alguna (Display, YouTube, Gmail) y clics que nunca dispararon la analítica.
  • Un producto por sesión. La sesión lleva el ID del producto en el que el usuario hizo clic, aunque luego navegue por otros diez.
Descarga gratuita

Consigue las instrucciones de IA completas para este método

Todo el método, reescrito como un brief que puedes pegar tal cual en Claude o en cualquier agente de código capaz. Configura la plantilla de seguimiento, saca el informe consulta × producto de GA4 y ejecuta las agregaciones en tu cuenta. La plantilla y sus tres trampas también van dentro. Deja tu email y el archivo es tuyo.

Un archivo, una lista. Solo escribo cuando hay algo que merece leerse.

Sacar el informe de GA4

En la interfaz de GA4, abre Explorar y monta una tabla de formato libre. Las dimensiones son Contenido manual del anuncio de la sesión y Consulta de Google Ads de la sesión. Las métricas son las sesiones, los eventos clave (antes conversiones) y los ingresos por compra. Filtra por fuente/medio de la sesión igual a google / cpc.

Para cualquier cosa seria querrás la Data API, porque este informe pertenece a un dashboard o a un join en BigQuery, no a una pestaña del navegador:

from google.analytics.data_v1beta import BetaAnalyticsDataClient
from google.analytics.data_v1beta.types import (
    RunReportRequest, DateRange, Dimension, Metric, FilterExpression, Filter
)

request = RunReportRequest(
    property=f"properties/{GA4_PROPERTY_ID}",
    dimensions=[
        Dimension(name="sessionManualAdContent"),  # product ID
        Dimension(name="sessionGoogleAdsQuery"),    # search term
    ],
    metrics=[
        Metric(name="sessions"),
        Metric(name="keyEvents"),
        Metric(name="purchaseRevenue"),
    ],
    date_ranges=[DateRange(start_date="30daysAgo", end_date="today")],
    dimension_filter=FilterExpression(filter=Filter(
        field_name="sessionSourceMedium",
        string_filter=Filter.StringFilter(value="google / cpc"),
    )),
)

Une sessionManualAdContent con tu feed de productos (id → título, precio, categoría) y el informe queda completo. Consulta, producto, título, conversiones e ingresos en una sola tabla.

Verificado, no teorizado

Lo desplegamos en la cuenta real de un minorista de electrónica checo con 22 campañas de Shopping activas. Siete días después revisé GA4:

GA4, 7 días después del despliegue

  • Filas de tráfico google/cpc 9.753
  • Llevaban el ID de producto (utm_content) 96 %
  • Llevaban la consulta de búsqueda (sessionGoogleAdsQuery) 81 %
  • Llevaban ambos, un informe consulta × producto funcionando 78 %

Ahora la parte divertida: qué te dicen los pares

1 · La brecha del título

Pon junto al título y la descripción las consultas que los dispararon. El desajuste salta a la vista:

What people actually search
aspiradora sin cable pelo de mascotaaspiradora para pelo de perro alergiamascotas aspiradora silenciosamejor aspiradora pelo de animales 2026
What the title says
Aspiradora X300 Turbo 2000W, EAN 8595…
Descripción: «Aspiradora de alta calidad con diseño moderno y abundantes accesorios.»
The gap: El título vende vatios que nadie busca y se deja fuera el pelo de mascota, que busca todo el mundo. (Ejemplo ilustrativo.)

La hoja de ruta del feed se escribe sola. Llevo dos años construyendo una herramienta de enriquecimiento de feeds con IA, y, siendo honestos, la debilidad de toda la categoría es demostrar el impacto. Este informe lo arregla. Reescribe el título para que case con la demanda que acabas de probar y luego observa cómo se mueven el CTR y el porcentaje de conversiones por consulta. El enriquecimiento de feeds con IA deja de ser algo que te tienes que creer y se convierte en un bucle medible.

2 · Quién más está en «tu» consulta, y con qué producto

Una cosa que no puedes hacer es añadir palabras clave negativas por producto. Google no te da esa palanca en Shopping ni en PMax. Así que cuando un par consulta × producto rinde mal, preguntarte cómo excluirlo no lleva a ninguna parte. La pregunta productiva es por qué rinde mal.

Toma la consulta y extrae su página de resultados en vivo. Yo uso el endpoint serp/google/organic/live/advanced de DataForSEO. Un POST con el texto de la consulta y el location_code de tu mercado devuelve la página de resultados entera como JSON estructurado: anuncios de pago, bloques de shopping con nombres de comercios y precios, y resultados orgánicos debajo. DataForSEO factura por SERP, y una SERP cubre hasta 10 resultados. Al precio base actual de unos 0,002 $ por SERP, comprobar 200 consultas con profundidad por defecto cuesta unos 0,40 $, sin contar los parámetros avanzados de pago.

Un hallazgo típico. Tu saco de dormir de gama media recoge clics en una consulta genérica, y la misma consulta muestra tres marcas económicas de la misma categoría a la mitad de tu precio. El producto está bien. El precio pierde esa subasta concreta.

Ahora tienes opciones reales. Cambia el precio. Lleva el diferenciador al título («relleno de plumón, confort −15 °C»). Mueve el producto a una campaña con una estrategia de puja que case con su margen real. O acepta la consulta como upper-funnel y júzgala por métricas asistidas en vez de por el último clic.

3 · Decisiones de estructura y puja

Los productos que atraen consultas de alta intención merecen sus propios grupos de recursos y presupuestos. Los que solo recogen tráfico genérico van en grupos cajón de sastre con objetivos conservadores. Este informe apoya la segmentación de shopping en evidencia en vez de en intuición.

4 · Un chequeo de salud para PMax

PMax no te dice casi nada sobre búsqueda. Este informe es lo más parecido que vas a tener a una auditoría de lo que PMax de verdad compra para ti en la superficie de búsqueda, por producto.

Mírame recorrer una exportación real, paso a paso

Todo lo de arriba es el porqué. Lo que viene ahora es el cómo: qué descargas, qué miras y el número real que sale de ahí.

Los datos de esta sección salen de una segunda cuenta, una tienda online checa de tamaño medio en el segmento de precio bajo. La tienda no es el minorista de electrónica del recuadro de GA4 de arriba. Elegí esta tienda porque su catálogo es lo bastante amplio como para que cada patrón aparezca a plena escala. Saqué su informe en bruto de términos de búsqueda de Shopping con la Google Ads API a una tabla SQLite local y ejecuté las agregaciones de abajo. Primero una advertencia. El informe en bruto te da el grupo de anuncios o el grupo de productos bajo el que se sirvió la consulta, no el producto individual. Esa es precisamente la brecha que cierra el truco del UTM. Pero incluso a nivel de grupo de productos, las cifras de abajo muestran con claridad adónde va realmente el gasto.

Fuente de cada número de esta sección: informe de términos de búsqueda de Shopping de Google Ads, una cuenta de tienda online checa de tamaño medio, ~22,6 M de líneas, datos sacados en abril de 2026. Importes convertidos de CZK a un tipo de ~25 CZK/EUR.

Paso 1 · Saca el informe en bruto y mide el montón

Exporta el informe de términos de búsqueda de Shopping vía la Google Ads API (search_term_view) a cualquier sistema en el que puedas ejecutar GROUP BY, como SQLite o BigQuery. Antes de unir o filtrar nada, ejecuta un simple COUNT(*) y un par de SUM. Necesitas sentir lo grande y lo ruidoso que es el montón en bruto, porque ese único hecho recalibra todas las expectativas que siguen:

El montón en bruto, un COUNT y tres SUM

  • Líneas del informe (consulta × grupo de productos) 22.640.716
  • Términos de búsqueda distintos 5.370.131
  • Grupos de productos bajo los que se sirvieron 10.393
  • Gasto / ingresos (ROAS combinado 6,8×) 103.000 € / 697.000 €

22,6 millones de líneas, 5,4 millones de consultas únicas. Ningún humano lee eso. Esas dos cifras tienen una sola función: acabar con la idea de revisar cada fila a mano. La única forma de avanzar es agrupar las líneas por la dimensión que paga las facturas.

Paso 2 · Tira el 96 % antes de analizar nada

Cuenta las líneas con cero clics y luego fíltralas. El informe de términos de búsqueda de Shopping registra cada consulta en la que tu anuncio apareció, y la mayoría de esas consultas nadie las clicó jamás. Las líneas de solo impresión no pueden costarte ni convertir. Son ruido que hace que la tabla parezca aterradora.

WHERE clicks > 0 reduce la tabla a 738.444 líneas, un tamaño con el que de verdad puedes trabajar.

La inundación de impresiones

  • Líneas con cero clics (impresiones puras) 21.902.272 (96,7 %)
  • Líneas que alguna vez costaron dinero 738.444 (3,3 %)

El 96,7 % del número aterrador nunca fue otra cosa que ruido. Antes de analizar nada, quédate solo con las líneas con clic, y todas las agregaciones que siguen se calculan solo sobre la parte que de verdad gasta dinero.

Paso 3 · Haz la única pregunta que cambia cómo ves la cuenta

Clasifica las líneas con clic en dos grupos: las que convirtieron al menos una vez y las que nunca convirtieron. Después suma el coste de cada grupo. Esa separación es la que convierte «la cuenta está bien, el ROAS es 6,8» en «la mayor parte del presupuesto no hace nada». Calcúlala antes de cualquier idea de optimización:

El lastre de cero conversiones

  • Líneas del informe que convirtieron cero veces 99,75 %
  • Cuota del gasto total que se comieron esas líneas 85,5 %
  • Gasto sin ninguna conversión detrás 88.000 €
  • Entre las líneas con clic, cuota con cero conversiones 92,3 %

El 85 % del presupuesto fluyó por combinaciones de consulta × grupo de productos que ni una sola vez convirtieron.

Eso no es un error de redondeo que optimizas más tarde. Es el mayor problema de la cuenta. Y solo pudiste verlo porque agrupaste cada consulta por el grupo de productos bajo el que se sirvió.

Paso 4 · Comprueba si el despilfarro son unos pocos villanos o toda la multitud

Ordena las líneas con clic por coste, toma el top 1 % y el top 10 % y mide su cuota del gasto total. Esto decide tu táctica. Si un puñado de términos quema el presupuesto, los pausas y listo. Si el despilfarro está muy repartido, pausar términos es inútil y necesitas arreglos estructurales:

Dónde está de verdad el gasto desperdiciado

  • Top 1 % de líneas con clic por coste 10,5 % del gasto
  • Top 10 % de líneas con clic por coste 29,8 % del gasto

El despilfarro está muy repartido. El top 1 % de las líneas costosas apenas supone una décima parte del gasto, así que pausar 20 términos malos no cambia nada. En vez de perseguir consultas individuales, arregla la estructura: decide qué productos van en qué campaña y con qué objetivo. Y recuerda que, de todos modos, Google ni siquiera te deja añadir una palabra clave negativa por producto.

Paso 5 · Descubre por qué gotea la larga cola: una consulta, muchos productos

Para cada término de búsqueda, cuenta bajo cuántos grupos de productos distintos se sirvió. Esto explica el despilfarro mecánicamente. Shopping empareja una consulta con las señales de todo tu feed, no con la relevancia de un solo producto. Una sola consulta gotea por rincones inconexos de tu catálogo, y pagas por cada fallo.

Un caso concreto de la cuenta. La consulta «dispositivo antiladridos» seguía quemando presupuesto, así que ejecuté COUNT(DISTINCT ad_group) sobre ella. Se había servido bajo 139 grupos de anuncios y productos distintos, por 39 € y aproximadamente cero conversiones. La consulta «lego technic» se sirvió bajo 300 grupos de anuncios y productos distintos.

Dispersión de la consulta por el catálogo

  • Términos de búsqueda distintos servidos bajo más de un grupo de productos 46,7 % de 5.370.131
  • Máximo de grupos de productos que alcanzó una sola consulta 6.661
  • «dispositivo antiladridos» → grupos / coste / conversiones 139 / 39 € / ~0

Casi la mitad de las consultas están desperdigadas por varios grupos de productos, y las peores alcanzan miles. De ahí viene el lastre de cero conversiones del paso 3. Y es justo lo que por fin puedes ver una vez que cada clic lleva su ID de producto.

Paso 6 · Échale un ojo a los peores desajustes, porque son absurdos

Saca las líneas de mayor coste que nunca convirtieron y lee la consulta junto al grupo de productos bajo el que se sirvió. Las cifras agregadas cuantifican el problema. Estas son las tres filas que debes enseñarle a tu jefe:

Pares consulta × grupo de productos de mayor coste y cero conversiones (traducidos y anonimizados; ilustrativos de las filas reales).
Consulta de búsquedaServida bajo grupo de productosClicsCosteConv.
collar de adiestramiento para perros Bolsos9711 €0
dispositivo antiladridos Productos para bebé769,60 €0
lego technic Iluminación706,80 €0

La consulta «collar de adiestramiento para perros» se sirvió bajo el grupo de Bolsos. La consulta «dispositivo antiladridos» se sirvió bajo Productos para bebé. El grupo de productos no tiene nada que ver con la consulta. Google emparejó la consulta con señales amplias del feed, recogió el clic y cobró a la cuenta. Con consulta × producto ves esto de un vistazo; con el informe estándar de Google, nunca. (Categorías traducidas y anonimizadas.)

Paso 7 · Ahora la recompensa: el 0,25 % que paga toda la cuenta

Invierte el paso 3. Aísla solo las líneas que sí convirtieron y suma su coste e ingresos. Esta es la razón por la que todo el ejercicio importa. Una vez que puedes separar a los ganadores del lastre, proteges a los ganadores y matas de hambre al resto.

La porción que se gana el sueldo

  • Líneas que convirtieron (cuota de todas las líneas) 57.209 (0,25 %)
  • Lo que costaron 14.900 €
  • Lo que devolvieron 697.000 €
  • ROAS de esa porción 46,8×

El 0,25 % de las líneas alcanza un ROAS de 46,8× y, de hecho, sostiene toda la cuenta. El otro 99,75 % arrastra el ROAS combinado hasta 6,8×. Todo el trabajo consiste en encontrar ese 0,25 %, proteger su presupuesto y reestructurar el resto para que deje de competir por el mismo dinero. Nada de eso funciona hasta que cada línea identifique el producto del anuncio en el que se hizo clic. Un único elemento aporta esa identificación: el parámetro utm_content={product_id} que configuraste al principio.

Llévatelo contigo

Descarga las instrucciones completas para tu IA

Todo el método de arriba, reescrito como un brief que puedes pegar tal cual en Claude o en cualquier agente de código capaz. Configura la plantilla de seguimiento, saca el informe consulta × producto de GA4 y ejecuta las agregaciones en tu cuenta. La plantilla y sus tres trampas también van dentro. Deja tu email y el archivo es tuyo.

Un archivo, una lista. Solo escribo cuando hay algo que merece leerse.

FAQ

¿Funciona para Performance Max?

Sí, para la superficie de búsqueda y shopping. Los clics de Display, YouTube y Gmail llevan el ID de producto pero no la consulta, así que espera que esas filas tengan la dimensión de consulta vacía.

¿El UTM romperá mi atribución de GA4?

No. El auto-tagging (gclid) sigue gestionando fuente, medio y campaña; tú solo añades el contenido del anuncio. Lo que sí lo rompería todo es un parámetro personalizado dentro de utm_campaign, así que nunca pongas uno ahí.

¿Por qué solo un 78 % de cobertura?

El modo de consentimiento, las superficies de PMax sin consulta y los bloqueadores de analítica se comen el resto. El 78 % sobra para todos los casos de uso de arriba, porque estás leyendo patrones, no auditando céntimos.

¿Puedo ver las consultas en las que mi anuncio apareció pero nadie hizo clic?

No. Este conjunto de datos empieza en el clic. El análisis a nivel de impresión se queda en el informe estándar de términos de búsqueda, sin productos.

¿El patrón funciona fuera de Google, por ejemplo Bing o Sklik?

Sí. El patrón se traslada a cualquier plataforma con una plantilla de URL, una macro de producto y una dimensión de analítica que la capture. Las macros concretas difieren por plataforma.

¿Cuánto tardo en tener datos utilizables?

Depende del volumen. Nuestra cuenta tuvo un informe utilizable tras 7 días de datos. Una cuenta más pequeña debería recoger 30 días.


CTA: ¿Cuáles de tus productos se ganan sus clics y cuáles solo te facturan? Añade el parámetro hoy y en una semana lo sabrás. O mándame tu cuenta y leemos el informe juntos.

El sentido de todo esto

¿Quieres este nivel de visibilidad en tu cuenta?

Un email. Te diré con honestidad si merece la pena para tu caso.

Contacto →
Descarga gratuita

Descarga las instrucciones completas para tu IA

Todo el método de arriba, reescrito como un brief que puedes pegar tal cual en Claude o en cualquier agente de código capaz. Configura la plantilla de seguimiento, saca el informe consulta × producto de GA4 y ejecuta las agregaciones en tu cuenta. La plantilla y sus tres trampas también van dentro. Deja tu email y el archivo es tuyo.

Un archivo, una lista. Solo escribo cuando hay algo que merece leerse.