Voltar para o blog
IA Aplicada9 min de leitura05 de março de 2026

IA na prática: como prever churn em e-commerce com dados que você já tem

Um guia prático de como usar machine learning para identificar clientes em risco de abandono — com os dados que qualquer e-commerce já possui.

D4

Data85

Consultoria Data85

Churn (perda de clientes) é um dos principais destruidores silenciosos de receita no e-commerce. O problema não é perder clientes — isso é inevitável. O problema é quando você não sabe quem vai embora antes que vá.

Neste artigo, vamos mostrar como construir um modelo de previsão de churn simples, eficaz e baseado em dados que qualquer e-commerce já tem.

O que é churn no e-commerce

Diferente de SaaS (onde churn é claro: o cliente cancela a assinatura), no e-commerce o churn é implícito: o cliente simplesmente para de comprar.

A definição mais comum: cliente que não fez nenhuma compra nos últimos N dias — onde N depende do seu ciclo de compra típico.

Para produtos de compra recorrente (ex: suplementos), N pode ser 60 dias.
Para produtos de compra eventual (ex: eletrônicos), N pode ser 365 dias.

Por que prever e não só reagir?

A diferença entre reagir e prever:

  • Reagir: o cliente sumiu. Você tenta reativar com desconto ou e-mail. Taxa de conversão: 2–5%.
  • Prever: o cliente está em risco. Você age antes. Taxa de conversão: 20–40%.

O custo de adquirir um novo cliente é 5–7x maior que reter um existente. Cada cliente retido com uma oferta de R$ 20 de desconto pode valer R$ 200–500 em LTV futuro.

Os dados que você já tem

Para um modelo básico de previsão de churn, você precisa de:

  1. Histórico de pedidos: data, valor, produtos
  2. Cadastro de clientes: data de criação, canal de aquisição
  3. Dados de comportamento (se tiver): e-mails abertos, último acesso ao site

Qualquer plataforma (Shopify, VTEX, WooCommerce, Nuvemshop) tem todos esses dados exportáveis.

As features que mais predizem churn

No mundo de data science de e-commerce, existe um framework famoso chamado RFM:

  • R (Recência): há quantos dias o cliente fez a última compra?
  • F (Frequência): quantas compras o cliente fez no histórico?
  • M (Monetário): qual o valor total gasto pelo cliente?

Clientes com R alto (compraram há muito tempo), F baixo (poucas compras) e M baixo são os com maior probabilidade de churn.

Além do RFM, features que aumentam a acurácia:

  • Número de produtos distintos comprados (diversificação)
  • Taxa de devolução/cancelamento
  • Canal de aquisição (mídia paga tende a ter churn maior)
  • Intervalo médio entre compras

O modelo mais simples que funciona

Não precisa começar com redes neurais. Para e-commerce, um Gradient Boosting (XGBoost ou LightGBM) com as features de RFM já entrega resultados muito bons.

import pandas as pd
from sklearn.model_selection import train_test_split
from xgboost import XGBClassifier
from sklearn.metrics import roc_auc_score

# Carregar dados
df = pd.read_csv("orders.csv")

# Calcular RFM por cliente
hoje = df["order_date"].max()
rfm = df.groupby("customer_id").agg(
    recencia=("order_date", lambda x: (hoje - x.max()).days),
    frequencia=("order_id", "count"),
    monetario=("order_value", "sum"),
    intervalo_medio=("order_date", lambda x: x.sort_values().diff().dt.days.mean())
).reset_index()

# Label: churn = não comprou nos últimos 90 dias
rfm["churn"] = (rfm["recencia"] > 90).astype(int)

# Features e target
X = rfm[["recencia", "frequencia", "monetario", "intervalo_medio"]]
y = rfm["churn"]

# Treinar
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
model = XGBClassifier(n_estimators=100, learning_rate=0.1)
model.fit(X_train, y_train)

# Avaliar
auc = roc_auc_score(y_test, model.predict_proba(X_test)[:, 1])
print(f"AUC-ROC: {auc:.3f}")  # Esperado: 0.75–0.90 para bons dados

Como usar o modelo na prática

O modelo gera um score de probabilidade de churn para cada cliente. Com esse score, você pode:

  1. Segmentar por risco:

    • Score > 80%: contato direto (ligação, WhatsApp)
    • Score 50–80%: e-mail personalizado com oferta
    • Score < 50%: newsletter padrão
  2. Disparar automações no seu ESP (Klaviyo, RD Station, MailChimp) para clientes de alto risco

  3. Medir resultado: compare taxa de reativação do grupo tratado vs. grupo controle

Resultados típicos que vemos

Em projetos de churn que implementamos:

  • Aumento de 15–30% na taxa de reativação vs. campanhas genéricas
  • Redução de 20–40% no custo de campanhas de retenção (menos volume, mais precisão)
  • Payback do projeto em 2–4 meses

O que limita os resultados

Dois fatores que mais impactam a qualidade do modelo:

  1. Volume de dados: com menos de 1.000 clientes ativos, o modelo tem pouca base para aprender
  2. Qualidade dos dados: dados inconsistentes, pedidos duplicados ou clientes sem histórico suficiente reduzem a acurácia

Por isso, a fase de diagnóstico de dados é crítica antes de qualquer projeto de IA.


Este é um modelo introdutório. Projetos em produção incluem retreinamento automático, monitoramento de drift, integração com CRM e automações. Quer entender o que faria sentido para o seu e-commerce? Fale com a gente.

Próximo passo

Quer aplicar isso na sua empresa?

Faça um diagnóstico gratuito em 7 dias e descubra as oportunidades mais valiosas nos seus dados.

Solicitar diagnóstico gratuito