---
id: educacao/midia-por-curso-lancamento
industria: Educação
uso: muito usado
esforco: médio
grao: Dia x plataforma x conta x campanha; cadastro por pessoa por lançamento
---

# Mídia paga por curso e lançamento

Quanto custou cada venda que veio do anúncio e quanto cada real voltou, por campanha, curso e lançamento, com a cobertura do número declarada.

## Resumo executivo

**Para quem:** Escolas, faculdades e infoprodutores que investem em várias plataformas e vendem por lançamento e perpétuo.

**O que resolve**

- Um investimento total por campanha e curso, somando todas as plataformas, que bate com cada gerenciador.
- CAC e ROAS calculados campanha a campanha, com a parte do investimento que o número cobre escrita ao lado.
- Lançamento avaliado pela campanha inteira, sem mês de captação parecendo buraco nem mês de carrinho parecendo milagre.

**Por que importa:** Em educação vendida online, a mídia é o maior custo variável e a decisão de verba é semanal. Um ROAS de mês num lançamento leva a cortar a captação que ia gerar o carrinho. Um CAC que divide o gasto de uma campanha pelas vendas de outra leva a escalar o curso errado.

**Perguntas de negócio que responde**

- Qual o CAC de cada campanha do meu curso neste mês e no mês passado?
- Qual o ROAS do último lançamento, somando captação e carrinho?
- Quanto investimos em todas as plataformas por curso neste mês?
- Quais campanhas tiveram investimento e nenhuma venda atribuída ao tráfego?
- Quantos cadastros e quantas respostas de pesquisa o lançamento já teve, por temperatura?
- Qual o perfil de renda dos leads quentes do lançamento atual?

**O que você precisa**

- Plataformas de mídia e a fonte de vendas conectadas na Nekt
- Um código de campanha no nome das campanhas e um cadastro de campanhas com curso e tipo
- Uma tabela de lançamentos com código, curso e datas de abertura e carrinho

**O que você recebe**

- Uma tabela de mídia por dia, plataforma, conta e campanha, com curso e tipo de campanha
- CAC e ROAS por campanha, mês, curso e lançamento, com cobertura
- Cadastros e respostas de pesquisa por lançamento, prontos para planilha
- Um agente de IA que responde mídia com as regras certas

## Detalhado

### O problema

O investimento está espalhado em várias contas e plataformas, e o nome da conta não diz o curso. A venda não chega até o anúncio, então quem calcula CAC junta gasto e venda por texto de campanha e divide coisas que não se correspondem. Num lançamento, o gasto da captação cai num mês e a venda do carrinho no seguinte, e o ROAS mensal engana nos dois sentidos.

### Regras de negócio

1. **Investimento total é a soma declarada das plataformas.** Investimento total = soma do gasto de todas as plataformas no mesmo período (por exemplo Meta + Google + YouTube), e toda métrica mostra também a parte de cada plataforma. Cada fonte só vale dentro do seu intervalo de dados: fora dele o valor é nulo, não zero. Mês em que a coleta de uma plataforma estava desligada é sem informação, e isso vai escrito na resposta. (Evite: Tratar meses sem coleta do Google como gasto zero.)
2. **O código da campanha amarra gasto, lead e venda.** Grave um código no nome de cada campanha (por exemplo `[ID][CUR0826L]`: prefixo do curso, mês, ano e tipo de funil) e leve o mesmo código para a UTM e para a oferta de venda. Normalize com uma única expressão em todas as tabelas: maiúsculo e sem espaços nas pontas. Gasto sem código e código fora do cadastro ficam em linhas próprias, nunca somados a um curso. (Evite: Juntar mídia e venda pelo nome livre da campanha.)
3. **Curso vem da campanha, não da conta.** O nome da conta de anúncio não diz o curso: uma conta de lançamento carrega campanhas de vários cursos. O curso do investimento sai do cadastro da campanha ou do prefixo do código, testando prefixos longos antes dos curtos (o prefixo mais curto engole o mais longo). O curso da campanha (que a meta e o investimento usam) pode ser diferente do curso do produto vendido (que a receita usa): é desenho, não erro, e não se reconcilia. (Evite: Atribuir curso pelo nome da conta de anúncio.)
4. **Agregue cada lado antes de juntar.** Some o investimento por mês x campanha e as vendas por mês x campanha separadamente, e só então junte os dois com junção completa (full outer join). Assim aparecem as campanhas com gasto e sem venda e as vendas sem gasto. CTR, CPC e CPM se recalculam dos totais, nunca por média de médias. (Evite: Juntar a tabela diária de anúncios com a de vendas linha a linha.)
5. **CAC com cobertura escrita ao lado.** CAC = investimento total da campanha / vendas atribuídas ao tráfego da mesma campanha. A venda de tráfego é a marcada pela origem da venda (por exemplo, código de rastreio que começa com `trafego`). Mostre quantas campanhas com investimento tiveram alguma venda de tráfego e quanto do investimento elas representam. CAC de mês, curso ou tipo soma campanhas diferentes: olhe também campanha a campanha. Investimento / todas as vendas da campanha é custo por venda, rotulado como apoio, nunca como CAC. (Evite: CAC do mês = gasto total / vendas de tráfego, sem dizer que só poucas campanhas marcam a origem.)
6. **Lançamento se avalia pela campanha inteira.** No lançamento o gasto de captação cai num mês e as vendas do carrinho no seguinte. Além do ROAS do mês, entregue o ROAS da campanha inteira: todo o investimento do código / todo o faturamento do código, em todas as datas. Curso cujo investimento é só de lançamento em captação aparece como em captação e sai do consolidado, em vez de ROAS perto de zero. Lançamento sem histórico não entra em comparação de eficiência. (Evite: Cortar a verba porque o mês de captação teve ROAS 0,6.)
7. **Renovação fora do ROAS de mídia.** Renovações e cobranças recorrentes não têm mídia própria e herdam a origem da primeira venda. No ROAS da campanha e do curso, use faturamento sem renovação; no ROAS geral do mês, se a renovação entrar, diga isso. Vendas de renovação marcadas como tráfego também saem do CAC. (Evite: ROAS do curso inflado pela renovação de quem comprou no ano anterior.)
8. **Lead da plataforma não é o lead oficial.** O lead que a plataforma conta (evento do pixel ou formulário) não é o lead nem o MQL da casa, que costuma vir da automação de marketing ou do CRM. CPL da plataforma só vale para campanha de captação (lançamento, webinário, isca). Campanha de aplicação ou venda direta quase não gera lead da plataforma e o CPL sai absurdo. Não some leads do Meta, conversões do Google e resultados do TikTok numa coluna única de conversões. (Evite: Chamar o lead do pixel de MQL e calcular CPL de campanha de aplicação.)
9. **Moeda e imposto em visões fixas.** Quem vende ou anuncia em mais de uma moeda mantém visões fixas: moeda (BRL, EUR) x com e sem imposto. A conversão usa a PTAX de fechamento do Banco Central do dia (cotação de venda); dia sem boletim usa o último dia útil anterior; dia com dois boletins de fechamento usa o último. O imposto sobre a verba do Meta (por exemplo 12,15%) só muda o investimento. Toda consulta filtra uma visão, senão a soma sai multiplicada pelo número de visões. (Evite: Somar a tabela sem filtrar moeda e imposto.)
10. **Lançamento é uma linha numa tabela, cadastro e pesquisa são eventos diferentes.** Não copie uma consulta por lançamento com código e data fixos. Mantenha uma tabela de lançamentos (código, curso, abertura, carrinho) e uma tabela única de captação com a coluna do lançamento, lida do campo launch, do domínio, do caminho da página ou da UTM. Cadastro é a entrada na página de captura; resposta de pesquisa é o envio na página de obrigado, com perfil (idade, renda, escolaridade) e temperatura (quente, morno, frio). Conte pessoas por lançamento pelo e-mail ou telefone normalizado, com a primeira data de entrada. (Evite: Vinte e cinco transformações iguais, uma por lançamento, com a data de abertura escrita no código.)

### Sufixo do código e tipo de funil

Exemplo de convenção <curso><MM><AA><tipo>. O sufixo diz o formato do funil, não a estratégia nem a meta.

- **L** → Lançamento (`L2 = segunda onda`)
- **AP** → Aplicação (perpétuo) (`AP`)
- **SE** → Sessão estratégica (`SE`)
- **W** → Webinário (`W`)
- **VSL** → Funil de VSL (`VSL`)
- **Q** → Quiz (`Q`)
- **V** → Venda direta (`V`)
- **FTV** → Funil do time de vendas (`FTV`)
- **REC** → Recuperação (`<curso>REC`)

### Definições

| Métrica | Definição |
|---|---|
| Investimento total | soma do gasto de todas as plataformas por dia, campanha e conta, no calendário de Brasília, com a parte de cada plataforma ao lado |
| Venda de tráfego | venda aprovada cuja origem marcada indica tráfego pago (ex.: código de rastreio começando com trafego), contada por código de transação distinto |
| CAC da campanha | investimento total da campanha no mês / vendas de tráfego da mesma campanha no mês |
| Cobertura do CAC | investimento das campanhas que têm venda de tráfego / investimento total do mês |
| Custo por venda da campanha (apoio) | investimento da campanha / todas as vendas sem renovação com o código da campanha; não é CAC |
| ROAS do mês | faturamento do mês / investimento total do mês, no mesmo recorte e com a mesma regra de curso |
| ROAS da campanha inteira | faturamento sem renovação de todas as datas do código / investimento de todas as datas do código |
| CPL da plataforma | investimento das campanhas de captação / leads contados pela plataforma, nomeado sempre assim |
| Cadastros do lançamento | pessoas distintas (e-mail ou telefone normalizado) com entrada na página de captura do lançamento desde a abertura |

### Armadilhas

- **Normalização que casou zero.** A tabela de mídia normalizava o nome da campanha em minúsculo e a de atribuição em maiúsculo. O cruzamento casou zero campanhas e ninguém percebeu por semanas. Como evitar: Uma expressão única de normalização, documentada, em todas as tabelas.
- **Outros escondendo cadastro faltando.** Campanha não cadastrada caía no mesmo grupo de cadastrada sem tipo. Num mês, isso escondeu o gasto de um lançamento inteiro e fez o tipo lançamento parecer bem menor. Como evitar: Separe sem código, código fora do cadastro e cadastrado sem tipo; olhe a cobertura antes de concluir.
- **CAC vazio nas maiores campanhas.** As campanhas de aplicação com mais verba não tinham nenhuma venda marcada como tráfego. O CAC oficial media bem poucos perpétuos e nada das campanhas grandes. Como evitar: Mostre a cobertura e o custo por venda como apoio, e corrija a marcação de origem na oferta.
- **Dashboard abaixo do banco.** O painel mostrava o investimento do Meta alguns por cento abaixo da base porque excluía posts impulsionados e distribuição de conteúdo. Como evitar: Defina se a régua oficial soma tudo e ofereça a visão como no dashboard separada.
- **Campanhas que só existem na UTM.** Centenas de campanhas apareciam nas UTMs dos leads sem gasto em nenhuma plataforma: anteriores ao histórico da API, canais sem custo (e-mail, orgânico, WhatsApp) ou plataformas não conectadas. Como evitar: Marque a situação de atribuição e calcule CPL e ROI só para campanhas com as duas pontas.
- **Campo da automação com id por conta.** Em automação de marketing com várias contas, o mesmo campo de qualificação tem id diferente em cada conta. Filtrar por uma lista com os ids de todas as contas trouxe respostas de campos errados. Como evitar: Mapeie conta x id do campo numa tabela de referência e filtre por par.

### Teste de aceitação

- [ ] Para um mês fechado, o investimento de cada plataforma por campanha bate com o respectivo gerenciador (diferença abaixo de 1%), e meses sem coleta aparecem nulos.
- [ ] A soma do investimento por curso + sem código + código fora do cadastro é igual ao investimento total do mês.
- [ ] Para um lançamento encerrado, o ROAS da campanha inteira é igual a todo o faturamento sem renovação do código dividido por todo o investimento do código.
- [ ] Todo CAC reportado vem com a cobertura do investimento, e nenhuma linha de custo por venda aparece com o nome CAC.
- [ ] Os cadastros de um lançamento contam cada pessoa uma vez, e cadastros + pessoas que só responderam a pesquisa batem com o total de pessoas distintas do lançamento.

### Context document

```text
Mídia paga por curso e lançamento
- Investimento total = soma do gasto de <plataformas> no mesmo período. Mostrar sempre a parte de cada plataforma. Fora do intervalo de dados de uma fonte o valor é nulo, não zero.
- Chave: código da campanha no nome (padrão [ID][<código>]), normalizado com UPPER(TRIM()) em todas as tabelas. Gasto sem código e código fora do cadastro ficam em linhas próprias.
- Curso do investimento: cadastro da campanha; na falta, prefixo do código, do mais longo ao mais curto. O nome da conta não indica curso. Curso da campanha (meta e investimento) pode diferir do curso do produto (receita): não reconciliar.
- Agregar investimento e vendas por mês x campanha separadamente e juntar com full outer join. CTR, CPC e CPM recalculados dos totais.
- CAC = investimento da campanha / vendas de tráfego da campanha. Venda de tráfego = <regra de origem>. Informar a cobertura (percentual do investimento em campanhas com venda de tráfego). Investimento / todas as vendas = custo por venda (apoio), nunca CAC.
- Lançamento: entregar o ROAS do mês e o ROAS da campanha inteira (todas as datas). Curso só em captação = em captação, fora do consolidado.
- ROAS de campanha e de curso usa faturamento sem renovação.
- Lead da plataforma não é lead nem MQL oficial. CPL da plataforma só em campanha de captação. Não somar conversões de plataformas diferentes.
- Visões: moeda <BRL/EUR> x imposto <sim/não>. Filtrar sempre uma visão. Padrão: <visão>. PTAX de fechamento do dia, último dia útil quando não há boletim.
- Lançamentos: tabela <tabela de lançamentos> com código, curso, abertura e carrinho. Cadastro = página de captura; pesquisa = página de obrigado com respostas e temperatura (q, m, f). Pessoa = e-mail ou telefone normalizado, primeira data de entrada.
- Dia corrente é parcial. Declarar a última carga de cada plataforma.
Exceções por cliente:
- <cliente>: a conta <conta> fica fora do investimento até a moeda e o escopo serem confirmados.
- <cliente>: imposto de <x>% sobre a verba do Meta entra só na visão com imposto.
- <cliente>: o painel exclui gasto de <categoria>; a régua oficial soma tudo.
```

### Variações

- **Venda por call:** Quem passou por call compra mais caro: compare ticket com e sem call, casando agenda e comprador por e-mail.
- **Multimoeda:** Operação em dois países com quatro visões: BRL e EUR, com e sem imposto.
- **Perpétuos:** CPL, levantadas de mão e ROAS por funil perpétuo, com safra de quem entrou no período.
