Pular para o conteúdo
Fynx
Business Intelligence13 min de leitura

Os KPIs financeiros essenciais no Power BI

KPIs financeiros Power BI: como modelar a DRE e calcular margem, EBITDA, fluxo de caixa, capital de giro, ciclo financeiro, liquidez e inadimplência em DAX.

F
Fynx

O fechamento financeiro trava porque o dado mora no ERP e a análise mora no Excel

A dor mais comum na controladoria não é falta de número. É que o número certo chega tarde e não bate entre relatórios. O ERP fecha o razão, alguém exporta uma planilha, outra pessoa reclassifica contas na mão, e no fim a diretoria discute qual EBITDA está correto em vez de discutir o negócio. Montar os KPIs financeiros no Power BI resolve esse ciclo, mas só quando a Demonstração do Resultado do Exercício é modelada como uma estrutura contábil de verdade, e não como uma soma de colunas soltas.

Este artigo é direto ao ponto: como estruturar a DRE, quais indicadores realmente importam para a gestão financeira corporativa e como calcular cada um em DAX. A ideia é você sair daqui sabendo montar o cálculo e, principalmente, sabendo onde ele engana.

Os KPIs financeiros no Power BI começam por um plano de contas bem modelado

Antes de qualquer medida, o modelo. Indicador financeiro depende de uma coisa: classificar cada lançamento na linha certa da demonstração. Se o plano de contas vier bagunçado, nenhuma fórmula em DAX conserta. O padrão que recomendamos é o esquema estrela clássico, com uma tabela fato de lançamentos contábeis e dimensões ao redor.

A fato fLancamentos tem uma linha por lançamento do razão, com data, conta, centro de custo e valor. A dimensão dPlanoContas é o coração do modelo: cada conta carrega o grupo da DRE, a natureza (receita ou despesa), um sinal contábil e, principalmente, uma coluna de ordem de exibição. Some a isso uma dCalendario contínua e marcada como tabela de datas, obrigatória para as funções de time intelligence do DAX funcionarem, e uma dCentroCusto para abrir resultado por área.

Vale lembrar como o Power BI trata isso por baixo. O motor VertiPaq comprime cada coluna em memória, e a compressão é melhor quanto menor a cardinalidade. O número do documento fiscal ou um histórico contábil textual têm cardinalidade altíssima e incham o modelo sem entregar análise. Deixe esses campos de fora ou em uma tabela de detalhe separada. Se quiser aprofundar a parte de modelagem, escrevemos sobre isso em boas práticas de modelagem e DAX, e a fundação de dados que sustenta tudo isso é assunto de engenharia de dados.

Nos exemplos abaixo assumo uma fato fLancamentos, uma dPlanoContas com as colunas Grupo e Ordem, uma fato fSaldos para contas patrimoniais e uma dCalendario. Ajuste os nomes ao seu modelo.

A DRE é uma hierarquia de contas, não uma soma de colunas

O erro clássico é tratar a DRE como se cada linha fosse uma medida independente somando colunas diferentes. Ela é uma cascata: receita bruta menos deduções chega na receita líquida, que menos o custo dos produtos vendidos chega no lucro bruto, e assim por diante até o lucro líquido. Cada linha depende da anterior.

A estrutura contábil padrão que você precisa refletir no Grupo da dPlanoContas é esta:

Linha da DRENaturezaO que entra
Receita BrutaPositivaVendas de produtos e serviços
DeduçõesNegativaImpostos sobre venda, devoluções, cancelamentos
Receita LíquidaSubtotalReceita Bruta menos Deduções
CPV ou CMVNegativaCusto dos produtos ou mercadorias vendidos
Lucro BrutoSubtotalReceita Líquida menos custo
Despesas OperacionaisNegativaComercial, administrativa, pessoal
EBITSubtotalLucro Bruto menos despesas operacionais
Resultado FinanceiroPositiva ou negativaReceitas e despesas financeiras
Impostos sobre o lucroNegativaIRPJ e CSLL
Lucro LíquidoResultadoO que sobra ao fim da cascata

A técnica que funciona bem no Power BI é armazenar o valor já com o sinal correto na fato, ou aplicar o sinal via dPlanoContas, e construir uma medida base única. A partir dela, cada linha da demonstração é um CALCULATE filtrando o grupo:

Valor = SUM ( fLancamentos[Valor] )

Receita Líquida =
CALCULATE ( [Valor], dPlanoContas[Grupo] IN { "Receita Bruta", "Deduções" } )

Lucro Bruto =
CALCULATE (
    [Valor],
    dPlanoContas[Grupo] IN { "Receita Bruta", "Deduções", "CPV" }
)

Para exibir a DRE em uma matriz na ordem contábil, use a coluna Ordem como campo de linha e ordene por ela, não em ordem alfabética. Sem isso a receita aparece embaixo do imposto e o relatório perde credibilidade na primeira reunião.

Margem bruta e margem líquida medem coisas diferentes

Margem é a linha traduzida em percentual da receita, e é aqui que a gestão financeira começa a comparar meses, unidades e produtos. A margem bruta mostra a eficiência da operação em si, ou seja, quanto sobra depois do custo direto de produzir ou vender. A margem líquida mostra o que sobra de tudo, depois de despesas, resultado financeiro e impostos.

Margem Bruta % = DIVIDE ( [Lucro Bruto], [Receita Líquida] )

Margem Líquida % = DIVIDE ( [Lucro Líquido], [Receita Líquida] )

Use sempre DIVIDE e não o operador de barra. DIVIDE trata a divisão por zero de forma silenciosa, o que evita o erro visual em meses sem receita, comum em unidades novas ou sazonais. A margem bruta caindo com receita estável é sinal de custo subindo. A margem líquida caindo com margem bruta estável aponta para despesa ou resultado financeiro, e a DRE bem modelada mostra na hora em qual linha está o problema.

EBITDA aproxima a geração de caixa operacional

O EBITDA é o resultado antes de juros, impostos, depreciação e amortização. Não é lucro e não é caixa, mas é a melhor aproximação rápida de quanto a operação gera antes das decisões de financiamento e da contabilização de ativos que não saem do bolso no mês. É um conceito consolidado de mercado, exigido por bancos, investidores e por qualquer processo de valuation.

Partindo do EBIT, que já exclui o resultado financeiro e os impostos sobre o lucro, o cálculo é somar de volta a depreciação e a amortização:

EBITDA = [EBIT] + [Depreciação e Amortização]

Margem EBITDA % = DIVIDE ( [EBITDA], [Receita Líquida] )

Um ponto honesto: EBITDA esconde a necessidade de reinvestimento. Uma indústria pesada pode ter EBITDA bonito e mesmo assim consumir caixa em manutenção de máquinas. Por isso ele mora no dashboard ao lado do fluxo de caixa, nunca sozinho.

Para comparar com o ano anterior, a mesma medida ganha uma versão com time intelligence:

EBITDA AA =
CALCULATE ( [EBITDA], SAMEPERIODLASTYEAR ( dCalendario[Data] ) )

EBITDA Var % AA =
DIVIDE ( [EBITDA] - [EBITDA AA], [EBITDA AA] )

Fluxo de caixa e capital de giro contam a verdade sobre a operação

Aqui vai o alerta mais importante do artigo: a DRE segue o regime de competência, o fluxo de caixa segue o regime de caixa. São coisas diferentes. Uma empresa pode ter lucro na DRE e não ter dinheiro na conta, porque vendeu a prazo e pagou o fornecedor à vista. Não calcule fluxo de caixa a partir da DRE. Modele uma fato própria de movimentações financeiras, com data de liquidação, e classifique cada movimento em operacional, de investimento ou de financiamento.

O capital de giro é o que financia o dia a dia da operação, e sai do balanço patrimonial, não da DRE. Ele é a diferença entre o ativo circulante e o passivo circulante em uma data. Isso exige uma fato de saldos patrimoniais, fotografada por período. A medida de saldo precisa pegar o último valor de cada conta dentro do contexto, e não somar o mês inteiro:

Saldo =
CALCULATE (
    SUM ( fSaldos[Valor] ),
    LASTNONBLANK ( dCalendario[Data], SUM ( fSaldos[Valor] ) )
)

Capital de Giro =
CALCULATE ( [Saldo], dPlanoContas[Grupo] = "Ativo Circulante" )
    - CALCULATE ( [Saldo], dPlanoContas[Grupo] = "Passivo Circulante" )

Capital de giro negativo não é sempre ruim: varejo com giro rápido e prazo de fornecedor longo opera bem assim. Capital de giro que piora mês a mês sem explicação de crescimento, isso sim é bandeira vermelha.

Ciclo financeiro mostra quantos dias o dinheiro fica preso

O ciclo financeiro, ou ciclo de caixa, responde a uma pergunta prática: quantos dias a empresa banca a operação com dinheiro próprio antes de receber. Ele nasce de três prazos médios, todos calculados em dias.

IndicadorO que medeLeitura da fórmula
PMEPrazo médio de estoqueEstoque dividido pelo custo, vezes os dias do período
PMRPrazo médio de recebimentoContas a receber dividido pela receita, vezes os dias
PMPPrazo médio de pagamentoContas a pagar dividido pelas compras, vezes os dias
Ciclo OperacionalDuração do giroPME mais PMR
Ciclo FinanceiroDias sem caixaPME mais PMR menos PMP

Em DAX, cada prazo é uma divisão ponderada pelos dias do período. Um exemplo para o prazo médio de recebimento:

Dias no Período = COUNTROWS ( dCalendario )

PMR =
DIVIDE (
    CALCULATE ( [Saldo], dPlanoContas[Grupo] = "Contas a Receber" ),
    [Receita Líquida]
) * [Dias no Período]

Ciclo Financeiro = [PME] + [PMR] - [PMP]

Quanto menor o ciclo financeiro, menos capital de giro a empresa precisa. Reduzir esse número, negociando prazo com fornecedor ou apertando a cobrança, costuma liberar mais caixa do que cortar custo. É o tipo de leitura que só aparece quando os indicadores estão no mesmo modelo, conversando entre si.

Liquidez e inadimplência medem a saúde de curto prazo

Os índices de liquidez dizem se a empresa consegue honrar o que vence no curto prazo. São três, do mais folgado ao mais conservador:

  • Liquidez corrente: ativo circulante dividido pelo passivo circulante.
  • Liquidez seca: mesmo cálculo, tirando o estoque do numerador, porque estoque pode não virar dinheiro tão rápido.
  • Liquidez imediata: apenas o disponível em caixa e aplicações dividido pelo passivo circulante.
Liquidez Corrente =
DIVIDE (
    CALCULATE ( [Saldo], dPlanoContas[Grupo] = "Ativo Circulante" ),
    CALCULATE ( [Saldo], dPlanoContas[Grupo] = "Passivo Circulante" )
)

A inadimplência fecha o quadro. O indicador básico é a razão entre o valor vencido e não recebido e o total da carteira de recebíveis. Mas a leitura que a diretoria realmente usa é o aging, ou seja, a carteira vencida distribuída por faixas de atraso. Isso se resolve com uma coluna calculada de dias de atraso na fato de títulos e uma medida por faixa:

Inadimplência % =
DIVIDE (
    CALCULATE ( [Valor a Receber], fTitulos[DiasAtraso] > 0 ),
    [Valor a Receber]
)

Faixas de 1 a 30, 31 a 60, 61 a 90 e acima de 90 dias mostram se o problema é pontual ou estrutural. Recebível parado acima de 90 dias raramente entra, então ele conversa direto com a provisão e com o fluxo de caixa projetado. Todos esses indicadores costumam morar em um painel executivo único, servido pelo Power BI, com segurança por linha para que cada gestor veja apenas o resultado da sua área.

Onde a maioria dos projetos financeiros erra

Depois de muitos fechamentos entregues, os tropeços se repetem. Vale a lista curta:

  • Calcular caixa a partir da DRE. Regimes diferentes, resultado errado.
  • Somar saldos patrimoniais ao longo do mês em vez de pegar o último valor. Balanço é foto, não filme.
  • Deixar a matriz da DRE em ordem alfabética. Perde credibilidade na hora.
  • Reclassificar conta na mão a cada mês. Se o plano de contas está certo na origem, o Power BI classifica sozinho.
  • Publicar EBITDA sem o fluxo de caixa ao lado. Um número bonito que esconde consumo de caixa engana a gestão.

A licença também entra na conta do projeto. O Power BI Pro e o Power BI Premium por Usuário são licenciados por usuário, e a escolha entre eles e uma capacidade dedicada muda quando o modelo financeiro cresce e passa a ser consumido pela diretoria inteira. Sobre a plataforma de dados por trás disso, o Microsoft Fabric, anunciado pela Microsoft em 2023, muda a arquitetura de armazenamento, e discutimos se vale a pena em nosso material sobre o Fabric.

Perguntas frequentes

Preciso importar a DRE já pronta do ERP ou monto do razão? Sempre que possível, monte a partir do razão. Importar a DRE fechada te dá um número que você não consegue abrir por centro de custo, produto ou período. Com os lançamentos e um plano de contas bem classificado, a demonstração vira uma consequência do modelo e você navega em qualquer nível de detalhe.

Como garanto que o EBITDA do Power BI bate com o da contabilidade? O segredo é o plano de contas, não a fórmula. Se a depreciação, a amortização e o resultado financeiro estão nos grupos corretos da dPlanoContas, o EBITDA fecha. Quando não bate, quase sempre é uma conta classificada no grupo errado, e não um problema de DAX. Vale conciliar linha a linha da DRE contra o balancete no primeiro mês.

Dá para fazer fluxo de caixa projetado no Power BI? Dá, desde que você tenha os títulos a pagar e a receber com data de vencimento em uma fato própria. O realizado vem das movimentações liquidadas e o projetado vem dos vencimentos futuros. O que não funciona é derivar caixa da DRE, porque competência e caixa não são a mesma coisa.

Qual a diferença entre ciclo operacional e ciclo financeiro? O ciclo operacional é o tempo total do giro, do estoque até receber do cliente, ou seja, PME mais PMR. O ciclo financeiro desconta desse total o prazo que você tem para pagar o fornecedor, o PMP. Ele mostra por quantos dias a empresa financia a operação com dinheiro próprio, que é o número que pressiona o capital de giro.

Como trato empresas com vários CNPJs ou moedas na mesma DRE? Modele a entidade e a moeda como dimensões, com uma tabela de câmbio quando houver conversão. As medidas continuam as mesmas, mudando apenas o contexto de filtro. Consolidação e eliminação de operações entre empresas do grupo pedem regras específicas, e aí a modelagem contábil precisa ser desenhada com a controladoria antes de escrever DAX.

Vale usar segurança por linha nos relatórios financeiros? Vale e costuma ser obrigatório. Dado financeiro é sensível, e a Lei Geral de Proteção de Dados, a Lei nº 13.709/2018, reforça o cuidado quando há dados pessoais de clientes na carteira de recebíveis. A segurança por linha garante que cada gestor veja apenas seu centro de custo e que a diretoria veja o consolidado, sem duplicar relatórios.

Fechando

KPI financeiro no Power BI não é sobre decorar fórmula de EBITDA. É sobre modelar a DRE como a cascata contábil que ela é, separar competência de caixa e deixar cada indicador conversando com os outros no mesmo modelo. Feito isso, o fechamento deixa de ser um exercício de exportar planilha e vira uma leitura confiável que a diretoria usa para decidir. Se você quer tirar o financeiro do Excel manual e colocar em um modelo que fecha sozinho todo mês, 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

Vamos transformar seus dados em decisão?

Conte seu cenário. Devolvemos um diagnóstico e uma proposta com faixa de investimento em poucos dias úteis, sem folheto, direto ao ponto.