Auditoría end-to-end del ecosistema de medición y atribución, con evidencia en vivo de Google Ads (API directa) + crawl del front-end. Objetivo: Shopify como fuente de verdad, cero duplicados, atribución consistente y escalable a nuevos canales.
Stack detectado en vivo en el HTML del sitio + configuración real de Google Ads.
Reporte de valor inflado ~200x (view_item con valor). Decisiones de bidding sobre señal falsa.
Doble conteo de compra (2 fuentes). Imposible confiar en ROAS del panel.
100% client-side + sin Consent Mode v2 → pérdida por ad-blockers, Safari/ITP, y consent no modelado.
Solo Google medido. Meta/TikTok/Bing sin pixel ni CAPI → esos canales optimizan a ciegas.
Sin CMP/Consent Mode v2 — riesgo legal + Google penaliza señal sin consent.
Sin contenedor GTM = sin control de versiones, naming, ni QA de tags. Cambios sueltos.
| # | Problema (evidencia en vivo) | Impacto | Prioridad |
|---|---|---|---|
| 1 | view_item con valor $568 → $1,141,670 de "valor" falso en 30d (2,010 page-views). | Reporte inservible; bidding envenenado. | CRÍTICO |
| 2 | Objetivo de conversión por campaña sin verificar. Las 4 campañas activas usan objetivos a nivel campaña (no las primarias de cuenta) — la API no expone el target exacto (biddable=off / selective_optimization vacío). Verificar en el UI qué optimiza cada una. | Podrían optimizar a compra… o a carrito. Sin confirmar. | ALTO (verificar) |
| 3 | Doble conteo de compra: "Shopping App Purchase" ($5,296) vs GA4 "purchase" ($3,929) conviven. | ROAS y conteo no confiables. | CRÍTICO |
| 4 | Sin Enhanced Conversions + 100% client-side. | Pérdida de 10-30% de conversiones medibles. | ALTO |
| 5 | Sin Consent Mode v2 / CMP. | Compliance + señal degradada 2026. | ALTO |
| 6 | Busqueda-2 gasta $151 con 0 conversiones. | Gasto desperdiciado directo. | ALTO |
| 7 | Meta/TikTok/Bing sin medición (ni pixel ni CAPI). | Bloquea diversificar canales. | MEDIO |
| 8 | Sin contenedor GTM / gobierno (naming, versiones, QA). | Riesgo operativo y de escalado. | MEDIO |
Un solo dataLayer canónico, empujado desde Shopify Customer Events (web pixel), con el schema oficial de ecommerce GA4. Cada evento con items[] completos y, en compra, transaction_id + value + currency.
view_item_list · select_item · view_item · search · view_cart · add_to_cart · remove_from_cart · begin_checkout · add_shipping_info · add_payment_info · purchase · refund · login · sign_up · generate_lead · contact · scroll · file_download · share · wishlist · video_start/progress/complete.
transaction_id, value, currency, coupon, shipping, tax, discount, payment_type, shipping_tier · items[]: item_id, item_name, item_brand, item_category, item_variant, price, quantity, affiliation, index, promotion_name, location_id.
Recomendación: Shopify Customer Events (web pixel) → GTM Server Container → GA4 + Ads + CAPIs, con dominio first-party y cookies server-side.
| Opción | Ventaja | Desventaja | Veredicto PFP |
|---|---|---|---|
| Stape (sGTM hosting) | Setup en horas, first-party domain, cookie keeper, barato (~$20-50/mo) | Dependes de un tercero | RECOMENDADO para arrancar |
| Google Cloud Run | Escalable, control total, dentro de GCP | Más setup/DevOps; costo variable | Fase 2 si crece el volumen |
| Cloud Functions / App Engine | Serverless | Menos idóneo para sGTM estándar | No prioritario |
| BigQuery Streaming | Data warehouse, LTV/atribución propia | Requiere modelado | Fase 3 (analítica avanzada) |
First-party domain (sst.placeforpros.com) + cookies server-side → recupera señal perdida por ITP/ad-blockers y mejora match de Enhanced Conversions/CAPI.
Todas comparten Event ID = order id de Shopify para deduplicar client+server, con identificadores hasheados SHA-256.
Google Enhanced Conversions + Google Ads API (ya conectada). Sube email/phone hasheados + GCLID/GBRAID/WBRAID. Deduplica con GA4.
Meta CAPI (Pixel + server, dedup por event_id, Advanced Matching) — solo si se activa Meta Ads. TikTok Events API igual (ttclid).
email, phone, first/last name, zip, country + client_id, session_id, fbp, fbc, gclid, gbraid, wbraid, ttclid, msclkid.
event_id único (order id) enviado por client Y server → la plataforma descarta el duplicado. Sin esto, doble conteo.
Shopify (Source of Truth: órdenes) → Customer Events / Web Pixel (un dataLayer canónico) → GTM Server Container (first-party, Stape) → distribución paralela con Event ID compartido:
Principio: Shopify manda; cada venta se mide una sola vez (order id) y se reparte a todas las plataformas deduplicado. Se elimina el camino paralelo del channel app como conversión primaria.
Revenue, Orders, AOV, MER, CAC, LTV, Repeat Rate, New vs Returning, Revenue by Channel.
ROAS real (post-fix), CAC, Revenue by Campaign/Device, gasto vs compra real, dedup check.
CVR, Cart & Checkout Abandonment, Revenue by Product/Brand/State, sesiones, funnel.
KPIs con Shopify como fuente de verdad de Revenue/Orders; GA4 para comportamiento; plataformas para ROAS por canal deduplicado.