g/
← trabalhos

Captação e dados

Cada torcedor na agência certa

Roteando leads por região e medindo a conversão de cada parceiro da rede.

Nação em MovimentoEm produçãoexit 0jul 2026Arquiteto e desenvolvedor único
Next.js 16React 19Tailwind v4Google Sheets API

o problema

Uma rede de agências de turismo esportivo precisava mandar cada torcedor para a agência certa — e saber qual agência converteu.

Como a operação funcionava antes

  • O torcedor que queria um pacote para ver o time fora não sabia qual agência da rede procurar — caía em qualquer contato e às vezes em nenhum.
  • Cada agência divulgava por conta própria, mas não tinha como saber quantos contatos aquela divulgação gerou.
  • O encaminhamento do interessado até a agência certa era manual, e o dado de conversão se perdia no meio do caminho.
  • Cadastrar uma agência nova significava mexer no site — ou seja, depender de um desenvolvedor para cada mudança.

As três decisões difíceis

Cada uma tinha um caminho óbvio. Em todas eu segui o outro — e em todas isso custou alguma coisa.

01

A planilha vira o painel de controle

o caminho óbvio
Um CMS headless, ou um painel administrativo feito sob medida.
o que eu fiz
O Google Sheets virou a fonte de dados do site, lido a cada 5 minutos por revalidação incremental. Cadastrar agência é preencher uma linha.
por quê
O cliente já vivia na planilha. Cadastrar ali e ver o site atualizar sozinho, sem deploy, sem painel para manter e sem mensalidade de CMS, significou zero treinamento e zero custo recorrente.
o que custou
Não há validação forte de schema na entrada nem histórico de alteração. Aceitável nesta escala; vira problema com dezenas de editores.

02

Uma landing page que é várias

o caminho óbvio
Uma página, um WhatsApp central, e alguém distribui os leads depois.
o que eu fiz
Uma rota por agência (/a/slug): a página perde a busca, a agência já vem fixada e todos os botões de contato vão direto para ela. Cada evento é gravado com o identificador da agência.
por quê
Roteamento por CEP resolve o torcedor que chega frio. O link por agência resolve o parceiro que quer divulgar e saber quanto aquilo converteu. São dois públicos, não um.
o que custou
Duas variantes da mesma página para manter em sincronia.

03

A restrição de marca como requisito de engenharia

o caminho óbvio
Usar o escudo, escrever “oficial”, deixar bonito.
o que eu fiz
Implementei o Manual de Marca do parceiro como regra do projeto — sem o monograma, sem a palavra “oficial”, comunicação sempre como pacote. Os arquivos reprovados foram isolados numa pasta à parte.
por quê
O risco jurídico do cliente é problema de engenharia. Deixar um material proibido no repositório é deixar uma bomba para o próximo desenvolvedor.
o que custou
Menos liberdade visual e uma pasta de arquivos mortos que precisa de explicação para quem chega depois.

o pulo do gato

O site que o próprio cliente atualiza, sem me chamar

As agências vêm de uma aba da planilha do Google. A página é estática — rápida e barata de servir — mas se revalida a cada 5 minutos: o cliente edita a linha e a mudança aparece sozinha, sem novo deploy.

// app/a/[slug]/page.tsx
export const revalidate = 300; // 5 min

const agencias = await lerAba("agencias");
// edite a planilha → o site se reconstrói sozinho
// sem CMS, sem painel, sem mensalidade
Revalidação incremental (ISR) com a planilha como fonte

em português claro

Você cadastra uma agência nova na planilha que já usa. Em cinco minutos ela está no site, sem me chamar.

Onde chegou

5 min

para uma mudança na planilha aparecer no site

0

mensalidade de CMS ou painel para manter

2

modos: busca por região e link por agência

O torcedor digita o CEP, o site resolve a cidade e ordena as agências por proximidade; cada agência ganha um link próprio que fixa o contato e atribui a conversão a ela. Leads e cliques são gravados na planilha com o identificador da agência.

o que ainda falta

  • A medição de conversão por agência já é gravada, mas ainda não há volume real para virar número de resultado no case.
  • Captura de leads em produção, foto oficial e dados reais das agências são as pendências antes da operação plena.

Tem um problema parecido?