Plan de Tracking GA4/GTM — NutriFlow

SaaS B2B Planificacion Nutricional • Generado: 12 Jun 2026 • Modo: Setup desde cero
GDPR EU Google Ads Meta Ads Consent Mode Advanced GA4 + GTM
15
Eventos totales
5
Criticos
4
Conversiones GA4
20
Tags GTM
10
Dimensiones custom

Taxonomia de Eventos

Adquisicion
pricing_viewed
page_location, utm_source, referrer_page
High
demo_requested
source, page_location, form_name
CONV High
content_downloaded
content_name, content_type, gated
Med
Registro
signup_started
page_location, cta_text, plan_name
High
signup_completed
method, user_id, plan_name
CONV Critical
trial_started
plan_name, trial_length_days, user_id
CONV Critical
Onboarding
onboarding_started
user_id, onboarding_variant
High
onboarding_step_completed
step_name, step_number, user_id, time_spent_seconds
High
onboarding_completed
steps_total, user_id, time_to_complete_seconds
High
feature_activated
feature_name, user_id, activation_method
Med
Conversion
plan_selected
plan_name, billing_period, value
Critical
checkout_started
plan_name, value, currency, billing_period
Critical
checkout_completed
plan_name, value, currency, transaction_id, billing_period
CONV Critical
Retencion
subscription_cancelled
cancel_reason, plan_name, save_offer_shown, save_offer_accepted
High
subscription_reactivated
plan_name, days_since_cancel
High

Implementacion — dataLayer Push

Registro completado (app/nutriflow.app)
// En Clerk post-signup callback window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'signup_completed', method: 'google_oauth', user_id: 'clinic_nf_00412', plan_name: 'trial' });
Compra suscripcion Pro completada
// En webhook de pago confirmado window.dataLayer = window.dataLayer || []; window.dataLayer.push({ event: 'checkout_completed', plan_name: 'pro', value: 49, currency: 'EUR', transaction_id: 'txn_stripe_9f8a2b', billing_period: 'monthly' });

Configuracion GTM — 20 Tags

▶ Tags (20)
GA4 - signup_completed
ga4_event · Critical
GA4 - trial_started
ga4_event · Critical
GA4 - checkout_completed
ga4_event · Critical
GA4 - plan_selected
ga4_event · Critical
GA4 - checkout_started
ga4_event · Critical
GA4 - pricing_viewed
ga4_event · High
GA4 - demo_requested
ga4_event · High
GA4 - onboarding_*
ga4_event x3 · High
Google Ads - signup_completed
google_ads_conversion
Google Ads - checkout_completed
google_ads_conversion
Google Ads - trial_started
google_ads_conversion
Google Ads - demo_requested
google_ads_conversion
Meta Pixel - Base
html_tag · All Pages
▶ Triggers (15)
All Pages
pageview
DL Event - signup_completed
custom event
DL Event - trial_started
custom event
DL Event - checkout_completed
custom event
DL Event - checkout_started
custom event
DL Event - plan_selected
custom event
DL Event - pricing_viewed
custom event
DL Event - demo_requested
custom event
DL Event - onboarding_started
custom event
DL Event - onboarding_step_completed
custom event
DL Event - feature_activated
custom event
DL Event - subscription_cancelled
custom event
cookie_consent_update
custom event · Consent Mode
▶ Variables (29)
DLV - user_id
dataLayer variable
DLV - plan_name
dataLayer variable
DLV - billing_period
dataLayer variable
DLV - value
dataLayer variable
DLV - currency
dataLayer variable
DLV - transaction_id
dataLayer variable
DLV - method
dataLayer variable
DLV - step_name / step_number
dataLayer variable
DLV - feature_name
dataLayer variable
DLV - cancel_reason
dataLayer variable
CONST - GA4 Measurement ID
constant: G-XXXXXXXXX
JS - Page Path
javascript variable
BUILT-IN - Page URL, Referrer
built-in

Consent Mode Avanzado (GDPR)

Requiere CMP: Cookiebot o Usercentrics (recomendado para mercado ES/EU). Tasa de consentimiento esperada: 65-70% en EU.

Dimensiones Custom GA4 (10)

User ID
user_id
user
Plan Name
plan_name
user
Billing Period
billing_period
user
Cancel Reason
cancel_reason
event
Feature Name
feature_name
event
Form Name
form_name
event

Convencion UTM — NutriFlow

Parametro Convencion Ejemplo Google Ads Ejemplo Meta Ventana atribucion
utm_source plataforma lowercase google facebook
utm_medium tipo trafico cpc paid_social
utm_campaign ID campana o slug brand-nutriflow-es retargeting-pricing-q2 30 dias
utm_content variante anuncio rsa-titulo-clinicas video-testimonial-v2
utm_term keyword (solo SEM) software dietista espana

Orden de Implementacion

1

GA4: Dimensiones Custom

Registrar las 10 dimensiones en Admin > Custom Definitions antes de implementar cualquier evento.

2

GTM: Estructura base

Variables primero (29 DLV), luego triggers (15 custom events), finalmente 20 tags en orden de prioridad.

3

App: dataLayer pushes

Instrumentar Clerk callbacks, formularios y hooks React. Validar en GTM Preview + GA4 DebugView.

4

Consent Mode + Conversiones

Integrar Cookiebot con GTM. Marcar 4 key events en GA4. Vincular GA4 a Google Ads.

Alertas Proactivas

⚠ CRITICO Sin consent mode en mercado EU — exposicion legal GDPR + hasta 30-40% de datos perdidos. Implementar Cookiebot + Consent Mode Advanced antes del go-live.
⚠ HIGH Cross-domain sin configurar — nutriflow.app y app.nutriflow.app cuentan como sesiones separadas. Configurar en GA4 + GTM para unificar el funnel completo.
⚠ HIGH SPA React sin pageview tracking — React Router no dispara pageviews automaticos en GA4. Requiere hook personalizado o History Change trigger en GTM.
ⓘ INFO Meta CAPI recomendado — el Pixel client-side pierde ~30% de conversiones por adblockers e iOS. Considerar server-side Conversions API para el mercado LATAM.