Pular para o conteúdo principal

SegmentContext

SegmentContext é o objeto opcional context que acompanha eventos (/track, /customer-events) e identificações (/identify, /identify/public). Ele segue a especificação Segment.com e carrega informações sobre o ambiente em que o evento ocorreu: campanha de origem, página, IP, locale, user agent.

Schema

interface SegmentContext {
campaign?: {
name?: string; // Nome da campanha (utm_campaign)
source?: string; // Origem (utm_source)
medium?: string; // Meio (utm_medium)
term?: string; // Termo (utm_term)
content?: string; // Conteúdo (utm_content)
};
page?: {
path?: string; // Pathname da URL
referrer?: string; // document.referrer
search?: string; // Query string
title?: string; // document.title
url?: string; // URL completa
};
ip?: string; // IP do cliente
userAgent?: string; // navigator.userAgent
locale?: string; // ex.: 'pt-BR'
}

Todos os campos são opcionais — envie apenas o que tiver.

Exemplo completo

{
"context": {
"campaign": {
"name": "black-friday-2026",
"source": "google",
"medium": "cpc",
"term": "tenis+corrida",
"content": "ad-variant-A"
},
"page": {
"url": "https://loja.exemplo.com/p/SKU-123?utm_source=google",
"path": "/p/SKU-123",
"title": "Tênis de Corrida",
"referrer": "https://www.google.com/",
"search": "?utm_source=google&utm_medium=cpc"
},
"ip": "200.10.20.30",
"userAgent": "Mozilla/5.0 (...)",
"locale": "pt-BR"
}
}

Por que é importante

Os campos de campaign (UTMs) são usados pela atribuição — o sistema decide qual toque de marketing recebe crédito por uma conversão (Order Completed) a partir da janela de atribuição (padrão: 7 dias) e das UTMs registradas nos eventos anteriores do mesmo anonymousId/userId.

Os campos de page enriquecem o feed de atividade e relatórios — você pode filtrar e segmentar por URL, referrer, etc.

Boas práticas

  • Anexe UTMs sempre que estiverem presentes na query string, especialmente nos primeiros eventos da sessão. O script gtm.js faz isso automaticamente.
  • Padronize valores de campaign.source e campaign.medium dentro do seu time — relatórios agregam por essas strings.
  • Não envie dados sensíveis (PII, números de cartão) em context. Use apenas metadados do ambiente.