Medida vs coluna calculada: qual usar no Power BI
Medida vs coluna calculada no Power BI: onde cada uma é calculada, o que pesa no modelo e a regra prática para escolher certo, com tabela e exemplos claros.
O mesmo cálculo pode ir para o lugar certo ou inchar o seu modelo
Uma das dúvidas mais comuns de quem começa em DAX parece pequena, mas tem consequência grande: aquele cálculo deveria ser uma medida ou uma coluna calculada? Os dois usam a mesma linguagem, os dois às vezes chegam ao mesmo número em um teste rápido, e é aí que mora a armadilha. A escolha errada não dá erro na tela; ela infla o tamanho do modelo, deixa o refresh mais lento e produz totais que não fecham quando o usuário começa a filtrar. Entender medida vs coluna calculada é entender onde cada uma é calculada e o que cada uma custa. Com essa clareza, a decisão deixa de ser chute e vira regra.
A coluna calculada é calculada na carga e fica guardada linha a linha
Uma coluna calculada é avaliada quando o modelo atualiza, durante o refresh, e o resultado fica armazenado dentro do modelo, um valor para cada linha da tabela. Ela trabalha no chamado contexto de linha: para cada registro, ela enxerga os valores daquela linha e calcula. Uma coluna que classifica o pedido como grande ou pequeno conforme o valor, ou que extrai o ano de uma data, é um bom exemplo.
Como o resultado fica gravado, ela ocupa espaço no modelo, e esse espaço cresce com a quantidade de linhas e com a cardinalidade do resultado. Uma coluna calculada com muitos valores distintos, aplicada a uma tabela de fatos enorme, pode pesar bastante. Em troca, por já estar pronta, ela pode ser usada como qualquer outra coluna: para filtrar, para segmentar, para criar relacionamentos, para colocar no eixo de um gráfico.
A medida é calculada na hora da consulta e não ocupa espaço guardado
Uma medida é diferente na essência. Ela não é calculada no refresh nem fica armazenada. Ela é avaliada no momento em que o usuário interage com o relatório, dentro do contexto de filtro daquela visualização: o mês selecionado, a região no slicer, a categoria na linha da matriz. Uma medida de total de vendas, de margem percentual ou de comparação com o ano anterior é o caso típico.
Por ser calculada sob demanda, a medida quase não pesa no tamanho do modelo, e é ela que respeita os filtros do usuário de forma correta. Quando alguém filtra por um vendedor, a medida recalcula considerando só aquele vendedor. É por isso que agregações e indicadores de negócio quase sempre devem ser medidas: elas se comportam certo em qualquer recorte que o usuário escolher.
Uma tabela lado a lado resume as diferenças que importam
| Critério | Coluna calculada | Medida |
|---|---|---|
| Quando calcula | No refresh (carga) | Na hora da consulta |
| Onde fica | Armazenada, valor por linha | Não é armazenada |
| Contexto | Contexto de linha | Contexto de filtro |
| Impacto no tamanho | Ocupa espaço, cresce com as linhas | Praticamente nulo |
| Serve para filtrar ou segmentar | Sim | Não diretamente |
| Serve para agregar (soma, média) | Não é o ideal | Sim, é o uso natural |
| Exemplo | Faixa de valor do pedido, ano da data | Total de vendas, margem, YoY |
A regra prática cabe em uma frase e resolve a maioria dos casos
Na dúvida, prefira medida. Só use coluna calculada quando você precisa do resultado em cada linha para filtrar, segmentar, ordenar ou relacionar, e quando esse resultado não muda conforme o usuário interage. Se o que você quer é um número que soma, conta ou compara respeitando os filtros da tela, é medida, sem exceção. Se o que você quer é um atributo estável que descreve cada linha, como uma faixa etária, uma classificação ABC fixa ou uma flag de status, aí a coluna calculada se justifica.
Um sinal de alerta clássico é usar coluna calculada para somar. Se você criou uma coluna para calcular valor vezes quantidade linha a linha e depois soma essa coluna, quase sempre isso deveria ser uma medida com SUMX, que faz a mesma conta sem gravar nada e sem inchar o modelo. O número pode até bater no teste, mas o custo em espaço e refresh é desnecessário.
O impacto aparece justamente quando o modelo cresce
Em um modelo pequeno, a diferença some: coluna ou medida, tudo parece rápido. O problema aparece na escala. Colunas calculadas espalhadas por tabelas de fatos grandes somam megabytes, alongam o refresh e consomem memória da capacidade. Medidas mal decididas que deveriam ter sido colunas, ou o contrário, produzem totais estranhos que minam a confiança no relatório. Decidir certo desde o início é o que mantém o modelo leve e os números confiáveis conforme o volume aumenta. Para aprofundar boas práticas de DAX e de modelo, veja o guia completo de Power BI para empresas, e conte com nossos serviços de Power BI e de analytics avançado.
Perguntas frequentes
Medida e coluna calculada usam a mesma linguagem? Sim, ambas são escritas em DAX. A diferença não está na sintaxe, e sim em quando são avaliadas e onde o resultado vive: a coluna no refresh e armazenada, a medida na consulta e sem armazenamento.
Por que dizem para preferir medida? Porque a medida quase não ocupa espaço e respeita o contexto de filtro do usuário. Isso a torna a escolha natural para qualquer agregação ou indicador de negócio que precise reagir aos filtros da tela.
Quando a coluna calculada é a escolha certa? Quando você precisa do valor em cada linha para filtrar, segmentar, ordenar ou criar relacionamento, e esse valor é estável, ou seja, não depende do que o usuário selecionar no relatório.
Coluna calculada deixa o modelo mais pesado? Pode deixar, sim. Como o resultado é armazenado linha a linha, uma coluna com muitos valores distintos em uma tabela grande consome espaço e memória, e ainda alonga o tempo de refresh.
Posso somar uma coluna calculada? Pode, mas muitas vezes não deveria. Se a intenção final é agregar, geralmente é melhor uma medida com uma função como SUMX, que faz a conta na hora sem gravar nada no modelo.
Contexto de linha e contexto de filtro, qual é a diferença? O contexto de linha é o da coluna calculada: ela enxerga os valores de uma linha por vez. O contexto de filtro é o da medida: ela enxerga o conjunto de dados filtrado pela visualização em que aparece.
Decida pelo comportamento, não pelo resultado do teste
Duas abordagens podem mostrar o mesmo número em um teste e se comportar de forma completamente diferente quando o usuário começa a filtrar. Escolha pela regra: agregou ou comparou, é medida; descreveu a linha para filtrar, é coluna. Se quiser um modelo enxuto e confiável desde o começo, 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