Rentabilidade por cliente e produto no Power BI
Rentabilidade por cliente e produto no Power BI: margem de contribuição, custo de servir, rateio, curva ABC, cross-sell e repactuação com DAX real.
Faturamento alto não é sinônimo de cliente lucrativo
Toda diretoria comercial tem um cliente de estimação: aquele que fatura mais, aparece no topo do ranking e ninguém ousa questionar. O problema é que faturamento não paga conta, resultado sim. E quando você olha a rentabilidade por cliente com o custo real de atender cada um, a foto muda. O maior comprador pode estar entre os menos lucrativos porque exige prazo estendido, devolve muito, pede frete grátis, ocupa o time comercial o mês inteiro e negocia desconto em toda renovação.
Esse artigo é sobre como sair da conversa de volume e entrar na conversa de margem. Vou tratar rentabilidade por cliente e por produto como o que ela é: um problema de modelagem de dados e de controladoria, não de opinião. E vou mostrar como estruturar isso no Power BI de um jeito que a diretoria consiga usar para decidir onde repactuar, onde fazer cross-sell e, em último caso, de quem sair.
Margem de contribuição é o ponto de partida, não o de chegada
A base de qualquer análise de rentabilidade séria é a margem de contribuição. Ela é simples de definir: receita líquida menos custos e despesas variáveis. É quanto sobra de cada venda para pagar a estrutura fixa e gerar lucro. Custo da mercadoria, impostos sobre venda, comissão, frete variável, taxa de cartão. Tudo que só existe porque a venda aconteceu entra aqui.
A margem de contribuição é um conceito consolidado de controladoria justamente porque separa o que é custo do produto do que é custo da estrutura. O erro comum é parar nela. Duas vendas com a mesma margem de contribuição percentual podem ter rentabilidades finais opostas, e a diferença está no que acontece depois da venda: o quanto cada cliente consome da sua operação para ser servido.
Por isso a margem de contribuição é o começo. Ela responde "esse produto vale a pena por unidade". Ela não responde "esse cliente vale a pena". Para chegar lá, falta o custo de servir.
Custo de servir é o que separa análise séria de planilha bonita
Custo de servir é o total de despesas que você gasta para atender um cliente específico e que não estão no custo do produto. É o conceito que transforma uma análise de margem em uma análise de rentabilidade de verdade. Dois clientes compram o mesmo mix, com a mesma margem de contribuição, mas um deles some da sua vida e o outro liga três vezes por semana, pede entrega fracionada, atrasa pagamento e devolve 8% do que compra. Eles não são igualmente lucrativos, e o custo de servir é o que expõe isso.
Os componentes típicos de custo de servir são estes.
| Componente | O que captura | Onde costuma doer |
|---|---|---|
| Custo logístico | Frete, número de entregas, fracionamento, devoluções | Cliente que pede pouco e com alta frequência |
| Custo comercial | Tempo de vendedor, visitas, atendimento pós-venda | Conta que exige relacionamento intensivo e desconta na renovação |
| Custo financeiro | Prazo médio de recebimento, inadimplência, capital parado | Cliente grande que impõe 90 dias e paga atrasado |
| Custo de suporte | Chamados, trocas, retrabalho de pedido | Cliente com pedido sempre errado ou reclamação recorrente |
O custo de servir raramente vem pronto de um sistema só. Frete está no TMS ou no ERP, prazo de recebimento no contas a receber, tempo comercial em nenhum lugar e você vai ter que estimar por driver. Isso é normal. O objetivo não é precisão contábil de centavo, é ordem de grandeza confiável o suficiente para tomar decisão. Uma boa camada de engenharia de dados consolida essas fontes antes de qualquer coisa chegar ao Power BI, e é aí que a análise ganha ou perde credibilidade.
Rateio mal feito destrói a credibilidade do modelo
O rateio é a parte politicamente perigosa. Custos que não são diretamente atribuíveis a um cliente, estrutura administrativa, aluguel do CD, folha do back office, precisam ser distribuídos de alguma forma se você quiser chegar a um resultado final por cliente. E a forma como você rateia muda quem parece lucrativo.
Ratear tudo por faturamento é o caminho mais comum e o mais enganoso. Ele assume que quem compra mais consome mais estrutura, o que quase nunca é verdade. Um cliente que faz um pedido grande por mês consome muito menos operação que um que faz trinta pedidos pequenos, mesmo faturando o mesmo. Rateio por faturamento penaliza o cliente eficiente e protege o ineficiente.
O caminho honesto é ratear por driver de consumo. Custo logístico rateado por número de entregas ou peso movimentado. Custo comercial por tempo dedicado ou número de visitas. Custo de suporte por volume de chamados. Isso é a lógica de custeio baseado em atividades, e não precisa ser um projeto de dois anos para funcionar. Precisa de drivers defensáveis e de uma regra clara. Minha recomendação prática: comece com poucos drivers bem escolhidos e explícitos no modelo, e deixe registrado qual critério foi usado. Um rateio que ninguém entende vira munição para a área que ficou mal na foto derrubar a análise inteira na primeira reunião.
Separe sempre os três níveis no relatório, porque cada um responde uma pergunta diferente:
- Margem de contribuição: o produto e o preço fazem sentido?
- Resultado direto (margem menos custo de servir): esse cliente dá lucro na operação dele?
- Resultado final (após rateio de fixos): a estrutura inteira se paga com essa carteira?
A curva ABC de clientes organiza a conversa com a diretoria
Depois de calcular o resultado por cliente, você precisa de uma forma de priorizar, porque ninguém age sobre uma lista de mil linhas. A curva ABC resolve isso. Ela é aplicação direta do princípio de Pareto: uma minoria dos clientes concentra a maior parte do resultado. Você ordena os clientes por rentabilidade acumulada e classifica em faixas.
| Classe | Faixa acumulada | Leitura de gestão |
|---|---|---|
| A | Até o topo do resultado acumulado | Poucos clientes, maior parte do lucro. Blindar, aprofundar relacionamento, evitar dependência excessiva |
| B | Faixa intermediária | Base sólida com espaço para crescer via cross-sell e ajuste de mix |
| C | Cauda longa | Muitos clientes, pouco resultado. Alvo de repactuação, automação de atendimento ou saída seletiva |
O detalhe que muita gente ignora: vale fazer a curva ABC por rentabilidade, não só por faturamento. Um cliente classe A em faturamento pode ser classe C em resultado. É exatamente esse cruzamento que gera as decisões mais valiosas. E aqui aparece o caso mais desconfortável de todos: o cliente de resultado negativo. Não é raro descobrir que uma fatia da cauda dá prejuízo depois do custo de servir. Não significa demitir o cliente no dia seguinte, significa entender por que e agir sobre a causa.
Modelagem: onde a rentabilidade por cliente vive no Power BI
A rentabilidade por cliente e produto é um problema clássico de esquema estrela. Você precisa de uma fato de vendas no grão de item de pedido e dimensões limpas de Cliente, Produto, Calendário e, idealmente, uma fato ou tabela auxiliar de custos de servir com seus drivers.
Alguns pontos que fazem diferença na prática:
- Grão da fato: mantenha a linha no nível mais baixo que a decisão exige, normalmente item de nota ou de pedido. É nesse grão que margem por produto e custo de servir se encontram.
- Custos variáveis na fato: leve o custo unitário do produto para a própria linha de venda quando possível, seja como coluna, seja por relacionamento com uma tabela de custo por produto e período. Custo muda no tempo, então custo por produto sem data é uma armadilha.
- Drivers de custo de servir: modele número de entregas, chamados e visitas como fatos próprias ligadas às mesmas dimensões. Assim o rateio vira medida, não coluna congelada.
- Cardinalidade importa para performance: o motor VertiPaq comprime as colunas por cardinalidade, então colunas de altíssima variedade como IDs de transação ou timestamps ao segundo pesam muito. Reduza o que não é usado em análise e evite trazer texto livre desnecessário.
Se a base de custos vem de fontes que ainda não conversam entre si, o gargalo não é o Power BI, é a origem. Vale tratar isso com engenharia de dados e um bom projeto de Power BI desde a modelagem, em vez de empilhar merge de planilha no Power Query e rezar. Se quiser aprofundar a parte de modelo e medidas, o material de boas práticas de modelagem e DAX complementa bem o que vem abaixo.
DAX: as medidas que sustentam a análise
Com o modelo em pé, a rentabilidade vira um conjunto de medidas encadeadas. A base é a receita líquida e o custo variável.
Receita Líquida = SUM(Vendas[ValorLiquido])
Custo Variável =
SUMX(
Vendas,
Vendas[Quantidade] * RELATED(Custo[CustoUnitario])
)
Margem de Contribuição = [Receita Líquida] - [Custo Variável]
Margem de Contribuição % =
DIVIDE([Margem de Contribuição], [Receita Líquida])
Repare em dois cuidados. O SUMX calcula linha a linha, o que é o correto para custo, porque preço e custo variam por item e o produto tem que ser feito antes da soma. E o DIVIDE no lugar da barra comum evita o erro de divisão por zero quando um cliente ou período fica sem receita, sem precisar de IF aninhado.
O custo de servir entra como agregação dos drivers, cada um com seu custo padrão ou rateado.
Custo de Servir =
[Custo Logístico] + [Custo Comercial] + [Custo Financeiro] + [Custo Suporte]
Resultado por Cliente = [Margem de Contribuição] - [Custo de Servir]
Resultado % = DIVIDE([Resultado por Cliente], [Receita Líquida])
Para a curva ABC, o RANKX ordena os clientes por resultado e uma medida de acumulado permite classificar em A, B e C. A lógica é ranquear, somar o resultado do melhor até o cliente atual e comparar com o total.
Ranking Rentabilidade =
RANKX(
ALL(Cliente[Nome]),
[Resultado por Cliente],
,
DESC
)
A partir daí, uma medida de percentual acumulado sobre esse ranking define as faixas de corte da curva. O ponto conceitual é que tudo isso são medidas, não colunas calculadas. Mudou o filtro de período, de canal ou de região, a rentabilidade e a curva ABC recalculam sozinhas. Isso é o que torna a análise viva em vez de um retrato estático que envelhece no dia seguinte. Se a lógica de rateio e projeção ficar sofisticada demais para medidas simples, é sinal de que vale envolver analytics avançado para desenhar o modelo de custeio com mais rigor.
Cross-sell e repactuação são a saída, não o corte de cliente
Análise de rentabilidade que só serve para demitir cliente é análise mal usada. As decisões mais valiosas são as de recuperação. Um cliente de baixo resultado raramente é irrecuperável, ele é mal servido ou mal precificado.
Cross-sell e ajuste de mix. Cliente classe A em relacionamento que compra só a linha de baixa margem é a oportunidade mais óbvia. A análise por produto mostra qual mix puxa a rentabilidade para cima, e o cruzamento cliente por produto revela quem ainda não compra os itens que dão margem. Isso é venda de expansão dentro de uma conta que você já conquistou, o crescimento mais barato que existe.
Repactuação comercial. Cliente de resultado negativo por custo de servir alto é candidato a renegociar as condições, não o preço de tabela. Pedido mínimo maior para reduzir fracionamento, prazo de pagamento menor, revisão da política de frete, foco em menos entregas maiores. Muitas vezes a conversa não é "seu preço vai subir", é "vamos mudar como operamos juntos".
Automação do atendimento na cauda. A classe C com muitos clientes de baixo ticket não comporta atendimento humano intensivo sem virar prejuízo. Aqui um portal de autoatendimento ou fluxos com Power Platform reduzem o custo comercial e financeiro de servir sem abandonar o cliente. Servir barato quem paga pouco é uma decisão de rentabilidade tão válida quanto repactuar quem paga mais.
A ferramenta certa para operar isso é a que você já tem. Power BI Pro cobre a maior parte dos cenários com licença por usuário, e o PPU, também por usuário, entrega recursos de capacidade quando a análise cresce em volume e frequência. A discussão de plataforma vem depois da modelagem estar correta, não antes.
Perguntas frequentes
Qual a diferença entre margem de contribuição e rentabilidade por cliente? Margem de contribuição é receita líquida menos custos variáveis do produto, medida por venda ou por produto. Rentabilidade por cliente pega essa margem e subtrai o custo de servir aquele cliente específico, mais o rateio de fixos quando você quer o resultado final. Um mede o produto, o outro mede a relação inteira com o cliente.
Preciso de um custeio ABC completo para começar? Não. Custeio baseado em atividades perfeito é um projeto longo e você não precisa dele para tomar as primeiras decisões. Comece com poucos drivers defensáveis, número de entregas, prazo de recebimento e volume de chamados já expõem a maior parte das distorções. Refine depois. Ordem de grandeza confiável decide melhor que precisão que nunca fica pronta.
Como trato clientes com rentabilidade negativa? Primeiro entenda a causa: é margem baixa no produto ou custo de servir alto? Se for custo de servir, o caminho é repactuar condições operacionais antes de falar em saída. Só considere encerrar a relação quando a repactuação foi tentada e o cliente não aceita mudar nada. Cliente negativo quase sempre é sintoma de processo, não de má sorte.
Rateio por faturamento é aceitável? É o mais fácil e o mais enganoso. Ele assume que quem fatura mais consome mais estrutura, o que penaliza o cliente eficiente. Use drivers de consumo reais sempre que puder. Se precisar de um rateio simples no começo, deixe explícito no modelo qual critério foi usado, porque a credibilidade da análise depende de todo mundo entender e concordar com a regra.
Quais medidas DAX são o núcleo dessa análise?
SUMX para custo variável linha a linha, DIVIDE para percentuais sem erro de divisão por zero e RANKX para ordenar clientes e montar a curva ABC. A partir dessas três, a maior parte do modelo se constrói encadeando medidas em cima de medidas, mantendo tudo reativo ao contexto de filtro.
Power BI Pro dá conta ou preciso de PPU? Para a maioria dos cenários de rentabilidade, o Pro por usuário resolve. O PPU, também por usuário, entra quando o volume de dados, a frequência de atualização ou o número de usuários exige recursos de capacidade. A decisão de licença vem depois da modelagem estar correta, nunca no lugar dela.
O resultado está nos dados que você já tem
Rentabilidade por cliente e produto não é um projeto de dados novos, é de organizar os dados que já existem para responder uma pergunta que o faturamento esconde: quem realmente dá lucro. Margem de contribuição, custo de servir, rateio honesto e curva ABC por rentabilidade transformam a discussão comercial de opinião em decisão. E o Power BI é a ferramenta certa para isso quando o modelo é feito com cuidado, não quando vira mais um painel bonito de faturamento.
Quer estruturar a análise de rentabilidade da sua carteira do jeito certo, da modelagem ao DAX? Fale com a gente.
Quer aplicar isso na sua empresa?
A Fynx implementa BI, Power BI e Power Platform de ponta a ponta. Conte seu cenário e devolvemos um diagnóstico direto ao ponto.
Falar com um especialista