cerebro-vip INEMA.CLUB
inícioINEMA.N8N

Apresentação e documentação completa do workflow n8n "Data…

INEMA.N8N · 2025-08-10 · ~12 min · ver no Telegram ↗

INEMA

ecutivo em até 6 bullets e depois uma análise detalhada estruturada por seções. Responda em português claro, com listas e subtítulos, sem inventar dados.

Mensagem do usuário (exemplo)

Dados: - rows: {{ $json.rows }} - summary: {{ $json.summary }} - totalKPIs: {{ $json.totalKPIs }}

Contexto: - Meta de CPA alvo: R$ 35,00 - Meta de ROI: 3.0 no mês Gere um relatório semanal estruturado.


10) Google Docs

  • Create: título “Relatório de Campanha – {{ \$json.periodLabel }}”
  • Append: insira o texto gerado pela IA. Se quiser formatação, use Append com segmentação em parágrafos e headings.

11) Envio por e-mail

Gmail node

  • To: stakeholders
  • Subject: Relatório de Campanhas – {{ \$json.periodLabel }}
  • Body: link do Google Doc + principais destaques.
  • Attachments: opcional, exporte o Doc em PDF antes (Google Docs → Export) e anexe.

12) Erros e boas práticas

  • Error Trigger global → envia alerta no Slack/Telegram com stack do erro.
  • IF para checar se Facebook retornou empty; se sim, siga apenas com Sheets e sinalize no relatório.
  • Rate limit: em contas grandes, use paginação e agregue resultados.
  • Logs: salve JSON consolidado no Drive/S3 para auditoria.
  • Validação: se algum KPI for infinito/NaN, converta para 0 antes de mandar à IA.

13) Teste rápido

  1. Rode por uma janela de datas pequena (ex.: últimos 3 dias)
  2. Confira no nó KPIs se números batem com o Ads Manager e com a planilha
  3. Gere o Doc e valide texto, métricas e recomendações
  4. Ajuste prompt e thresholds de anomalia conforme o negócio

14) Variações por indústria

  • E-commerce: priorize CPR, ROAS, ticket médio e LTV.
  • SaaS: priorize CAC por estágio, trials→paid e churn.
  • Serviços: CPL por canal, taxa de agendamento→comparecimento→fechamento.
  • Mídia/assinaturas: CTR, sign-ups, paywall conversion, ARPU.

15) Hacks

  • Dois relatórios com um fluxo: adicione dois nós OpenAI com prompts distintos (executivo e tático) e junte em um único Doc.
  • Benchmarks: guarde metas por campanha no Sheets e injete no prompt para comparações automáticas.
  • Priorização de ações: peça à IA para devolver uma tabela breve Ação | Impacto | Esforço | Prioridade.
  • A/B guidance: inclua no prompt uma checagem de criativos com CTR abaixo do p25 e CPC acima do p75.
  • Auto-reparo: se faltar campaign_id no Sheets, mapeie por campaign_name com uma tabela de equivalências.

Tópicos com exemplos e respostas

Entradas necessárias Exemplo: Facebook token com ads_read, ID da conta 123456, planilha com campaign_id e datas, credenciais Google configuradas. Resposta: sim, sem isso o fluxo não acessa os dados.

Como calcular CPC, CPL, CPR, CTR Exemplo: spend=1000, clicks=500, leads=50, purchases=20, impressions=50.000 Resposta: CPC=2,00; CPL=20,00; CPR=50,00; CTR=1,0%

Como detectar anomalias simples Exemplo: CTR da campanha X caiu 60% vs média das 4 semanas. Resposta: marque como outlier e recomende revisar criativos/segmentação.

Prompt mínimo para IA Exemplo no item 9. Resposta: mantenha temperatura baixa e forneça metas do negócio.

E se não uso Facebook? Exemplo: Google Ads, TikTok Ads. Resposta: replique o nó HTTP com as APIs respectivas e normalize métricas para o mesmo esquema.

Planilha modelo Exemplo de colunas em “Lead Campaign Pipeline”. Resposta: mantenha campaign_id e date; resto é flexível.

Entrega do relatório Exemplo: criar Doc, anexar PDF, enviar por Gmail. Resposta: inclua o link e 5 bullets no corpo do e-mail.

Escalonar para vários clientes Exemplo: múltiplas credenciais + parâmetro client_id no início do fluxo. Resposta: rode em paralelo por cliente e gere um Doc por cliente.

Se a IA errar número Exemplo: divergência de R\$ 0,01 a R\$ 0,05. Resposta: gere números no Function e peça à IA só texto e recomendações.

Se faltar campaign_id no Sheets Exemplo: apenas campaign_name. Resposta: crie tabela de mapeamento para id; como fallback, mescle por nome.

Pronto. Se quiser, te envio um esqueleto JSON do fluxo para importar no n8n já com esses nós e expressões.

para calcular e consolidar cada linha e também produzir um objeto agregado por campanha e geral.

Fórmulas

  • CPC = spend / clicks
  • CPL = spend / leads
  • CPR = spend / purchases
  • CTR% = (clicks / impressions) * 100
  • Conversão funil 1→2 = leads_stage_2 / leads_stage_1
  • Conversão final = leads_final / leads_stage_1

Exemplo de código (Function: KPIs)

```function safeDiv(a,b){ return b>0 ? a/b : 0; }

const grouped = {}; const out = items.map(i => { const r = i.json;

const cpc = safeDiv(r.spend, r.clicks); const cpl = safeDiv(r.spend, r.leads); const cpr = safeDiv(r.spend, r.purchases); // Sheets campos: const s1 = Number(r.leads_stage_1 || 0); const s2 = Number(r.leads_stage_2 || 0); const sf = Number(r.leads_final || 0); const conv12 = safeDiv(s2, s1); const convFinal = safeDiv(sf, s1);

const row = { date: r.date, campaign_id: r.campaign_id, campaign_name: r.campaign_name, impressions: Number(r.impressions || 0), clicks: Number(r.clicks || 0), spend: Number(r.spend || 0), leads: Number(r.leads || 0), purchases: Number(r.purchases || 0), ctr: Number(r.ctr || 0), budget_allocated: Number(r.budget_allocated || 0), leads_stage_1: s1, leads_stage_2: s2, leads_final: sf, kpi: { cpc, cpl, cpr, conv12, convFinal } };

const key = r.campaign_id || r.campaign_name || 'unknown'; if(!grouped[key]){ grouped[key] = { campaign_id: r.campaign_id, campaign_name: r.campaign_name, impressions:0, clicks:0, spend:0, leads:0, purchases:0, s1:0, s2:0, sf:0 }; } grouped[key].impressions += row.impressions; grouped[key].clicks += row.clicks; grouped[key].spend += row.spend; grouped[key].leads += row.leads; grouped[key].purchases += row.purchases; grouped[key].s1 += s1; grouped[key].s2 += s2; grouped[key].sf += sf;

return { json: row }; });

// cria resumo por campanha e geral const summary = Object.values(grouped).map(g => ({ campaign_id: g.campaign_id, campaign_name: g.campaign_name, impressions: g.impressions, clicks: g.clicks, spend: g.spend, leads: g.leads, purchases: g.purchases, ctr: safeDiv(g.clicks, g.impressions) * 100, cpc: safeDiv(g.spend, g.clicks), cpl: safeDiv(g.spend, g.leads), cpr: safeDiv(g.spend, g.purchases), conv12: safeDiv(g.s2, g.s1), convFinal: safeDiv(g.sf, g.s1) }));

const total = summary.reduce((t,g)=>({ impressions: t.impressions + g.impressions, clicks: t.clicks + g.clicks, spend: t.spend + g.spend, leads: t.leads + g.leads, purchases: t.purchases + g.purchases }), {impressions:0,clicks:0,spend:0,leads:0,purchases:0});

const totalKPIs = { ctr: safeDiv(total.clicks, total.impressions) * 100, cpc: safeDiv(total.spend, total.clicks), cpl: safeDiv(total.spend, total.leads), cpr: safeDiv(total.spend, total.purchases) };

return [ { json: { rows: items.map(i=>i.json) } }, // saída 1: linhas detalhadas { json: { summary } }, // saída 2: resumo por campanha { json: { total: total, totalKPIs } } // saída 3: totais gerais ];```

Configure este Function como Multiple Outputs = 3 para usar nos próximos nós.

9) Análise com IA (OpenAI Chat)

Entrada: agregue rows, summary e totalKPIs em um único JSON e passe como mensagem do usuário. Modelo: o3 (ou equivalente disponível no seu n8n). Temperatura: 0.2 a 0.4. Máx. tokens: suficiente para gerar 800–1200 palavras.

Prompt de sistema sugerido


Você é um analista de performance de mídia. Receberá dados consolidados de campanhas (linhas diárias, resumo por campanha e totais). Tarefas: 1) Calcule e confira KPIs: CPC, CPL, CPR, CTR, conversões de funil (1→2 e final), variações semanais/mensais quando disponíveis. 2) Destaque top 3 campanhas e bottom 3 por ROAS aproximado ou custo por compra, justificando com números. 3) Detecte anomalias (picos/quedas atípicas) e possíveis causas. 4) Recomende ações objetivas e priorizadas (ex.: aumentar budget em X%, pausar criativo Y, testar segmentação Z). 5) Gere um sumário ex

Aqui vai um passo a passo direto para implementar o Data Integration and Transformation Hub no n8n, com exemplos práticos, fórmulas e prompt prontos.

Visão geral do fluxo

  1. Disparador de agenda
  2. Coleta de dados do Facebook Ads
  3. Coleta de dados do Google Sheets (pipeline de leads)
  4. Normalização e mesclagem por campanha e data
  5. Cálculo de KPIs
  6. Análise com IA e geração do relatório
  7. Criação do Google Doc
  8. Envio por e-mail e logs
  9. Erros, testes e variações

1) Pré-requisitos e conexões

  • Facebook Ads: um token com acesso à conta de anúncios e permissões ads_read.
  • Google Sheets/Docs/Gmail: credenciais OAuth no n8n com escopos para leitura de planilhas, criação/edição de Docs e envio por Gmail.
  • n8n: versão recente; credenciais configuradas para Facebook (HTTP) e Google (nós nativos).
  • Identificador comum: garanta que campanha no Sheets tenha campaign_id igual ao do Facebook Ads, ou mapeie nomes de campanha consistentemente.

Exemplo de planilha Lead Campaign Pipeline (aba: Lead Campaign Pipeline) A: date (YYYY-MM-DD) B: campaign_id C: campaign_name D: budget_allocated E: leads_stage_1 F: leads_stage_2 G: leads_final H: notes

2) Estrutura dos nós no n8n

  • Cron → dispara mensal e/ou semanal
  • Google Sheets (Read) → lê a aba Lead Campaign Pipeline
  • HTTP Request → Facebook Graph API insights
  • Function (Normalize Actions) → extrai leads/purchases dos arrays do Facebook
  • Merge (By key) → junta Sheets e Facebook por campaign_id + date
  • Function (KPIs) → calcula CPC, CPL, CPR, CTR, taxas de funil
  • OpenAI Chat (Análise IA) → gera o texto do relatório
  • Google Docs (Create) → cria “Campaign Report for {Month}”
  • Google Docs (Append) → insere o conteúdo
  • Gmail (Send) → envia o relatório
  • Optional: Slack/Telegram notify, Google Drive (salvar JSON), IF + Error Trigger

3) Cron

  • Mensal: RRULE FREQ=MONTHLY;BYHOUR=8;BYMINUTE=0
  • Semanal: FREQ=WEEKLY;BYDAY=MO;BYHOUR=8;BYMINUTE=0

4) Google Sheets (Read)

  • Operation: Read
  • Range: Lead Campaign Pipeline!A\:H
  • Return All: true
  • Dica: ative Value Render Mode = UNFORMATTED_VALUE para evitar strings em números.

5) Facebook Ads via HTTP Request

Método: GET URL base: https://graph.facebook.com/v18.0/act_{AD_ACCOUNT_ID}/insights Query params típicos:

  • fields=campaign_id,campaign_name,date_start,date_stop,impressions,clicks,spend,actions,action_values,inline_link_clicks,reach,ctr
  • time_increment=1
  • time_range={"since":"{{ \$json.startDate }}","until":"{{ \$json.endDate }}"}
  • level=campaign

Observações

  • actions é um array com objetos type/value. Ex.: type=lead, type=offsite_conversion.purchase.
  • Para período mensal, use o primeiro ao último dia do mês anterior. Para semanal, a última semana.

6) Normalização das ações do Facebook

Use um Function node para transformar actions em colunas simples.

Exemplo de código (Function: Normalize Actions)

```return items.map(item => { const r = item.json; const actions = Array.isArray(r.actions) ? r.actions : []; const getVal = (t) => { const f = actions.find(a => a.action_type === t || a.type === t); return f ? Number(f.value || f.action_value || 0) : 0; }; const leads = getVal('lead'); const purchases = getVal('offsite_conversion.purchase') || getVal('purchase'); const clicks = Number(r.clicks || r.inline_link_clicks || 0); const spend = Number(r.spend || 0); const impressions = Number(r.impressions || 0); const ctr = impressions > 0 ? (clicks / impressions) * 100 : 0;

return { json: { date: r.date_start, campaign_id: r.campaign_id, campaign_name: r.campaign_name, impressions, clicks, spend, ctr, leads, purchases } }; });```

7) Mesclagem Sheets + Facebook

Use um Merge node:

  • Mode: Merge by fields
  • Field 1: campaign_id
  • Field 2: date

Se o Sheets não tem date diário, faça o alinhamento por campanha e agregue por mês/semana antes de mesclar.

8) KPIs e taxas de funil

Function node (KPIs) para

Resumo

O Data Integration and Transformation Hub é um fluxo de trabalho pronto para uso que integra várias fontes de dados do negócio (como campanhas no Facebook/Instagram Ads, planilhas no Google Sheets ou Airtable e CRM de leads), unifica essas informações e as envia para uma IA (modelo o3) para análise e geração de relatórios.

Ele permite criar relatórios semanais ou mensais com:

  • Principais métricas (CPC, CPL, CTR, conversão de funil, custo por compra)
  • Análises de desempenho das campanhas
  • Detecção de pontos fracos e sugestões de otimização (ex.: aumentar orçamento de retargeting, revisar campanhas com baixa performance)

Vantagens:

  • Automatiza a coleta e unificação de dados de múltiplas plataformas
  • Elimina erros manuais em cálculos
  • Gera insights rápidos e acionáveis para melhorar ROI
  • Funciona como um “assistente de IA” que conhece profundamente os dados do negócio e sugere ações estratégicas personalizadas

Hub de Integração e Transformação de Dados

Gatilho de Agendamento Mensal: inicia automaticamente o fluxo de trabalho em um intervalo mensal.

Coleta de Dados de Anúncios do Facebook: chama a API Facebook Graph para obter insights diários de campanhas (gastos, impressões, cliques, leads, compras).

Coleta de Dados do Funil de Leads: lê uma planilha do Google Sheets chamada “Lead Campaign Pipeline” com alocações de orçamento, métricas por estágio do funil e anotações manuais.

Agregação e Mesclagem de Dados: agrega as linhas da planilha em um único array JSON dentro de lead e mescla com o fluxo de dados do Facebook, produzindo um conjunto de dados unificado.

Análise e Geração de Relatório com IA: envia os dados combinados para um “Agente de IA” do LangChain (usando o modelo o3) com um prompt de sistema personalizado para calcular KPIs (CPC, CPL, CPR), CTR, taxas de conversão do funil, detecção de anomalias e recomendações de otimização — depois formata um resumo semanal claro e estruturado.

Criação e Preenchimento Automático de Documento Google: cria um Google Doc intitulado “Relatório de Campanha para {Mês}” e insere nele o conteúdo gerado pela IA, pronto para revisão pelas partes interessadas.

Caso de Negócio / Uso As equipes modernas de marketing gastam horas toda semana coletando manualmente métricas de anúncios, reconciliando-as com planilhas internas de acompanhamento de leads e criando resumos de desempenho. Este “Hub de Integração e Transformação de Dados” agiliza todo o processo:

Relatórios Automatizados

  • Elimina exportações manuais de dados do Facebook Ads e planilhas internas.
  • Garante consistência e elimina erros humanos nos cálculos de KPI.

Insights Acionáveis Rápidos

  • Análise com IA destaca campanhas com desempenho acima ou abaixo da média, identifica anomalias e recomenda ajustes de orçamento em segundos.
  • Geração instantânea de Google Doc acelera revisões e aprovações.

Escalável e Repetível

  • Uma vez configurado, o fluxo se adapta para vários clientes ou unidades de negócios com configuração mínima.
  • Libera analistas para focarem na estratégia em vez de manipular dados.

Pitch Ideal: vender esta integração gerenciada para agências de marketing digital ou equipes internas de marketing como um módulo de “Relatórios de Desempenho como Serviço” — com configuração, prompts de modelo e monitoramento prontos — permitindo que eles integrem novos clientes ou campanhas em dias, em vez de semanas, garantindo insights semanais sem esforço.

Indústrias que Mais se Beneficiam

  • Marketing Digital e Agências de Anúncios: automatizam entregas de relatórios e dashboards de KPIs.
  • Marcas de E-Commerce e Varejo: alinham gastos com anúncios aos funis de leads e vendas em várias plataformas.
  • Empresas de SaaS e Tecnologia: relatórios regulares sobre cadastros de teste, demonstrações e conversões pagas.
  • Empresas de Serviços Profissionais (Consultoria, Finanças): combinam alcance de marketing com dados do funil de leads para relatórios executivos.
  • Mídia e Publicações: correlacionam compras de anúncios com assinaturas ou métricas de leads baseadas em conteúdo.

Cada um desses setores depende de relatórios de desempenho precisos e oportunos — tornando essa solução pronta para uso um argumento convincente para qualquer organização que queira escalar sua análise de marketing sem aumentar a equipe.

Recursos Data Integ. & Trans. Hub.json

m27 - Data Integration and Transformation Hub

chatgpt.com ↗

1

Recursos

↑ voltar ao topo · ver no Telegram ↗