Conversiones de Google Ads y Enhanced Conversions del lado del servidor
Tu contenedor de servidor ya recibe el evento purchase de GA4 con el valor, la moneda y el ID de transacción. Google Ads puede usar ese mismo evento, así que no necesitas un segundo flujo de datos desde el navegador. En esta lección añades el Conversion Linker y la etiqueta Google Ads Conversion Tracking al contenedor de servidor y después envías datos del cliente hasheados con el evento, para que Enhanced Conversions pueda asociar más ventas a clics en anuncios.
Avanzado 12 min de lectura
Lo que aprenderás
- Guardar el ID de clic de Google Ads en cookies first-party con el Conversion Linker en los dos contenedores.
- Activar la etiqueta Google Ads Conversion Tracking en el contenedor de servidor con el evento
purchasede GA4. - Enviar el email, el teléfono y la dirección como datos proporcionados por el usuario para que Enhanced Conversions pueda usarlos.
- Comprobar la conversión en el Preview del servidor y en los diagnósticos de Google Ads.
01 Cómo encajan las piezas
Cuando alguien hace clic en un anuncio, la URL de la página de destino lleva un gclid. El Conversion Linker lo guarda en una cookie first-party (_gcl_aw). Cuando el visitante compra, el hit purchase de GA4 llega a tu contenedor de servidor, y la etiqueta Google Ads Conversion Tracking que hay allí envía la conversión a Google Ads con la información del clic, el valor del pedido y, con Enhanced Conversions, los datos del cliente hasheados.
- Contenedor web: una etiqueta Conversion Linker y las etiquetas de GA4 que ya tienes.
- Contenedor de servidor: una etiqueta Conversion Linker, una etiqueta Google Ads Conversion Tracking y, si haces remarketing, una etiqueta Google Ads Remarketing.
- Google Ads: una acción de conversión con Enhanced Conversions activado.
02 Añade el Conversion Linker en los dos contenedores
En el contenedor web, el Conversion Linker lee el ID de clic de la URL de la página de destino y lo guarda. En el contenedor de servidor permite que el servidor de etiquetado gestione las cookies de Google Ads en sgtm.example.com, de modo que las crea tu propio dominio como first-party.
- 1 En el contenedor web crea una etiqueta de tipo Conversion Linker, actívala en All Pages y guarda.
- 2 En el contenedor de servidor abre Tags, haz clic en New y elige Conversion Linker.
- 3 Actívala en cada hit de GA4: un activador de tipo Custom que se active en Some Events con Client Name equals
GA4. El activador de la lección 4 sirve tal cual. - 4 Guarda la etiqueta.
03 Añade la etiqueta Google Ads Conversion Tracking
Primero consigue los dos ID de tu acción de conversión. En Google Ads abre Goals y luego Conversions, abre la acción de conversión de compra y mira su configuración de etiqueta para Google Tag Manager. Muestra un Conversion ID (el número de AW-XXXXXXXXX) y un Conversion Label.
- 1 En el contenedor de servidor crea una etiqueta de tipo Google Ads Conversion Tracking.
- 2 Introduce el Conversion ID y el Conversion Label de Google Ads.
- 3 Revisa los campos de valor, moneda e ID de transacción. Por defecto la etiqueta los lee de los datos del evento (
value,currency,transaction_id) que lleva el hit de compra de GA4. Rellénalos solo si necesitas valores distintos. - 4 Crea un activador de tipo Custom que se active en Some Events con dos condiciones: Client Name equals
GA4y Event Name equalspurchase. - 5 Ponle nombre a la etiqueta, por ejemplo
Google Ads - purchase, y guarda.
Google Ads usa el transaction_id para descartar conversiones duplicadas del mismo pedido, así que envía el número de pedido real, como en la lección anterior.
04 Envía datos proporcionados por el usuario para Enhanced Conversions
Enhanced Conversions añade a la conversión datos del cliente del pedido (email, teléfono, nombre y dirección). Google los cruza con cuentas de Google con sesión iniciada, lo que recupera conversiones que las cookies por sí solas no captan. Las etiquetas de Google normalizan los valores y les aplican un hash SHA-256 antes de enviarlos a Google.
Envía los datos con la compra, en un objeto user_data junto a ecommerce:
window.dataLayer = window.dataLayer || [];
window.dataLayer.push({ ecommerce: null });
window.dataLayer.push({
event: 'purchase',
user_data: {
email: '[email protected]',
phone_number: '+48123456789',
address: { first_name: 'Jan', last_name: 'Kowalski', postal_code: '00-001', country: 'PL' }
},
ecommerce: {
transaction_id: 'T-10293',
value: 129.90,
currency: 'EUR',
items: [{ item_id: 'SKU-1', item_name: 'Shoes', price: 129.90, quantity: 1 }]
}
});- 1 En el contenedor web crea Data Layer Variables para los campos, por ejemplo
user_data.email,user_data.phone_numberyuser_data.address.postal_code. - 2 Crea una variable de tipo User-Provided Data, elige la configuración manual y asigna cada campo (email, teléfono, nombre, apellidos, código postal, país) a la Data Layer Variable correspondiente.
- 3 En la etiqueta de Google añade un parámetro de configuración
user_datacon la variable User-Provided Data como valor. Si solo lo quieres en la compra, añadeuser_datacomo parámetro de evento en la etiqueta de evento de GA4. - 4 En Google Ads abre Goals y luego Settings, despliega Enhanced conversions for web, actívalo, elige Google Tag Manager como método y acepta las condiciones de datos de clientes.
Ahora los datos viajan con el hit de GA4 hasta sgtm.example.com, y la etiqueta Google Ads Conversion Tracking del contenedor de servidor los envía con la conversión. No tienes que configurar nada más en la etiqueta de servidor.
05 El consentimiento decide qué recibe Google Ads
El hit de GA4 lleva el estado de consentimiento del visitante al contenedor de servidor, y las etiquetas de Google Ads que hay allí lo respetan. Para una conversión completa, con cookies de clic y datos del cliente, ad_storage y ad_user_data deben estar concedidos, como se configuró en la lección 6.
-
ad_storagedenegado: no se leen ni se escriben cookies de Google Ads, así que la conversión no puede vincularse al clic a través de ellas. -
ad_user_datadenegado: los datos proporcionados por el usuario no se usan para publicidad, así que Enhanced Conversions no tiene nada que cruzar. -
ad_personalizationdenegado: el visitante no se añade a las audiencias de remarketing.
06 Verifica la conversión
Abre el Preview en los dos contenedores. Entra en el sitio con un parámetro de prueba como ?gclid=test123, acepta todo el consentimiento y haz un pedido de prueba.
- Preview web: el Conversion Linker se activa al cargar la página y la cookie
_gcl_awexiste en tu dominio. - Preview del servidor: en el evento
purchase, tanto el Conversion Linker comoGoogle Ads - purchaseaparecen en Tags Fired. - Preview del servidor: Outgoing HTTP Requests muestra una solicitud de la etiqueta de Google Ads a un dominio de Google Ads como
googleadservices.comcon un estado correcto. - Preview del servidor: los datos del evento contienen
user_data, yvalue,currencyytransaction_idtienen valor. - Google Ads: al cabo de unos días, la acción de conversión y sus diagnósticos de Enhanced Conversions muestran conversiones registradas y datos de clientes cruzados.
Preguntas frecuentes
¿Sigo necesitando la etiqueta de conversión de Google Ads en el contenedor web?
No. La etiqueta del servidor envía la conversión a partir del evento de compra de GA4. Si mantienes las dos, cada pedido se contará dos veces salvo que ambas envíen el mismo transaction_id. En el contenedor web deja solo el Conversion Linker.
¿Debo aplicar yo el hash al email antes de enviarlo?
No con la variable User-Provided Data manual: las etiquetas de Google normalizan los valores y les aplican el hash por ti. Si prefieres enviar valores ya hasheados, deben estar normalizados y con hash SHA-256 exactamente como describe Google en su documentación de Enhanced Conversions.
¿Por qué no aparece ninguna conversión en Google Ads tras un pedido de prueba?
Un pedido de prueba sin un clic real en un anuncio a menudo no se atribuye a ninguna campaña. Revisa primero el Preview del servidor: si la solicitud de Google Ads salió del servidor con un estado correcto y el consentimiento estaba concedido, espera un día antes de volver a mirar.
¿Listo para ponerlo en práctica?
Despliega un contenedor GTM de servidor en tu propio dominio en pocos minutos. El plan Gratis no pide tarjeta.
Crear una cuenta gratuita