Skip to content
LeadSheet para Google Sheets

MANTENHA A
ATRIBUICAO DO
LEAD NA PLANILHA

MANTENHA A
ATRIBUICAO DO
LEAD NA PLANILHA

O LeadSheet transforma qualquer planilha do Google em um CRM que captura UTMs, GCLIDs, FBCLIDs e dados de sessao de cada lead — e envia conversoes offline para o Google Ads automaticamente quando um negocio fecha.

  • Google Sheets nativo
  • Sem assinatura SaaS
  • Conversoes offline Google Ads
  • Configuracao em 10 minutos
  • Ingestao server-side opcional
Visao do pipeline CRM do LeadSheet no Google Sheets

Um script, quatro frentes operacionais

  • Capture atribuicao first-touch e last-touch antes do lead chegar a planilha.

  • Sincronize todos os eventos para uma visao de pipeline CRM estruturada a cada 15 minutos.

  • Envie sinais de conversao para o Google Ads automaticamente quando um negocio fecha.

  • Importe leads historicos e arquive os frios sem perder dados.

Aba CRM do LeadSheet mostrando colunas de pipeline e atribuicao

47 colunas de dados de atribuicao capturados por lead — UTMs, GCLIDs, dispositivo, caminho de pagina e hashes sha256 de identidade.

Por que os dados do CRM perdem valor

ATRIBUICAO
QUEBRA APOS
O FORMULARIO

A atribuicao normalmente quebra depois do formulario, nao na plataforma de anuncios. O LeadSheet foi construido para o ponto onde o Google Sheets realmente precisa da trilha de origem: o momento em que um lead envia um formulario, liga ou aparece — e o momento em que converte, semanas ou meses depois.

Feito para
condicoes
reais

  • Envios de formulario chegam sem UTMs porque a pagina estava em cache antes do clique.

  • Leads presenciais e por telefone nao tem atribuicao digital — precisam de um caminho de entrada manual.

  • A mesma pessoa envia multiplos formularios em sessoes diferentes — duplicatas poluem o pipeline.

  • Operadores sobreescrevem dados de origem por acidente — a atribuicao some antes do fechamento.

  • O Google Ads precisa de um sinal de conversao 90 dias apos o clique — os dados do CRM devem persistir por esse tempo.

Precisa da referencia de schema, guia de configuracao e docs primeiro?

Abrir a documentacaoVer codigo no GitHub
Capacidades centrais

CAPTURA, SYNC,
PIPELINE E
EXPORTACAO

O LeadSheet e organizado pelas frentes que os operadores realmente usam: captura de eventos, pipeline CRM, exportacao para Google Ads e importacao historica. Cada frente pode ser adotada em fases.

Aba Raw

Cada evento de lead escreve uma linha na aba Raw. Linhas nunca sao modificadas ou apagadas. 47 colunas capturam timestamps, UTMs, GCLID, fbclid, dispositivo, caminho da pagina, dados de contato e hashes sha256 para resolucao de identidade.

Aba CRM

30 colunas organizadas em quatro grupos: dados do sistema (bloqueados), identidade (editavel), atribuicao de rastreamento (bloqueada) e pipeline do operador (editavel). Operadores trabalham nas colunas verdes — etapa, valor, responsavel, data de follow-up, notas.

Exportacao Google Ads

Quando um operador move um lead para a etapa de conversao, um trigger onEdit escreve uma linha na ExportQueue. Um queue_id composto previne uploads duplicados. O worker Python le a ExportQueue e chama a API de conversao offline.

Dashboard

Quatro cards de KPI (leads ativos, clientes, follow-ups hoje, leads esta semana), um grafico de funil de pipeline, um grafico de pizza por origem e uma lista de follow-ups de hoje que se atualiza automaticamente com o CRM.

Importacao e arquivo

Cole dados de leads historicos na aba Import e execute importHistoricalLeads(). Deduplicacao por telefone e e-mail previne colisoes com dados ativos. Leads frios vao para CRM_Arquivo no primeiro dia de cada mes.

Analista revisando dados de atribuicao de leads e pipeline CRM
Onde a atribuicao quebra na pratica

FALHAS DE FLUXO
SAO CONDICOES
NORMAIS DE VENDAS

Formularios em cache, leads presenciais, envios repetidos e operadores editando dados de origem nao sao casos extremos — sao condicoes cotidianas em um pipeline de vendas real. O LeadSheet trata esses pontos como problemas de implementacao de primeira classe, nao como contornos.

Aba ExportQueue do LeadSheet mostrando conversoes pendentes para o Google Ads
  • Captura e resolucao de identidade ficam separadas da edicao do pipeline.

  • CRM e exportacao para Google Ads podem ser adotados antes da ingestao server-side.

  • Google Form manual para presenciais funciona desde o dia um.

  • Colunas de atribuicao sao bloqueadas — operadores nao podem sobreescreve-las.

Sequencia recomendada de rollout

  • Execute setupCrmSheet() e cole os scripts. Leva 10 minutos.

  • Adicione a aba Raw ao seu handler de formulario existente — so um POST em JSON.

  • Use o Google Form manual para leads presenciais e por telefone desde o dia um.

  • Conecte o worker Python somente quando tiver conversoes suficientes para justificar.

Essa sequencia deixa o LeadSheet operacional no dia um e abre espaco para a stack completa de atribuicao e exportacao depois.

Prova operacional

TELAS DA PLANILHA
ALINHADAS AO
FLUXO DE VENDAS

Dashboard do LeadSheet com cards de KPI e grafico de funil de pipeline

Dashboard

  • Visao geral de KPIs

Veja leads ativos, clientes e follow-ups de hoje de um so lugar

A aba Dashboard mantem quatro cards de KPI ao vivo e um funil de pipeline visivel onde o time ja trabalha — dentro da planilha, nao em uma ferramenta de relatorio separada.

Aba CRM do LeadSheet mostrando colunas de pipeline e dados de atribuicao

Aba CRM

  • Gestao do pipeline

Gerencie o pipeline de vendas completo com atribuicao bloqueada e colunas editaveis

Operadores trabalham nas colunas verdes — etapa, valor, responsavel, data de follow-up, notas. Colunas de sistema e rastreamento sao protegidas para que a atribuicao nao seja sobreescrita por acidente.

Aba ExportQueue do LeadSheet com linhas de conversao pendentes

ExportQueue

  • Conversoes offline Google Ads

Envie sinais de conversao para o Google Ads automaticamente quando um negocio fecha

Quando um operador move um lead para a etapa de conversao, um trigger onEdit cria um queue_id composto e adiciona uma linha a ExportQueue. Sem uploads manuais de CSV.

Aba Raw do LeadSheet mostrando o ledger de eventos com 47 colunas

Aba Raw

  • Ledger de eventos

Cada evento de lead escreve uma linha append-only — a fonte de verdade de todos os dados do CRM

A aba Raw e um ledger append-only. Linhas nunca sao modificadas ou apagadas. Se o CRM ficar fora de sincronia, voce o reconstroi a partir do Raw.

FAQ tecnica

PERGUNTAS PARA FECHAR
ANTES DE
INSTALAR

O LeadSheet foi desenhado para adocao em fases. O time pode comecar com captura de leads e sincronizacao CRM, depois adicionar a exportacao para Google Ads, importacao historica ou ingestao server-side quando o modelo operacional estiver pronto.

  • Funciona sem o worker Python no dia um.

  • Suporta envios de formulario, presenciais e leads por telefone desde o inicio.

  • Mantém decisoes de atribuicao, pipeline e exportacao dentro de uma unica planilha.

Construido para rollout em fases — de captura de leads para sync CRM e exportacao Google Ads — sem configuracao completa de uma vez.

Sim. Captura de leads, sync CRM, gestao do pipeline e o Dashboard funcionam sem o worker Python. Linhas da ExportQueue vao acumulando como pendentes e podem ser exportadas manualmente ou conectadas ao worker depois.

O segundo envio gera uma nova linha na aba Raw. No proximo sync, resolveLeadIdFromRawRow() deriva o mesmo lead_id a partir do mesmo hash de telefone ou e-mail. findCrmRowByLeadId() encontra a linha existente no CRM e atualiza apenas colunas de sistema. Colunas do operador nunca sao tocadas.

Sim. Rotulos de etapa, nomes de responsavel e motivos de perda sao todos definidos pela aba CONFIG. Mudar um rotulo significa atualizar o CONFIG — sem alteracoes de codigo, sem deploy. A etapa de gatilho de conversao no CONFIG deve corresponder exatamente ao que os operadores selecionam no dropdown.

O worker Python escreve o erro em export_error na ExportQueue e incrementa export_attempts. O motivo mais comum e que o GCLID tem mais de 90 dias. Conversoes devem ser enviadas dentro da janela de atribuicao do Google Ads.

Nao. O LeadSheet cuida do lado de lead-ops: captura de eventos de formulario e contato, gestao do pipeline de vendas e upload de conversoes offline para o Google Ads. Ele foi projetado para funcionar junto com GA4, GTM e server-side GTM — nao para substituir.

INSTALE O LEADSHEET
E FECHE O GAP
DE ATRIBUICAO