---
id: agencias/performance-de-criativos
industria: Agências de marketing
uso: comum
esforco: médio
grao: Anúncio x dia (curva) e anúncio no período (ranking)
---

# Performance de criativos

Qual anúncio prende a atenção, qual converte e qual está cansando, por cliente, com a imagem do criativo ao lado do número.

## Resumo executivo

**Para quem:** Agências que produzem e testam criativos para vários clientes e precisam dizer qual funciona.

**O que resolve**

- O melhor criativo é escolhido pelo objetivo da campanha, e não pelo CTR de todos.
- Hook rate e hold rate têm uma definição por cliente e somam certo em qualquer recorte.
- O criativo cansado aparece antes de o custo subir, com uma miniatura que não quebra no dashboard.

**Por que importa:** Criativo é o que a agência mais produz e o que menos consegue provar. Sem uma régua, cada analista escolhe o melhor anúncio por um critério e o cliente recebe uma recomendação diferente a cada mês. E a fadiga só aparece quando o custo por resultado já subiu.

**Perguntas de negócio que responde**

- Qual o melhor criativo de cada campanha neste mês?
- Quais vídeos seguram a atenção depois dos primeiros segundos?
- Quais anúncios estão cansados e precisam ser trocados?
- Vídeo, carrossel ou estático: o que converte melhor para este cliente?
- Vale produzir mais vídeos curtos ou longos?

**O que você precisa**

- Meta Ads com anúncios, criativos e imagens sincronizados, e TikTok ou Google quando houver
- A definição de hook rate e hold rate combinada com o time de criação
- Um lugar para guardar a miniatura de cada anúncio com URL estável

**O que você recebe**

- Uma curva diária por anúncio com idade, frequência e impressões acumuladas
- Ranking de criativos por objetivo, com miniatura e link
- Alerta de criativo cansado com chave estável
- Um agente de IA que responde qual criativo trocar e por quê

## Detalhado

### O problema

O Meta entrega as métricas de vídeo como listas dentro de cada linha, a URL da miniatura expira a cada sincronização e o mesmo nome aparece em anúncios diferentes. Cada agência define hook rate de um jeito, e quem grava a taxa por dia e tira média depois entrega um número que não bate em nenhum recorte. Sem a curva diária não existe fadiga, só um total.

### Regras de negócio

1. **A chave é o ad_id.** Agregue por ad_id, nunca por ad_name: o mesmo nome aparece em anúncios diferentes, e fundir os dois muda o ranking. O nome serve para exibir e para extrair atributos combinados com a criação (formato, duração, número do roteiro) por posição numa nomenclatura padrão. (Evite: Agrupar por ad_name.)
2. **Hook e hold com definição declarada.** Escolha uma definição por cliente e mantenha. As mais usadas: hook rate = visualizações de 3 segundos (action_type video_view) / impressões, ou views de 25% / impressões; hold rate = ThruPlay ou 15 segundos / visualizações de 3 segundos, ou views de 100% / views de 25%. Escreva no contexto qual foi a escolhida. (Evite: Trocar a definição entre clientes e comparar os números.)
3. **Guarde numerador e denominador.** Taxa não se grava por linha. A tabela guarda impressões, plays, views de 25, 50, 75, 95 e 100%, ThruPlay e cliques, e a taxa é calculada na leitura, a partir das somas do período. Média de taxas diárias dá número errado ao agregar por semana ou por campanha. (Evite: Gravar hook_rate por dia e tirar a média.)
4. **Quartil tem base diferente por plataforma.** No Meta, as métricas de vídeo são listas (video_p25_watched_actions e similares) e a taxa de quartil usa video_plays como base. No YouTube, a taxa de quartil é sobre impressões, e o Google entrega taxa, não contagem: reconstitua a contagem multiplicando pelas visualizações antes de unir. No TikTok, há visualizações de 2 e 6 segundos e de p25 a p100. (Evite: Comparar o quartil do Meta com o do YouTube direto.)
5. **Melhor criativo pelo objetivo.** Compare criativos dentro da mesma campanha ou do mesmo objetivo: custo por resultado em conversão, CPM em alcance, CPC ou custo por visualização da página em tráfego, custo por ThruPlay em vídeo. Só entram criativos com investimento no período e com um mínimo de impressões declarado. Custo de campanha de alcance reflete frequência, não o criativo. (Evite: Um ranking único por CTR para todos os anúncios.)
6. **Formato pela entrega.** Se o anúncio registrou reprodução de vídeo em qualquer dia, ele é vídeo, mesmo que o criativo diga SHARE (post impulsionado) ou venha sem video_id. Avalie sobre todo o histórico do anúncio, e não por dia, senão um dia sem reprodução reclassifica o mesmo criativo. (Evite: Confiar só no object_type ou no video_id do criativo.)
7. **Fadiga é curva, não total.** Mantenha a tabela por anúncio e dia com dias desde a estreia (primeiro dia com impressão), frequência e impressões acumuladas. Fadiga é o resultado caindo enquanto a saturação sobe. Uma regra usada na prática: CTR dos últimos 7 dias pelo menos 35% abaixo dos 7 anteriores, com 5.000 impressões ou mais nas duas janelas. (Evite: Só o ranking do mês, sem eixo de tempo.)
8. **Miniatura com URL estável.** As URLs de imagem do Meta são temporárias e reemitidas a cada sincronização. thumbnail_url e image_url do criativo vêm vazios com frequência: busque a imagem em adimages, ligada pelo criativo (adimages.creatives contém o creative.id do anúncio). Para dashboard externo, copie a imagem logo depois da sincronização e guarde ad_id e URL própria. (Evite: Gravar a URL do Meta no dashboard.)
9. **Sem prévia não é anúncio sem arte.** Carrossel e vídeo quase nunca estão em adimages; post patrocinado que não foi ao feed não tem embed; mensagem patrocinada do LinkedIn não tem imagem nem impressões e se compara por envios e aberturas; anúncio do Google não traz texto nem imagem pelo conector. Diga que é limitação da fonte e nunca invente o texto do anúncio. (Evite: Marcar como criativo sem conteúdo.)
10. **Custo com ou sem imposto, declarado.** Se o cliente reporta o Meta com acréscimo de imposto sobre a verba, CPM, CPC e custo por visualização do relatório de criativos usam o mesmo critério do relatório de mídia. Misturar os dois faz o vídeo do Meta parecer mais caro que o do YouTube. (Evite: Investimento com imposto no total e sem imposto no ranking.)

### Métricas de atenção

Escolha uma definição de hook e uma de hold e declare no contexto do cliente.

- **Meta · início do vídeo** → Visualização de 3 segundos (`actions: video_view`)
- **Meta · reprodução** → Plays (`video_play_actions`)
- **Meta · quartis** → 25%, 50%, 75%, 95% e 100% (`video_p25_watched_actions a video_p100_watched_actions`)
- **Meta · 15 segundos ou completo** → ThruPlay (`video_thruplay_watched_actions`)
- **Hook rate** → Atenção inicial (`video_view / impressões ou p25 / impressões`)
- **Hold rate** → Retenção (`ThruPlay / video_view ou p100 / p25`)
- **YouTube · quartis** → Taxa sobre impressões (`metrics_video_quartile_p25_rate x visualizações`)
- **TikTok · início** → Visualizações de 2 e 6 segundos (`video_watched_2s, video_watched_6s`)

### Definições

| Métrica | Definição |
|---|---|
| Hook rate | soma da atenção inicial declarada (video_view de 3 segundos ou p25) / soma das impressões do anúncio no período |
| Hold rate | soma de ThruPlay (ou p100) / soma da atenção inicial (video_view ou p25), no mesmo período |
| Retenção completa | soma de p100 / soma das impressões |
| Taxa de quartil | Meta: pXX / video_plays; YouTube: pXX / impressões |
| Dias desde a estreia | data menos o primeiro dia com impressão do ad_id |
| Frequência do período | impressões / alcance do mesmo anúncio e período, nunca média de frequências diárias |
| Custo por resultado do criativo | investimento do anúncio / resultado do objetivo da campanha, no período |
| Criativo cansado | CTR dos últimos 7 dias igual ou menor que 65% do CTR dos 7 dias anteriores, com pelo menos 5.000 impressões em cada janela |

### Armadilhas

- **Miniatura quebrada.** O dashboard mostrava imagens que paravam de abrir em um dia, porque a URL do Meta é reemitida a cada sincronização. Como evitar: Copie a imagem e guarde ad_id e URL própria.
- **Reels no ranking de estáticos.** Posts impulsionados vinham como SHARE e sem video_id, e reels entravam no ranking de imagens. Como evitar: Formato pela entrega de vídeo no histórico do anúncio.
- **Dois anúncios com o mesmo nome.** Agrupar por nome somou anúncios diferentes, e o vencedor do ranking era a soma de dois. Como evitar: Agrupe por ad_id.
- **Média de médias.** Hook rate gravado por dia e depois tirado em média dava números diferentes por semana e por campanha. Como evitar: Guarde os componentes e divida na leitura.
- **Campeão de alcance.** O ranking único colocava no topo anúncios de alcance com CPM baixo, que não geravam nenhum lead. Como evitar: Ranking dentro do objetivo da campanha.
- **Lead contado em dobro.** O ranking por custo por lead somava lead com os tipos espelho, e o melhor criativo tinha CPL pela metade. Como evitar: Use o resultado do objetivo, como no caso de resultado do Meta.

Validado em dados reais: Na conta de Meta Ads da própria Nekt, 14 nomes de anúncio aparecem em mais de um ad_id (376 anúncios para 362 nomes), e o video_id do criativo vem vazio em todos os anúncios, inclusive nos de vídeo. O ranking precisa agregar por ad_id e o formato precisa sair da entrega de vídeo.

### Teste de aceitação

- [ ] Para um cliente e um mês, investimento e impressões da tabela de criativos são iguais aos da tabela de mídia nas campanhas que têm nível de anúncio.
- [ ] Hook rate e hold rate de uma campanha no mês dão o mesmo valor calculados a partir da tabela diária e da tabela do período.
- [ ] Cada ad_id tem um único formato em todo o histórico.
- [ ] Todas as miniaturas do dashboard abrem 7 dias depois da carga.
- [ ] Nenhum ranking compara criativos de objetivos diferentes.

### Context document

```text
Performance de criativos
- A chave do criativo é ad_id. Nunca agrupe por ad_name.
- Hook rate e hold rate seguem a definição do cliente (abaixo). Sempre recalcule das somas do período; não tire média de taxas.
- Meta: métricas de vídeo são listas; taxa de quartil = pXX / video_plays. YouTube: taxa de quartil sobre impressões.
- Formato: vídeo se o anúncio teve reprodução em qualquer dia; senão, o tipo de mídia do criativo.
- Melhor criativo = menor custo do objetivo da campanha (conversão: custo por resultado; alcance: CPM; tráfego: CPC). Só criativos com investimento e com pelo menos <n> impressões no período.
- Fadiga: CTR dos últimos 7 dias pelo menos 35% abaixo dos 7 anteriores, com 5.000 impressões ou mais em cada janela, ou resultado caindo com frequência e impressões acumuladas subindo.
- Sem prévia é limitação da fonte (vídeo e carrossel do Meta, post fora do feed, Google). Não invente texto de anúncio.
- O resultado do Meta segue as regras do caso Resultado do Meta Ads por objetivo.
Exceções por cliente:
- <cliente>: hook rate = <video_view / impressões | p25 / impressões>; hold rate = <ThruPlay / video_view | p100 / p25>.
- <cliente>: ad_name segue <formato>_<duração>_<roteiro>, separado por _.
- <cliente>: custos do Meta no relatório de criativos <com | sem> imposto de <x>%.
```

### Variações

- **Criativo até a venda:** Ligue o ad_id ao negócio do CRM e ranqueie por custo por venda.
- **Pilar e roteiro:** Extraia o pilar de conteúdo ou o número do roteiro da legenda ou do nome e compare por grupo.
- **Pago e orgânico:** Ligue o anúncio ao post orgânico correspondente pelo id do post para comparar o mesmo conteúdo nos dois.
