Sem decay, um lead que respondeu há 6 meses continuaria com a mesma pontuação alta de quando estava engajado — e ia parar misturado com leads quentes do mês corrente. O decay temporal resolve isso: pontos são subtraídos automaticamente quando o lead fica muito tempo sem interagir ou parado na mesma etapa.
No Syncro o decay é implementado via cron diário que dispara dois eventos automáticos pra leads que cumpriram as condições.
Como funciona
O comando scoring:decay roda uma vez por dia (geralmente de manhã) e faz uma varredura em todos os tenants. Pra cada lead, verifica:
- Inativo há 3 dias — se a última mensagem do lead foi há mais de 72 horas E o status da conversa é
open, dispara o eventoinactive_3d. - Inativo há 7 dias — se o lead não tem update há mais de 7 dias E está numa etapa de funil definida, dispara o evento
inactive_7d.
Pra cada evento, o Syncro avalia se há regras de scoring com event_type='inactive_3d' ou event_type='inactive_7d'. Se houver, aplica os pontos (geralmente negativos) no lead afetado.
Pré-requisitos
Pra que o decay funcione, você precisa criar regras com esses dois eventos. Se não criar, o cron roda mas não faz nada — não tem regra pra disparar. Veja Criar uma regra de pontuação.
Configurando regras de decay
Regra 1: Inativo há 3 dias
| Campo | Valor sugerido |
|---|---|
| Nome | Lead esfriou (3 dias) |
| Categoria | Engajamento |
| Evento | Inativo há 3 dias |
| Pontos | −5 |
| Cooldown | 0 (o cron já controla pra não disparar 2x no mesmo dia) |
Regra 2: Inativo há 7 dias
| Campo | Valor sugerido |
|---|---|
| Nome | Lead frio (7 dias parado) |
| Categoria | Engajamento |
| Evento | Inativo há 7 dias |
| Pontos | −10 |
| Cooldown | 0 |
Em conjunto, leads silentes acumulam −5 a cada 3 dias e −10 a cada 7 dias parado na mesma etapa — o score vai despencando conforme o tempo passa.
Anti-disparo duplicado
O Syncro evita aplicar decay 2 vezes no mesmo dia pro mesmo lead/regra. A verificação:
SELECT 1 FROM lead_score_logs
WHERE lead_id = X
AND reason = 'inactive_3d'
AND created_at >= today
Se já tem log de hoje, pula. Garantia que mesmo se o cron rodar duas vezes (raro), o lead não leva penalidade dupla.
Quando o lead "para de esfriar"
O decay para automaticamente quando:
- Lead manda nova mensagem →
last_message_atse atualiza, condição "inativo 3 dias" deixa de bater - Lead muda de etapa →
updated_atse renova, condição "7 dias parado" deixa de bater - Conversa é fechada → status muda de
openpraclosed, regrainactive_3ddeixa de avaliar
Não há decay "infinito": uma vez que o lead saiu da janela, o decay para. Pra que ele volte a perder pontos, precisa cumprir as condições de novo (ficar mais 3 dias inativo, etc).
Score mínimo (não fica negativo absurdo)
Se você definiu o score mínimo global (em Configurações → Lead Scoring → ⚙️ Limites), o decay respeita o limite. Mesmo que as regras gerem ‑200 pontos teóricos, o score do lead não vai abaixo do mínimo configurado (default 0).
Pra ver / editar isso:
- Em Configurações → Lead Scoring, clique no ícone de engrenagem (⚙️).
- Aparece o popover Limites Globais com os campos:
- Score mínimo: padrão 0.
- Score máximo: vazio (sem teto) ou um número.
- Salve.
💡 Dica: definir score_min=0 garante que leads frios fiquem com 0, não negativos. Visualmente fica mais fácil de ler.
Customizando o decay (não há decay_days por regra)
Diferente de outros sistemas, o Syncro não tem uma coluna decay_days em cada regra. O decay é feito sempre nos dois pontos fixos: 3 dias e 7 dias. Se você quer decay mais lento (ex: 14 dias) ou mais rápido (ex: 1 dia), hoje precisaria:
- Criar automação customizada com gatilho de tempo (sai da nossa cobertura de scoring nativo)
- Pedir ao time Syncro pra adicionar mais opções de evento
Frequência de execução
O cron roda diariamente. Não tem como forçar manualmente pela UI hoje. Se você cadastrou as regras agora e quer ver o decay agir imediatamente, esperar até a próxima execução do cron (no máximo 24h).
⚠️ Atenção: o decay só processa leads que cumprem a condição. Se você criou regra de
inactive_3dhoje e seu lead já está inativo há 3 dias, o decay vai aplicar a partir de hoje, não retroativamente. Não há "catch-up" do passado.
Boas práticas
- Não exagere nos negativos. Decay de −20 ou mais pode zerar leads bons em poucos dias só por uma semana de trabalho parado (férias do vendedor, p.ex.).
- Combine decay com regras positivas fortes. Lead respondendo deveria recuperar mais rápido do que decay tira. Ex: decay de −5/3d + resposta rápida +10 = net positivo se ele está conversando.
- Use score_min=0 se quer evitar leads "negativos" no painel.
- Revise mensalmente os logs de decay pra ver se faz sentido. Se 80% dos seus leads estão zerados, o decay tá agressivo demais.
Verificando se o decay rodou
Você pode verificar nos logs de pontuação de um lead específico:
- Abra o lead.
- Veja a aba Timeline.
- Procure entradas com motivo "inactive_3d" ou "inactive_7d".
- A data do log mostra quando o decay foi aplicado.
Veja Histórico de pontos pra detalhes.