Analisa a performance de campanhas com atribuição multi-touch, análise de conversão do funil e cálculo de ROI para otimização de marketing. Use ao analisar campanhas de marketing, performance de anúncios, modelos de atribuição, taxas de conversão ou ao calcular ROI, ROAS, CPA e métricas de campanha entre canais.
Scanned 9/8/2026
Install to Claude Code
npx -y skills add artubss/SKILLS-CLAUDE-CODE --skill campaign-analytics --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Campaign Analytics?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/artubss-campaign-analytics)More formats (shields.io, HTML) on the badges page.
---
name: "campaign-analytics"
description: Analisa a performance de campanhas com atribuição multi-touch, análise de conversão do funil e cálculo de ROI para otimização de marketing. Use ao analisar campanhas de marketing, performance de anúncios, modelos de atribuição, taxas de conversão ou ao calcular ROI, ROAS, CPA e métricas de campanha entre canais.
license: MIT
metadata:
version: 1.0.0
author: Ric Neves - Flowgrammers
category: marketing
domain: campaign-analytics
updated: 2026-02-06
tech-stack: marketing-analytics, attribution-modeling
agents:
- claude-code
---
# Analytics de Campanha
Análise de performance de campanhas com modelagem de atribuição multi-touch, análise de conversão do funil e cálculo de ROI de nível produção. Três ferramentas Python CLI fornecem analytics determinísticos e repetíveis usando apenas a biblioteca padrão — sem dependências externas, sem chamadas de API, sem modelos de ML.
---
## Requisitos de Entrada
Todos os scripts aceitam um arquivo JSON como argumento de entrada posicional. Veja `assets/sample_campaign_data.json` para exemplos completos.
### Attribution Analyzer
```json
{
"journeys": [
{
"journey_id": "j1",
"touchpoints": [
{"channel": "organic_search", "timestamp": "2025-10-01T10:00:00", "interaction": "click"},
{"channel": "email", "timestamp": "2025-10-05T14:30:00", "interaction": "open"},
{"channel": "paid_search", "timestamp": "2025-10-08T09:15:00", "interaction": "click"}
],
"converted": true,
"revenue": 500.00
}
]
}
```
### Funnel Analyzer
```json
{
"funnel": {
"stages": ["Consciência", "Interesse", "Consideração", "Intenção", "Compra"],
"counts": [10000, 5200, 2800, 1400, 420]
}
}
```
### Campaign ROI Calculator
```json
{
"campaigns": [
{
"name": "Campanha de Email Primavera",
"channel": "email",
"spend": 5000.00,
"revenue": 25000.00,
"impressions": 50000,
"clicks": 2500,
"leads": 300,
"customers": 45
}
]
}
```
### Validação de Entrada
Antes de executar os scripts, verifique se seu JSON é válido e corresponde ao schema esperado. Erros comuns:
- **Chaves obrigatórias ausentes** (ex.: `journeys`, `funnel.stages`, `campaigns`) → script sai com um `KeyError` descritivo
- **Comprimentos de array incompatíveis** nos dados do funil (`stages` e `counts` devem ter o mesmo comprimento) → levanta `ValueError`
- **Valores monetários não numéricos** nos dados de ROI → levanta `TypeError`
Use `python -m json.tool seu_arquivo.json` para validar a sintaxe JSON antes de passar para qualquer script.
---
## Formatos de Saída
Todos os scripts suportam dois formatos de saída via flag `--format`:
- `--format text` (padrão): Tabelas e resumos legíveis por humanos para revisão
- `--format json`: JSON legível por máquina para integrações e pipelines
---
## Fluxo de Trabalho Típico de Análise
Para uma revisão completa de campanha, execute os três scripts em sequência:
```bash
# Passo 1 — Atribuição: entender quais canais impulsionam conversões
python scripts/attribution_analyzer.py campaign_data.json --model time-decay
# Passo 2 — Funil: identificar onde os prospects desistem no caminho para a conversão
python scripts/funnel_analyzer.py funnel_data.json
# Passo 3 — ROI: calcular lucratividade e comparar com benchmarks do setor
python scripts/campaign_roi_calculator.py campaign_data.json
```
Use os resultados de atribuição para identificar os canais de melhor desempenho, depois concentre a análise do funil nos segmentos desses canais, e por fim valide as métricas de ROI para priorizar a realocação de budget.
---
## Como Usar
### Análise de Atribuição
```bash
# Execute todos os 5 modelos de atribuição
python scripts/attribution_analyzer.py campaign_data.json
# Execute um modelo específico
python scripts/attribution_analyzer.py campaign_data.json --model time-decay
# Saída JSON para integração com pipeline
python scripts/attribution_analyzer.py campaign_data.json --format json
# Meia-vida personalizada para time-decay (padrão: 7 dias)
python scripts/attribution_analyzer.py campaign_data.json --model time-decay --half-life 14
```
### Análise de Funil
```bash
# Análise básica do funil
python scripts/funnel_analyzer.py funnel_data.json
# Saída JSON
python scripts/funnel_analyzer.py funnel_data.json --format json
```
### Cálculo de ROI de Campanha
```bash
# Calcular métricas de ROI para todas as campanhas
python scripts/campaign_roi_calculator.py campaign_data.json
# Saída JSON
python scripts/campaign_roi_calculator.py campaign_data.json --format json
```
---
## Scripts
### 1. attribution_analyzer.py
Implementa cinco modelos de atribuição padrão do setor para alocar crédito de conversão entre canais de marketing:
| Modelo | Descrição | Melhor Para |
|--------|-----------|------------|
| First-Touch | 100% de crédito para a primeira interação | Campanhas de conscientização de marca |
| Last-Touch | 100% de crédito para a última interação | Campanhas de resposta direta |
| Linear | Crédito igual para todos os pontos de contato | Avaliação equilibrada multi-canal |
| Time-Decay | Mais crédito para pontos de contato recentes | Ciclos de vendas curtos |
| Position-Based | Divisão 40/20/40 (primeiro/meio/último) | Marketing de funil completo |
### 2. funnel_analyzer.py
Analisa funis de conversão para identificar gargalos e oportunidades de otimização:
- Taxas de conversão estágio a estágio e porcentagens de abandono
- Identificação automática de gargalos (maiores quedas absolutas e relativas)
- Taxa de conversão geral do funil
- Comparação de segmento quando múltiplos segmentos são fornecidos
### 3. campaign_roi_calculator.py
Calcula métricas abrangentes de ROI com benchmarking do setor:
- **ROI**: Porcentagem de retorno sobre investimento
- **ROAS**: Razão de retorno sobre o gasto em anúncios
- **CPA**: Custo por aquisição
- **CPL**: Custo por lead
- **CAC**: Custo de aquisição de cliente
- **CTR**: Taxa de cliques
- **CVR**: Taxa de conversão (leads para clientes)
- Sinaliza campanhas com desempenho abaixo dos benchmarks do setor
---
## Guias de Referência
| Guia | Local | Propósito |
|------|-------|-----------|
| Guia de Modelos de Atribuição | `references/attribution-models-guide.md` | Mergulho profundo nos 5 modelos com fórmulas, prós/contras, critérios de seleção |
| Benchmarks de Métricas de Campanha | `references/campaign-metricas-benchmarks.md` | Benchmarks do setor por canal e vertical para CTR, CPC, CPM, CPA, ROAS |
| Framework de Otimização de Funil | `references/funil-optimization-framework.md` | Estratégias de otimização estágio por estágio, gargalos comuns, melhores práticas |
---
## Melhores Práticas
1. **Use múltiplos modelos de atribuição** — Compare pelo menos 3 modelos para triangular o valor do canal; nenhum modelo único conta a história completa.
2. **Defina janelas de lookback apropriadas** — Combine sua meia-vida de time-decay com o comprimento médio do seu ciclo de vendas.
3. **Segmente seus funis** — Compare segmentos (canal, coorte, geografia) para identificar drivers de performance.
4. **Avalie o desempenho contra seu próprio histórico primeiro** — Benchmarks do setor fornecem contexto, mas dados históricos são a comparação mais relevante.
5. **Execute análise de ROI em intervalos regulares** — Semanalmente para campanhas ativas, mensalmente para revisão.
6. **Inclua todos os custos** — Considere custos de criativo, ferramentas e mão-de-obra junto com o gasto em mídia para um ROI preciso.
7. **Documente testes A/B rigorosamente** — Use o template fornecido para garantir validade estatística e critérios de decisão claros.
---
## Limitações
- **Sem testes de significância estatística** — Scripts fornecem apenas métricas descritivas; cálculos de valor-p requerem ferramentas externas.
- **Somente biblioteca padrão** — Sem bibliotecas estatísticas avançadas. Adequado para a maioria dos tamanhos de campanha, mas não otimizado para datasets acima de 100K jornadas.
- **Análise offline** — Scripts analisam snapshots JSON estáticos; sem conexões de dados em tempo real ou integrações de API.
- **Moeda única** — Todos os valores monetários assumidos na mesma moeda (BRL por padrão); sem suporte a conversão de moeda.
- **Time-decay simplificado** — Decaimento exponencial baseado em meia-vida configurável; não considera padrões de dia de semana/fim de semana ou sazonais.
- **Sem rastreamento entre dispositivos** — Atribuição opera nos dados de jornada fornecidos como estão; resolução de identidade entre dispositivos deve ser tratada upstream.
## Skills Relacionadas
- **analytics-tracking**: Para configurar rastreamento. NÃO para analisar dados (isso é esta skill).
- **ab-test-setup**: Para projetar experimentos para testar o que o analytics revela.
- **marketing-ops**: Para rotear insights para a skill de execução correta.
- **paid-ads**: Para otimizar o gasto em anúncios com base nas descobertas do analytics.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!