Pular para o conteúdo
Dericson Calari
Voltar ao blog
Variáveis Dinâmicas do Meta Ads para UTMs

Variáveis Dinâmicas do Meta Ads para UTMs

Conheça cada uma das 8 variáveis dinâmicas que o Meta Ads disponibiliza para UTMs. Entenda o que {{campaign.id}}, {{placement}}, {{site_source_name}} e as demais retornam, quando usar IDs vs nomes, e como montar a URL perfeita para atribuição real.

Dericson Calari

Dericson Calari

10 min de leitura

Você configurou UTMs nos seus anúncios do Meta Ads. Ótimo. Mas você sabe exatamente o que cada variável dinâmica retorna? Sabe a diferença entre `{{campaign.id}}` e `{{campaign.name}}`? Sabe por que `{{ad.name}}` pode te enganar se você renomear o anúncio depois de publicar?

A maioria dos tutoriais ensina a colar uma URL pronta e seguir em frente. Aqui eu vou fazer diferente: vou abrir cada uma das 8 variáveis dinâmicas que o Meta disponibiliza, explicar o que ela retorna de verdade, quando usar e quando evitar, e no final montar a estrutura de URL que eu uso nos meus projetos.

O que são variáveis dinâmicas do Meta Ads

Variáveis dinâmicas são placeholders no formato `{{nome.da.variavel}}` que você insere na URL de destino dos seus anúncios. Quando alguém clica no anúncio, o Meta substitui esses placeholders por valores reais — o ID da campanha, o nome do conjunto, o posicionamento onde o anúncio apareceu, etc.

Isso é rastreamento na prática: você está dizendo ao Meta "me conta exatamente de onde veio esse clique" e ele responde no momento do clique, sem depender de pixel, cookie ou qualquer script.

O resultado chega na URL que o visitante acessa. Se você tem rastreamento configurado (UTMs armazenados em banco, por exemplo), esses dados ficam com você pra sempre.

As 8 variáveis dinâmicas do Meta Ads

O Meta Ads disponibiliza exatamente 8 variáveis dinâmicas. Nem mais, nem menos. Vamos a cada uma.

Variáveis de ID (imutáveis)

Essas retornam o identificador numérico único de cada nível da estrutura de campanha. O ID nunca muda — mesmo que você renomeie a campanha, o adset ou o anúncio.

`{{campaign.id}}`

Retorna o ID numérico da campanha. Exemplo: `23845917166800246`.

Esse número é o mesmo que aparece na URL do Gerenciador de Anúncios quando você abre a campanha. É a variável mais confiável pra atribuição porque não depende de como você nomeou as coisas.

Quando usar: Sempre. É a base da atribuição. Cruze esse ID com a API do Meta ou com seu banco de dados pra saber exatamente qual campanha gerou a conversão.

`{{adset.id}}`

Retorna o ID numérico do conjunto de anúncios. Exemplo: `23845917166800312`.

Cada conjunto tem um ID único. Útil pra saber qual segmentação, orçamento ou programação gerou o clique.

Quando usar: Quando você precisa de granularidade abaixo da campanha — especialmente se roda múltiplos conjuntos com segmentações diferentes.

`{{ad.id}}`

Retorna o ID numérico do anúncio individual. Exemplo: `23845917166800451`.

O nível mais granular. Cada criativo, cada variação de copy, cada combinação de imagem + texto tem seu próprio ID.

Quando usar: Quando você quer saber qual criativo específico performou melhor. Essencial pra testes A/B.

Variáveis de nome (cuidado!)

Essas retornam o nome que você deu à campanha, ao conjunto ou ao anúncio. Parece mais legível, mas tem uma armadilha importante.

`{{campaign.name}}`

Retorna o nome da campanha no momento em que ela foi publicada. Exemplo: `vendas-blackfriday-2026`.

A armadilha: Se você publicar a campanha com o nome "vendas-bf" e depois renomear para "vendas-blackfriday-2026", a variável dinâmica continua retornando "vendas-bf" para quem clicou antes da mudança. E para novos cliques após a mudança? O comportamento não é garantido — em muitos casos, o nome antigo persiste até você republicar o anúncio.

Quando usar: Pra legibilidade no dashboard, desde que você defina os nomes ANTES de publicar e nunca mais mude.

`{{adset.name}}`

Mesma lógica do `{{campaign.name}}`, mas pro conjunto de anúncios.

Exemplo: `lookalike-compradores-30d`.

Mesma armadilha: Renomear depois de publicar não atualiza o valor retornado.

`{{ad.name}}`

Mesma lógica, mas pro anúncio individual.

Exemplo: `carrossel-depoimentos-v2`.

Mesma armadilha. E aqui é ainda mais perigoso porque anúncios são renomeados com mais frequência do que campanhas.

Variáveis de posicionamento

Essas são as mais valiosas pra otimização de mídia — te dizem onde o anúncio foi exibido quando o clique aconteceu.

`{{placement}}`

Retorna o posicionamento exato. Não é genérico — é específico. Valores possíveis:

  • `Facebook_Desktop_Feed`
  • `Facebook_Mobile_Feed`
  • `Facebook_Marketplace`
  • `Facebook_Right_Column`
  • `Facebook_Stories`
  • `Facebook_Instream_Video`
  • `Facebook_Instant_Articles`
  • `Instagram_Feed`
  • `Instagram_Stories`
  • `Instagram_Reels`
  • `Instagram_Explore`
  • `Instagram_Explore_Grid_Home`
  • `Instagram_Profile_Feed`
  • `Audience_Network`
  • `Messenger_Inbox`
  • `Others`

Quando usar: Sempre. Essa variável te permite saber se os leads que convertem vêm do Feed do Instagram, do Reels, do Marketplace, ou de qualquer outro posicionamento. Sem ela, você fica cego sobre onde o dinheiro está sendo bem gasto.

`{{site_source_name}}`

Retorna a plataforma (não o posicionamento) de onde o clique veio. Valores possíveis:

  • `fb` — Facebook
  • `ig` — Instagram
  • `msg` — Messenger
  • `an` — Audience Network

Quando usar: Quando você quer separar Facebook de Instagram de Messenger no nível macro, sem entrar no detalhe do posicionamento. Ideal pro `utm_source`.

IDs vs Nomes: qual usar?

A resposta curta: use os dois juntos.

IDs são imutáveis e precisos — perfeitos pra atribuição no banco de dados e cruzamento com a API do Meta. Nomes são legíveis — perfeitos pra visualização em dashboards e relatórios.

O erro mais comum é usar só nomes. Quando você renomeia uma campanha (e todo mundo renomeia), perde a rastreabilidade.

O segundo erro mais comum é usar só IDs. Quando você olha o dashboard e vê `23845917166800246`, precisa abrir o Gerenciador pra saber o que é.

A solução é: IDs nos parâmetros de atribuição (que vão pro banco), nomes nos parâmetros de legibilidade (que aparecem no dashboard).

A estrutura que eu uso

Aqui está a URL parametrizada que uso nos meus projetos:

`?utm_source={{site_source_name}}&utm_medium=paid&utm_campaign={{campaign.name}}&utm_content={{adset.name}}&utm_term={{ad.name}}&utm_id={{campaign.id}}&ad_id={{ad.id}}&adset_id={{adset.id}}&placement={{placement}}`

Vamos destrinchar:

  • `utm_source` = `{{site_source_name}}` → Separa Facebook de Instagram de Messenger. No Google Analytics, você vê "fb", "ig", "msg" como fontes distintas.
  • `utm_medium` = `paid` → Estático. Diferencia tráfego pago de orgânico. Alguns usam "cpc" ou "social_ads", mas eu prefiro "paid" porque é universal (vale pra Google Ads, Meta, TikTok, tudo).
  • `utm_campaign` = `{{campaign.name}}` → Legível no dashboard. Você vê "vendas-blackfriday-2026" em vez de um número.
  • `utm_content` = `{{adset.name}}` → Identifica o conjunto (segmentação). Útil pra saber qual público está convertendo melhor.
  • `utm_term` = `{{ad.name}}` → Identifica o criativo. Qual imagem, vídeo ou copy gerou o clique.
  • `utm_id` = `{{campaign.id}}` → ID imutável da campanha. Pra cruzamento com API e banco de dados.
  • `ad_id` = `{{ad.id}}` → ID imutável do anúncio. Pra atribuição precisa.
  • `adset_id` = `{{adset.id}}` → ID imutável do conjunto. Pra análise de segmentação.
  • `placement` = `{{placement}}` → Onde o anúncio apareceu. Pra otimização de posicionamento.

Por que "paid" e não "cpc" no utm_medium?

Muita gente usa `cpc` como medium porque é o que o Google Ads usa por padrão. Mas no Meta Ads, nem todo clique é CPC — você pode estar otimizando pra CPM, pra ThruPlay, pra conversões.

Usar `paid` como medium te dá uma visão limpa: todo tráfego que veio de investimento em mídia, independente do modelo de cobrança. No dashboard, você filtra `medium=paid` e vê todo o tráfego pago de todas as plataformas num lugar só.

Se você precisa diferenciar o modelo de cobrança, coloque isso no nome da campanha ou do conjunto — não no utm_medium.

A convenção de nomenclatura importa

Antes de configurar as variáveis dinâmicas, defina uma convenção de nomenclatura para campanhas, conjuntos e anúncios. Isso é mais importante do que parece, porque:

  1. `{{campaign.name}}` retorna exatamente o que você digitou. Se o nome tem espaço, acento ou emoji, é isso que vai na URL.
  2. Espaços viram `%20` na URL. Acentos podem quebrar em sistemas mais antigos. Emojis... nem vou comentar.
  3. Se cada pessoa do time nomeia de um jeito diferente, seus dados de UTM viram um caos impossível de agregar.

A convenção que eu recomendo:

  • Use hifens em vez de espaços: `vendas-blackfriday` em vez de `vendas blackfriday`
  • Use minúsculas sempre: `instagram-stories` em vez de `Instagram_Stories`
  • Inclua objetivo + público + data no nome da campanha: `vendas-lookalike-compradores-2026q1`
  • Inclua segmentação no nome do conjunto: `interesse-marketing-digital-25-45`
  • Inclua formato + variação no nome do anúncio: `carrossel-depoimentos-v2`

Onde configurar no Gerenciador de Anúncios

No nível do anúncio (não da campanha, não do conjunto):

  1. Abra o anúncio no Gerenciador de Anúncios
  2. Role até a seção de Rastreamento
  3. Abra o campo Parâmetros de URL
  4. Cole a string completa com as variáveis dinâmicas
  5. Publique

O Meta vai substituir cada `{{variavel}}` pelo valor real no momento do clique.

Dica: Você pode configurar isso no nível da campanha usando a opção de "Parâmetros de URL" nas configurações da campanha. Assim, todos os anúncios herdam os mesmos parâmetros sem precisar copiar em cada um.

Erros comuns que eu vejo

1. Usar só nomes e renomear depois

Já falei sobre isso, mas vale reforçar: se você usa `{{campaign.name}}` e depois renomeia a campanha, os dados antigos ficam com o nome antigo e os novos com o nome novo (ou nem isso). Resultado: no seu dashboard aparece a mesma campanha com dois nomes diferentes.

2. Não incluir IDs

Sem `{{campaign.id}}`, `{{adset.id}}` e `{{ad.id}}`, você não tem como cruzar os dados da URL com os dados da API do Meta Ads. Isso significa que não consegue, por exemplo, puxar o custo real de cada anúncio e calcular o CPA verdadeiro.

3. Esquecer o `{{placement}}`

Sem saber o posicionamento, você não tem como otimizar onde seus anúncios aparecem. Pode estar gastando 80% do orçamento no Audience Network (que geralmente tem baixa qualidade) e nem saber.

4. Duplicar parâmetros entre plataformas

Se você usa `utm_source=facebook` pro Meta Ads e `utm_source=facebook` pro tráfego orgânico da página do Facebook, não vai conseguir separar os dois no dashboard. Use `{{site_source_name}}` como source pro pago e defina uma convenção diferente pro orgânico.

5. Não testar antes de escalar

Antes de colocar budget pesado, clique no anúncio e verifique se a URL de destino está chegando com os parâmetros corretos. Abra o Developer Tools > Network > veja a URL completa. Se alguma variável está chegando como `{{campaign.name}}` em vez do valor real, algo está errado na configuração.

Como isso se conecta com rastreamento e traqueamento

As variáveis dinâmicas são o ponto de partida do rastreamento. Elas colocam os dados na URL. Mas a URL sozinha não faz nada — você precisa:

  1. Capturar esses parâmetros quando o visitante chega no seu site (via JavaScript, GTM, ou sistema como o Rastracking)
  2. Armazenar em banco de dados (rastreamento — os dados ficam com você)
  3. Enviar eventos de conversão de volta ao Meta via CAPI (traqueamento — alimenta o algoritmo)

Se você faz só o passo 1 e para no Google Analytics, está deixando dinheiro na mesa. O Google Analytics mostra os dados, mas não alimenta o algoritmo do Meta com conversões reais. Pra isso, você precisa do ciclo completo.

Conclusão

As 8 variáveis dinâmicas do Meta Ads são simples de usar e poderosas quando combinadas. A chave é:

  • Sempre inclua IDs pra atribuição precisa
  • Use nomes pra legibilidade, mas defina antes de publicar
  • Inclua `{{placement}}` pra saber onde o dinheiro está sendo gasto
  • Inclua `{{site_source_name}}` pra separar plataformas
  • Padronize nomenclatura antes de começar
  • Conecte com rastreamento + traqueamento pra fechar o ciclo completo

Se você quer entender como fechar esse ciclo — capturar esses parâmetros, armazenar em banco e enviar conversões de volta — leia o guia de rastreamento WhatsApp com N8N que eu publiquei aqui no blog.

2
Compartilhar:

Continue lendo

Transforme dados em resultados

Rastreamento de campanhas WhatsApp, Meta Ads e Google Ads com dashboards em tempo real.

Conhecer

// Players gigantes recomendam

Empresas e perfis que já confiaram no nosso trabalho

Natalia Beauty
Pablo Marçal
Kayky
Samer Agi
Raiam Santos
Vini do To Solto
Talita Dalbo
Mari RVABO
E-commerce na Prática
Nuvemshop
Chico Salgado
Dicas do Padrinho
Patricia Yagopian

O Rastracking100 já realizou projetos de trackeamento e rastreamento para diferentes mercados, com cases envolvendo Pablo Marçal, Nuvemshop, E-commerce na Prática, Natalia Beauty e outros perfis de alta performance.