Improving Business · Relatório do Funil
Webinário "From Empty Room to Full Diary" · estado em 08/06/2026

Como o funil do webinário funciona

Este é o mapa da máquina de email que convida leads pro webinário, nutre até a compra, e mantém a lista limpa. Comece no Simples pra entender o todo. Vire pra Detalhado quando quiser o passo a passo técnico e como operar.

16
todos os emails ligados a um workflow: a jornada inteira (welcome, convite, confirmação, nutrição, lembrete, pós, win-back)
0
emails sem disparo. Os 7 lembretes/pós agora saem por pessoa, na hora certa, via fila (outbox)
7
workflows no n8n. Registro e API de config ativos; o resto desligado até go-live
1
config central (ib_config): troca link e data num lugar só, sem mexer em código
Estado: a jornada está completa e montada de ponta a ponta. A página de inscrição está no ar e testada (ib-webinar.pages.dev → registra na terça 16/06 → C0 + enfileira os 7 lembretes/pós com a hora certa de cada um). Falta só ligar os workflows que estão desligados e o upgrade do plano antes de soltar pra base. Hoje só WF-2 (registro) e WF-7 (config) estão ativos, pra não enviar email sem querer.
A história de um lead

A jornada, do primeiro contato ao pós-webinário

Acompanhe uma pessoa passando pela máquina. Há dois jeitos de entrar (veio de um anúncio, ou já estava na sua base antiga). Depois, todo mundo segue o mesmo caminho.

Entrada · caminho A (lead de anúncio)
Preenche um formulário de anúncio e entra no pool
Quem nunca te conheceu recebe uma boas-vindas curta: um email na hora explicando por que isso importa, e outro no dia seguinte com prova (a clínica de Londres que conseguiu 44 pacientes num mês).
Workflow: WF-1 Lead IntakeEmails: A1 (na hora) + A2 (+1 dia, via fila outbox)Estado: no ar
Entrada · caminho B (base antiga)
Já tinha optado in antes, entra direto no pool
Quem já te conhece pula as boas-vindas e cai direto no pool de nutrição, pronto pra receber o próximo convite.
Como: import da base ou WF-1 com source=base_antigaLista: Leads AtivosEstado: no ar
Semana do webinário · convites
Recebe 3 convites ao longo da semana
Na quarta a máquina agenda os convites pra terça seguinte. O lead recebe: I1 (a grande ideia, aquisição previsível), I2 (por que buscar no Google vence o Instagram), e I3 na própria terça ("é hoje, 20h").
Workflow: WF-4 Weekly Scheduler (quarta 06h)Emails: I1, I2, I3 (campanhas)Estado: no ar
Inscrição
Clica, se inscreve, e recebe a confirmação na hora
Ao se inscrever na página, vira "inscrito" e recebe o C0: confirmação, convite pro grupo de WhatsApp (canal principal do link de acesso) e um botão pra colocar no calendário.
Workflow: WF-2 RegistrationEmail: C0 (confirmação)Vira: LIFECYCLE=inscrito, entra em RegistradosEstado: no ar (testado)
Pré-webinário · nutrição e lembretes
Recebe nutrição e lembretes até a hora
N1 (autoridade, "por que eu só trabalho com clínicas"), N2 (visualize sua agenda em 90 dias), e os lembretes R1 (manhã), R2 (1h antes) e R3 (ao vivo agora). O link de acesso vem principalmente pelo WhatsApp.
Emails: N1, N2, R1, R2, R3Estado: no ar (enfileirado na outbox)
Terça, 20h UK
O webinário ao vivo
A apresentação acontece. O link entra pelo grupo de WhatsApp. O valor está no Q&A ao vivo da especialidade e localização de cada um.
Pós-webinário
Recap, replay e a oferta da call
P1 no dia seguinte (recap + replay + oferta da call de auditoria gratuita) e P2 três dias depois (urgência final), pulando quem já agendou a call.
Emails: P1, P2Estado: no ar (enfileirado na outbox)
Depois · o ciclo continua
Não comprou? Volta pro pool. Sumiu? Higiene de lista.
Quem não comprou volta pro pool pra próxima terça. Quem não clica em nada há 21 dias entra num win-back de 3 emails (W1, W2, W3); se ignorar tudo, vira inativo e sai da lista. Quem agenda a call ou compra sai da venda.
Workflows: WF-5 Daily Sweep + WF-6 OutboxEmails: W1, W2, W3Estado: no ar
Visão de cima

O mapa do sistema

São duas camadas: o Brevo guarda os contatos e envia os emails, e o n8n é o cérebro com 6 workflows que decidem o que disparar e quando. Uma tabela (outbox) e webhooks ligam os dois.

Brevo trilho de envio
Guarda os contatos, os 16 templates de email, e faz a entrega. Também avisa o n8n em tempo real quando alguém clica ou descadastra.
Plano: free (300/dia + selo Brevo). Listas: Leads Ativos, Registrados, Clientes, Inativos, Agendaram Call.
WF-1 · Lead Intake
Recebe lead novo (anúncio ou base) e bota no pool. Se veio de anúncio, manda a boas-vindas.
Gatilho: webhook quando um lead chega. Estado: inativo.
WF-2 · Registration
Quando alguém se inscreve no webinário, registra a pessoa e manda a confirmação na hora.
Gatilho: webhook da página de inscrição. Estado: inativo (testado).
WF-3 · Brevo Events
O "ouvido" do sistema. Quando alguém clica, atualiza o engajamento; quando descadastra, tira da lista na hora.
Gatilho: webhook do Brevo (tempo real). Estado: inativo.
WF-4 · Weekly Scheduler
Toda quarta, agenda os 3 convites pra terça seguinte, já com a data certa da semana.
Gatilho: cron, quarta 06h. Estado: inativo.
WF-5 · Daily Sweep
Todo dia faz a faxina: recicla quem não compareceu, e cuida do win-back de quem parou de engajar.
Gatilho: cron, diário 08h. Estado: inativo.
WF-6 · Outbox Dispatcher
De hora em hora, olha a fila de envios agendados e dispara o que já venceu. Substitui o velho "espera 1 dia".
Gatilho: cron, de hora em hora. Estado: inativo.
ib_outbox fila
Uma tabelinha que guarda "manda tal email pra tal pessoa em tal hora". É o que torna os envios atrasados confiáveis.
Colunas: email, fname, template_id, params_json, due_at, status.
Detalhado

Os 6 workflows, por dentro

Cada workflow é uma sequência de nós no n8n. Todos estão inativos agora. Os IDs são pra achar rápido na instância flow-dev.

WF-1 · Lead Intakewebhook · /webhook/ib-lead-intake · id aobvcgtOzmkUFuor
Dispara quando: um lead novo chega (formulário de anúncio, import, qualquer captação).
  1. Recebe os dados (nome, email, origem) e monta o contato.
  2. Cria/atualiza no Brevo: SOURCE, LIFECYCLE=nutrindo, entra em Leads Ativos.
  3. Se veio de anúncio: manda A1 na hora, marca welcome feito, e enfileira o A2 na outbox pra +1 dia.
Toca: Brevo contatos (upsert), template A1, tabela ib_outbox. Quem dispara o A2 depois é o WF-6.
WF-2 · Registrationwebhook · /webhook/ib-register · id THp95b1TMEql71wb
Dispara quando: alguém se inscreve no webinário (pela página de registro).
  1. Calcula a próxima terça (data do webinário).
  2. Marca a pessoa como LIFECYCLE=inscrito, grava WEBINAR_DATE e REG_DATE, entra em Registrados.
  3. Manda o C0 na hora (confirmação + link do grupo WhatsApp + add ao calendário).
Testado de ponta a ponta: POST no webhook fez o contato virar inscrito + entrar em Registrados + o C0 saiu. Execução com sucesso.
WF-3 · Brevo Eventswebhook · /webhook/ib-brevo-events · id ZAwH6dNbuffikvD0
Dispara quando: o Brevo avisa um evento em tempo real (clique, descadastro, bounce, spam).
  1. Clique: atualiza LAST_CLICK pra hoje (é o sinal de engajamento que usamos, não a abertura).
  2. Descadastro / bounce / spam: marca LIFECYCLE=inativo, tira de Leads Ativos e Registrados, bota em Inativos e na blocklist.
Por que clique e não abertura: o Apple Mail infla aberturas (marca como aberto sem a pessoa ver). Clique é intencional, não dá pra forjar.
WF-4 · Weekly Schedulercron quarta 06h · id S55UlIDhioR2p6lP
Dispara quando: toda quarta de manhã, automaticamente.
  1. Calcula a próxima terça e o texto da data.
  2. Pega os convites I1, I2, I3, troca os tokens de data e link.
  3. Agenda as 3 campanhas pro pool (Leads Ativos), excluindo quem já se inscreveu, comprou ou está inativo. Horários: I1 (qua), I2 (dom), I3 (terça).
Toca: Brevo campanhas (cria 3 agendadas por semana). Quem está em Registrados não recebe convite repetido.
WF-5 · Daily Sweepcron diário 08h · id XKvhWWEK1LdNHASD
Dispara quando: todo dia de manhã, automaticamente. Varre todos os contatos e decide ações.
  1. Reciclagem: quem ficou "inscrito" numa terça que já passou (mais de 4 dias) volta pra nutrindo e sai de Registrados.
  2. Win-back: quem está nutrindo e não clica há 21+ dias entra em win-back, recebe o W1 e marca a data de início.
  3. Progressão: em win-back, manda W2 (2 dias depois) e W3 (4 dias depois). Se clicar nesse meio, é resgatado de volta pra nutrindo.
  4. Inativação: se passou ~6 dias em win-back sem clicar, vira inativo, sai do pool e vai pra blocklist.
Toca: Brevo contatos (atualiza atributos/listas) e templates W1/W2/W3. É a peça que protege sua entregabilidade.
WF-6 · Outbox Dispatchercron de hora em hora · id kRGkZEE5GAyLOM6K
Dispara quando: de hora em hora, automaticamente.
  1. Lê a tabela ib_outbox e pega as linhas pendentes que já venceram (due_at no passado).
  2. Monta e dispara o email transacional (templateId + params da linha).
  3. Marca a linha como enviada.
Por que existe: substitui o node "Wait" (que era frágil e podia travar o n8n). Mesmo padrão poller do seu sistema b2b-cadence. Serve pra qualquer envio atrasado: hoje o A2, e vai servir pros lembretes/pós quando conectarmos.
Detalhado

Os 16 emails

Todos já existem como template no Brevo (ids 3 a 18), em British English, sem travessão, com remetente "Improving Business". As linhas em âmbar ainda não têm workflow disparando.

Cód.PapelQuando saiPor qual WFSintaxeStatus
A1Boas-vindas ads (por que importa)Na hora do lead de adsWF-1transacionalno ar
A2Boas-vindas ads (prova)+1 dia (via outbox)WF-1 → WF-6transacionalno ar
C0Confirmação de inscriçãoNa hora da inscriçãoWF-2transacionalno ar
I1Convite (aquisição previsível)QuartaWF-4campanhano ar
I2Convite (search vs social)DomingoWF-4campanhano ar
I3Convite (é hoje)TerçaWF-4campanhano ar
N1Nutrição (autoridade)~2 dias antesWF-2 → WF-6transacionalno ar
N2Nutrição (future-pace)~1 dia antesWF-2 → WF-6transacionalno ar
R1Lembrete (é hoje, manhã)Terça manhãWF-2 → WF-6transacionalno ar
R2Lembrete (1h antes)Terça 19hWF-2 → WF-6transacionalno ar
R3Lembrete (ao vivo agora)Terça 20hWF-2 → WF-6transacionalno ar
P1Pós (recap + replay + oferta)Dia +1WF-2 → WF-6transacionalno ar
P2Pós (urgência final)Dia +3WF-2 → WF-6transacionalno ar
W1Win-back (ainda quer?)Sem clique há 21dWF-5 → WF-6transacionalno ar
W2Win-back (o que perde)+2 diasWF-5 → WF-6transacionalno ar
W3Win-back (último email)+4 diasWF-5 → WF-6transacionalno ar
Os lembretes e o pós (N/R/P) agora são transacionais por pessoa: na hora que alguém se inscreve, o WF-2 enfileira os 7 na outbox com a data de cada um calculada a partir do webinar daquela pessoa, e o WF-6 (a cada 15 min) dispara quando vence. Isso evita a colisão de coortes que uma campanha broadcast teria. Os convites legados E1-E6 foram consolidados em I1-I3 e arquivados.
Detalhado

O modelo de dados

O coração é o atributo LIFECYCLE de cada contato. Ele diz em que estágio a pessoa está, e os workflows agem com base nele.

novo nutrindo inscrito winback inativo ou cliente
Listas
Leads Ativos (11): o pool, todo mundo que recebe email.
Registrados (5): inscritos na próxima terça.
Clientes (12) e Inativos (13): não recebem venda.
Agendaram Call (8): tira do P2.
Atributos
FNAME, SOURCE (ads/base_antiga), LIFECYCLE, WEBINAR_DATE, REG_DATE, LAST_CLICK (gatilho do win-back), WELCOME_DONE, WINBACK_START.
ib_outbox + webhooks
Outbox: fila de envios atrasados (email, template_id, due_at, status).
Webhooks: 2 registrados no Brevo (marketing + transacional) apontando pro WF-3.
Detalhado · manual do operador

Como operar

O guia prático pra quem vai ligar e cuidar da máquina no dia a dia (n8n flow-dev + painel Brevo).

Ligar / desligar
No n8n, abra o workflow e use o botão Active no topo. Comece pelo WF-3 (seguro, só rastreia), depois WF-1/WF-2, e por último os crons WF-4/WF-5/WF-6.
Trocar links e datas
Os 6 placeholders (REG_LINK, WHATSAPP_LINK, ROOM_LINK, BOOK_LINK, REPLAY_LINK, STAY_LINK) ficam num bloco CONFIG dentro do nó de código de cada workflow. Edite ali e salve.
Acompanhar e debugar
No n8n, aba Executions de cada workflow mostra sucesso/erro de cada disparo. No Brevo, Statistics mostra entregas, aberturas e cliques.
Dry-run e base
Teste sempre com o contato lucasilvano1@gmail.com antes de soltar pra base. A base de 132 leads fica no CSV e é reimportável quando for go-live.
A revisão

O que falta pra ficar de pé

O que está pendente e em que ordem resolver. Nada disso está ligado ainda, então não há risco de envio errado.

feito
Lembretes + pós (N1, N2, R1, R2, R3, P1, P2): conectados
Viraram transacional por pessoa. No registro, o WF-2 enfileira os 7 na outbox com a data de cada um (testado: um registro gerou as 7 linhas certas), e o WF-6 dispara a cada 15 min. Resolve a colisão de coortes de raiz.
alta
Plano Brevo é free (300/dia + selo)
Serve pra teste. Pra soltar pra base e tirar o selo "enviado com Brevo", precisa subir pra um plano pago antes do volume real.
feito
Página de inscrição: no ar e testada
Construída com o tema do sshaukat.co.uk em ib-webinar.pages.dev. Testada de ponta a ponta: formulário → WF-2 → contato vira inscrito (16/06) → C0 enviado. Opcional depois: apontar um domínio próprio.
baixa
Placeholders de links: 5 de 6 preenchidos
Já no ar: inscrição (REG_LINK), grupo WhatsApp, sala do Meet, agendamento cal.com, win-back. Falta só REPLAY_LINK (página do replay).
média
Dry-run completo da jornada pendente
A inscrição (LP → WF-2 → C0) já foi validada no browser. Falta rodar o resto da jornada (convite, lembrete, pós) com o contato de teste.
feito
Data fixada em 16/06
Override aplicado: quem se inscreve agora cai na terça 16/06. Depois do evento, é só limpar o override que volta a rolar pra próxima terça sozinho.
Checklist de go-live

A ordem pra colocar no ar

1
Conectar os lembretes + pós (N/R/P) (feito)
Transacional por pessoa via outbox. Testado: registro enfileira os 7 com as datas certas.
2
Passar os links reais (parcial)
Feito: WhatsApp, Meet e cal.com já no CONFIG. Falta: página de inscrição (REG_LINK), replay e o alvo do win-back (STAY_LINK).
3
Construir e hospedar a página de inscrição (feito)
No ar e testada: ib-webinar.pages.dev. Form → WF-2 → C0 validado no browser.
4
Dry-run completo com o contato de teste
Validar a jornada inteira antes de tocar na base.
5
Upgrade do plano Brevo + reimportar a base
Tirar o selo, liberar volume, recolocar os 132 leads do CSV.
6
Ativar os workflows na ordem segura
WF-3 → WF-1/WF-2 → WF-4/WF-5/WF-6. Ligar os anúncios apontando pra página.
Relatório gerado em 08/06/2026 · estado verificado via API · Improving Business