Cálculo do Custo de Mercadoria: Método Custo Médio Ponderado

Neste tutorial, vamos aprender a calcular o custo de mercadorias utilizando o método Custo Médio Ponderado (CMP), amplamente adotado em sistemas ERP para o controle de estoque. O CMP considera o custo total das mercadorias em estoque e a quantidade de unidades, resultando em um preço médio para cada unidade de produto — e, para refletir a realidade fiscal brasileira, esse custo total precisa considerar corretamente ICMS, IPI, PIS/COFINS e ICMS-ST em cada entrada.
📝 Resumo do Artigo
- A cada entrada (compra), o CMP é recalculado:
Custo Médio Unitário = Custo Total do Estoque ÷ Quantidade Total em Estoque. - O Custo Total de cada entrada deve usar o custo de aquisição líquido de impostos recuperáveis: valor da mercadoria + frete/seguro + IPI e ICMS-ST não recuperáveis − ICMS e PIS/COFINS recuperáveis.
- Um mesmo preço de compra gera CMP diferente conforme o regime tributário do comprador (Simples Nacional vs. Lucro Real/Presumido), porque muda o que é crédito e o que é custo.
- As saídas (vendas) não alteram o CMP — apenas usam o valor vigente para baixar o estoque.
- Um exemplo prático com 4 movimentações detalha ICMS, PIS/COFINS, IPI, ICMS-ST e frete em cada entrada, mostrando o recálculo do CMP líquido de impostos a cada compra e sua estabilidade nas saídas.
- O CMP é comparado ao PEPS/FIFO, e explicamos por que o UEPS/LIFO não é aceito fiscalmente no Brasil.
- Uma implementação em JavaScript mostra como aplicar a lógica em um controle de estoque simples, incluindo tratamento de erro e o cuidado de alimentar a função com o custo de aquisição já líquido de impostos.
📐 Regras do Cálculo de Custo Médio Ponderado
O Custo Médio Ponderado é utilizado para calcular o custo das mercadorias vendidas e o valor do estoque. Ele leva em consideração a média ponderada entre os custos de aquisição de mercadorias em diferentes momentos. Este método é ideal para empresas que realizam compras com preços variados ao longo do tempo e desejam manter a simplicidade e a precisão nos cálculos de estoques e custos.
No método CMP, o custo médio é recalculado a cada entrada de mercadorias, enquanto as saídas utilizam o custo médio vigente no momento da venda. Isso garante que o valor do estoque reflita o custo real das mercadorias adquiridas.
💰 Impostos e o Custo da Mercadoria
O valor do ICMS e do IPI faz parte do custo da mercadoria quando a empresa não pode recuperar o imposto (não gera crédito fiscal); caso contrário, se forem recuperáveis, eles são lançados em contas de ativo e não compõem o custo de aquisição do estoque.
Quando o ICMS faz parte ou não do custo?
Faz parte do custo (Não recuperável):
Quando a empresa compradora é optante pelo Simples Nacional (em regra, não se apropria de créditos de ICMS) ou quando a mercadoria é adquirida sem direito ao crédito fiscal conforme a legislação estadual. O valor do imposto fica embutido no valor da compra e soma-se ao custo da mercadoria.
Não faz parte do custo (Recuperável):
Quando a empresa compradora é contribuinte do ICMS no regime normal (Lucro Real ou Lucro Presumido) e adquire mercadorias para revenda ou industrialização. O ICMS destacado na nota fiscal é registrado em uma conta de ICMS a Recuperar no Ativo Circulante, abatendo-se do valor pago.
Quando o IPI faz parte ou não do custo?
Faz parte do custo:
- Quando a empresa adquire mercadorias para uso, consumo ou ativo imobilizado (o adquirente não vai revender o item, logo não há crédito de IPI).
- Quando uma empresa comercial (não industrial) compra mercadorias de uma indústria para revenda: como o estabelecimento comercial não é contribuinte do IPI, ele não pode se creditar desse imposto, fazendo com que o IPI destacado na Nota Fiscal integre obrigatoriamente o custo de aquisição do estoque.
Não faz parte do custo:
Quando a empresa adquirente é um estabelecimento industrial (ou equiparado) que compra insumos, matérias-primas ou produtos para industrialização/revenda onde há direito de aproveitamento do crédito do IPI (sistema de não-cumulatividade). O valor é lançado como IPI a Recuperar
Quando o PIS/COFINS entram no custo?
- Regime não cumulativo (empresas no Lucro Real, em regra): o PIS e a COFINS destacados na aquisição geram crédito (alíquotas usuais de 1,65% e 7,6%, respectivamente, sobre o valor da compra, conforme a Lei nº 10.637/2002 e a Lei nº 10.833/2003). Assim como o ICMS recuperável, esse valor não compõe o custo da mercadoria — é registrado como PIS/COFINS a Recuperar.
- Regime cumulativo (empresas no Lucro Presumido, em regra) e Simples Nacional: não há apropriação de créditos de PIS/COFINS sobre a compra. O tributo já está embutido no preço pago ao fornecedor e, portanto, integra o custo de aquisição.
Por que o ICMS-ST quase sempre vira custo?
O ICMS-ST (Substituição Tributária) é recolhido antecipadamente pelo fornecedor/industrial, em nome de toda a cadeia até o consumidor final, e destacado na nota fiscal como valor adicional ao ICMS próprio. Para o comerciante que compra a mercadoria já com ICMS-ST retido, esse valor não gera crédito (o imposto da revenda futura já foi recolhido) e, por isso, soma-se ao custo de aquisição do estoque — independentemente do regime tributário do comprador.
Fórmula do Custo de Aquisição com Impostos
Para alimentar corretamente o CMP, o Custo Total de cada entrada não deve ser apenas Quantidade × Preço Unitário da nota fiscal — ele precisa refletir o custo de aquisição líquido, considerando os tributos recuperáveis e não recuperáveis:
Custo de Aquisição = Valor da Mercadoria
+ Frete e Seguro (por conta do comprador)
+ IPI não recuperável
+ ICMS-ST
− ICMS recuperável
− PIS/COFINS recuperável (regime não cumulativo)
Esse Custo de Aquisição — e não o valor “cheio” da nota fiscal — é que entra na fórmula do Custo Médio Unitário (Custo Total do Estoque ÷ Quantidade Total em Estoque). Quando os tributos são todos recuperáveis (empresa no Lucro Real, mercadoria sem ST), o Custo de Aquisição tende a se aproximar do valor sem os impostos; quando não há direito a crédito (Simples Nacional, ou incidência de ST), o Custo de Aquisição se aproxima do valor total da nota, incluindo os tributos.
Exemplo comparativo: mesmo fornecedor, regimes tributários diferentes
Duas empresas compram o mesmo lote do fornecedor, pelo mesmo valor de nota fiscal, mas com resultado de custo bem diferente por causa do regime tributário:
Dados da compra (nota fiscal):
| Item | Valor |
|---|---|
| Quantidade | 100 unidades |
| Valor da mercadoria | R$ 100.000,00 |
| ICMS destacado (18%) | R$ 18.000,00 |
| IPI destacado (10%) | R$ 10.000,00 |
| Frete por conta do comprador | R$ 2.000,00 |
| PIS/COFINS embutido (referência, 9,25%) | R$ 9.250,00 |
Empresa A — Lucro Real, comércio, sem ST, aproveita créditos de ICMS e PIS/COFINS não cumulativo:
Custo de Aquisição = 100.000,00 + 2.000,00 (frete) + 10.000,00 (IPI, não recuperável no comércio)
− 18.000,00 (ICMS recuperável) − 9.250,00 (PIS/COFINS recuperável)
= R$ 84.750,00
Custo Médio Unitário = 84.750,00 ÷ 100 = R$ 847,50
Empresa B — Simples Nacional, sem apropriação de nenhum crédito:
Custo de Aquisição = 100.000,00 + 2.000,00 (frete) + 10.000,00 (IPI, não recuperável)
= R$ 112.000,00
Custo Médio Unitário = 112.000,00 ÷ 100 = R$ 1.120,00
O mesmo lote de mercadoria gera um Custo Médio Unitário 32% maior para a Empresa B, simplesmente porque ela não recupera ICMS nem PIS/COFINS. Usar o valor “cheio” da nota fiscal (sem considerar a recuperação de créditos) na Empresa A superestimaria o custo e distorceria a margem de lucro calculada sobre o preço de venda.
Se a mercadoria tivesse ICMS-ST retido (por exemplo, R$ 6.000,00): esse valor se somaria ao Custo de Aquisição de ambas as empresas (A e B), pois o ICMS-ST não gera crédito para o revendedor — ficando, no caso da Empresa A, em R$ 90.750,00 (Custo Médio Unitário de R$ 907,50).
Reforma Tributária (IBS/CBS): durante a transição (2026–2033) e no regime pleno do IBS/CBS, o princípio muda de “o que é recuperável não compõe o custo” para “o crédito segue o destaque na operação e o pagamento efetivo do tributo” (não cumulatividade plena, conforme a Lei Complementar nº 214/2025). Na prática, o exercício acima continua válido como lógica de cálculo: sempre que a empresa tem direito a crédito integral de IBS/CBS sobre a compra para revenda, esses valores não compõem o Custo de Aquisição; quando não há direito a crédito (por exemplo, revenda para consumidor final isento, ou enquadramento em regime específico sem apropriação), o tributo se soma ao custo, exatamente como ocorre hoje com o ICMS não recuperável.
🧾 Passo a Passo para o Cálculo do Custo Médio
Entradas (Compras)
- Quando uma nova remessa de mercadorias é comprada, o custo total da remessa é somado ao custo do estoque existente.
- O Custo Médio Unitário é recalculado pela fórmula:
Custo Médio Unitário = Custo Total do Estoque ÷ Quantidade Total em Estoque
Saídas (Vendas)
- As saídas de mercadorias não afetam diretamente o Custo Médio Unitário, já que o cálculo considera apenas as entradas.
- Quando uma mercadoria é vendida, o custo da mercadoria vendida é determinado pelo Custo Médio Unitário no momento da venda.
Custo Total das Saídas = Quantidade Vendida × Custo Médio Unitário
Atualização do Estoque
Após cada entrada ou saída, o estoque é atualizado, e o Custo Médio Unitário é recalculado com base na nova quantidade total e no custo total das mercadorias em estoque.
📦 Exemplo Prático: Loja de Eletrônicos
Produto: Smartphone Modelo X — empresa no Lucro Real (aproveita crédito de ICMS e de PIS/COFINS não cumulativo; IPI não recuperável, por ser estabelecimento comercial, não industrial).
Cada entrada abaixo detalha a nota fiscal (valor da mercadoria, ICMS, PIS/COFINS, IPI, ICMS-ST e frete) e chega ao Custo Líquido, que é o valor efetivamente somado ao estoque — aplicando a fórmula Custo de Aquisição = Valor da Mercadoria + Frete + IPI + ICMS-ST − ICMS recuperável − PIS/COFINS recuperável apresentada na seção anterior.
1. Entradas de Mercadorias (Compras)
Tabela de Entradas com Detalhamento Tributário
| Data | Quantidade | Valor Mercadoria | ICMS 18% (−) | PIS/COFINS 9,25% (−) | IPI 10% (+) | Frete (+) | Custo Líquido | Custo Unitário Líquido |
|---|---|---|---|---|---|---|---|---|
| 01/06 | 100 | R$ 100.000,00 | R$ 18.000,00 | R$ 9.250,00 | R$ 10.000,00 | R$ 2.000,00 | R$ 84.750,00 | R$ 847,50 |
| 05/06 | 200 | R$ 220.000,00 | R$ 39.600,00 | R$ 20.350,00 | R$ 22.000,00 | R$ 3.000,00 | R$ 185.050,00 | R$ 925,25 |
Cálculo (01/06):
Custo Líquido = 100.000,00 − 18.000,00 (ICMS) − 9.250,00 (PIS/COFINS) + 10.000,00 (IPI) + 2.000,00 (frete)
= R$ 84.750,00
Custo Unitário Líquido = 84.750,00 ÷ 100 = R$ 847,50
Cálculo (05/06):
Custo Líquido = 220.000,00 − 39.600,00 (ICMS) − 20.350,00 (PIS/COFINS) + 22.000,00 (IPI) + 3.000,00 (frete)
= R$ 185.050,00
Custo Unitário Líquido = 185.050,00 ÷ 200 = R$ 925,25
Saldo após as duas entradas:
- Quantidade: 100 + 200 = 300 unidades
- Custo Total (líquido de impostos): 84.750,00 + 185.050,00 = R$ 269.800,00
- CMP: 269.800,00 ÷ 300 = R$ 899,33
2. Saída de Mercadorias (Vendas)
Tabela de Saída
| Data | Tipo | Quantidade | Custo Médio Unitário | Custo Total Saída | Saldo Quantidade | Saldo Custo Total |
|---|---|---|---|---|---|---|
| 10/06 | Saída | 150 | R$ 899,33 | R$ 134.900,00 | 150 | R$ 134.900,00 |
Cálculo:
- Custo Total das Saídas: 150 × 899,33 = R$ 134.900,00 (impostos não incidem sobre a baixa — o custo já foi apurado líquido na entrada)
- Custo Total Estoque: 269.800,00 – 134.900,00 = R$ 134.900,00
- CMP permanece R$ 899,33
3. Nova Entrada de Mercadorias (com ICMS-ST)
Esta remessa inclui ICMS-ST de R$ 4.000,00 (mercadoria sujeita à Substituição Tributária), que não gera crédito e se soma ao custo, independentemente do regime tributário.
Tabela de Saldo + Entrada com Detalhamento Tributário
| Data | Tipo | Quantidade | Valor Mercadoria | ICMS 18% (−) | PIS/COFINS 9,25% (−) | IPI 10% (+) | ICMS-ST (+) | Frete (+) | Custo Líquido | Saldo Quantidade | Saldo Custo Total | CMP |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 15/06 | Saldo Antes da Entrada | 150 | — | — | — | — | — | — | — | 150 | R$ 134.900,00 | R$ 899,33 |
| 15/06 | Entrada | 100 | R$ 120.000,00 | R$ 21.600,00 | R$ 11.100,00 | R$ 12.000,00 | R$ 4.000,00 | R$ 1.500,00 | R$ 104.800,00 | 250 | R$ 239.700,00 | R$ 958,80 |
Cálculo:
Custo Líquido = 120.000,00 − 21.600,00 (ICMS) − 11.100,00 (PIS/COFINS)
+ 12.000,00 (IPI) + 4.000,00 (ICMS-ST) + 1.500,00 (frete)
= R$ 104.800,00
- Quantidade: 150 + 100 = 250 unidades
- Custo Total Estoque: 134.900,00 + 104.800,00 = R$ 239.700,00
- CMP: 239.700,00 ÷ 250 = R$ 958,80
4. Nova Saída de Mercadorias
Tabela da Saída
| Data | Tipo | Quantidade | Custo Médio Unitário | Custo Total Saída | Saldo Quantidade | Saldo Custo Total |
|---|---|---|---|---|---|---|
| 20/06 | Saída | 100 | R$ 958,80 | R$ 95.880,00 | 150 | R$ 143.820,00 |
Cálculo:
- Quantidade: 250 – 100 = 150 unidades
- Custo Total Estoque: 239.700,00 – 95.880,00 = R$ 143.820,00
- CMP permanece R$ 958,80
📊 Tabela Resumo de Movimentações
| Data | Movimentação | Quantidade | Custo Unitário Líquido (R$) | Custo Total (R$) | Saldo Quantidade | Saldo Custo Total (R$) | Custo Médio Unitário |
|---|---|---|---|---|---|---|---|
| 01/06 | Entrada | 100 | 847,50 | 84.750,00 | 100 | 84.750,00 | 847,50 |
| 05/06 | Entrada | 200 | 925,25 | 185.050,00 | 300 | 269.800,00 | 899,33 |
| 10/06 | Saída | 150 | 899,33 | 134.900,00 | 150 | 134.900,00 | 899,33 |
| 15/06 | Entrada | 100 | 1.048,00 | 104.800,00 | 250 | 239.700,00 | 958,80 |
| 20/06 | Saída | 100 | 958,80 | 95.880,00 | 150 | 143.820,00 | 958,80 |
📌 Resumo Final do Estoque
| Indicador | Valor |
|---|---|
| Saldo Final (unidades) | 150 |
| Custo Médio Unitário | R$ 958,80 |
| Valor Total do Estoque | R$ 143.820,00 |
🧩 Explicação das Colunas
- Movimentação: Indica se foi entrada (compra) ou saída (venda).
- Valor Mercadoria: Valor da mercadoria destacado na nota fiscal, sem impostos.
- ICMS / PIS/COFINS (−): Tributos recuperáveis nesta empresa (Lucro Real) — reduzem o custo, pois viram crédito no Ativo Circulante.
- IPI / ICMS-ST (+): Tributos não recuperáveis para o comerciante — somam-se ao custo de aquisição.
- Custo Líquido / Custo Unitário Líquido: Valor que efetivamente entra no cálculo do CMP, já ajustado pelos impostos.
- Saldo Quantidade: Quantidade restante em estoque.
- Saldo Custo Total: Valor total do estoque (líquido de impostos) após a movimentação.
- Custo Médio Unitário: Custo médio recalculado após cada entrada — as saídas não têm impostos a considerar, pois o custo líquido já foi apurado no momento da compra.
🔄 CMP vs. PEPS (FIFO): Qual Método Escolher?
O Custo Médio Ponderado não é o único método de controle de estoque. A alternativa mais comum no Brasil é o PEPS/FIFO (Primeiro que Entra, Primeiro que Sai), que baixa o estoque pelo custo do lote mais antigo, em vez de uma média.
| Critério | Custo Médio Ponderado (CMP) | PEPS (FIFO) |
|---|---|---|
| Como recalcula o custo | A cada entrada, recalcula a média de todo o estoque | Não recalcula — cada lote mantém seu próprio custo até esgotar |
| Complexidade de implementação | Mais simples (uma única variável de custo unitário) | Mais complexa (fila de lotes com custos distintos) |
| Aceito para fins fiscais no Brasil | Sim | Sim |
| Sensibilidade a variação de preços | Suaviza oscilações — bom para produtos com preço de compra instável | Reflete mais rápido o custo real de reposição em cenários de alta ou baixa de preços |
Importante: o método UEPS/LIFO (Último que Entra, Primeiro que Sai), comum em outros países, não é aceito pela legislação fiscal e contábil brasileira para fins de apuração de resultado — mencionamos aqui apenas para deixar claro por que ele não aparece como alternativa válida no Brasil.
Na prática, a escolha entre CMP e PEPS costuma ser definida pelo próprio ERP disponível e por exigências do regime tributário da empresa; a maioria dos pequenos e médios negócios brasileiros opera com CMP pela simplicidade operacional.
🧮 Implementando o Cálculo em Código
Se você está construindo um controle de estoque simples (uma planilha automatizada, um pequeno sistema interno), a lógica do CMP pode ser resumida em poucas linhas:
function registrarEntrada(estoque, quantidade, precoUnitario) {
const custoTotalEntrada = quantidade * precoUnitario;
const novaQuantidade = estoque.quantidade + quantidade;
const novoCustoTotal = estoque.custoTotal + custoTotalEntrada;
return {
quantidade: novaQuantidade,
custoTotal: novoCustoTotal,
custoMedioUnitario: novoCustoTotal / novaQuantidade,
};
}
function registrarSaida(estoque, quantidade) {
if (quantidade > estoque.quantidade) {
throw new Error("Quantidade de saída maior que o saldo em estoque.");
}
const custoTotalSaida = quantidade * estoque.custoMedioUnitario;
return {
quantidade: estoque.quantidade - quantidade,
custoTotal: estoque.custoTotal - custoTotalSaida,
custoMedioUnitario: estoque.custoMedioUnitario, // não muda em saídas
};
}
Repare que registrarSaida lança um erro quando a quantidade solicitada excede o saldo — um caso de borda fácil de esquecer, mas que evita que o estoque fique negativo por uma falha de digitação ou uma venda registrada em duplicidade.
Nota sobre impostos: o precoUnitario passado para registrarEntrada não deve ser o preço bruto da nota fiscal — ele precisa refletir o Custo de Aquisição líquido apresentado na seção “Impostos e o Custo da Mercadoria”: valor da mercadoria + frete/seguro + IPI e ICMS-ST não recuperáveis − ICMS e PIS/COFINS recuperáveis, tudo dividido pela quantidade. Ignorar essa etapa e usar o preço bruto da nota superestima o Custo Médio Unitário em empresas que recuperam crédito, ou o subestima em empresas que não recuperam — distorcendo a margem de lucro calculada em ambos os casos.
🎯 Para que Serve o Cálculo do Custo Médio na Prática
O CMP não é apenas um exercício de planilha — ele sustenta decisões financeiras e fiscais reais dentro de uma empresa:
- Apuração do CMV: o Custo da Mercadoria Vendida, calculado a partir do CMP, impacta diretamente o lucro bruto e a margem de contribuição em relatórios gerenciais e na DRE.
- Precificação: conhecer o custo médio real evita vender abaixo do custo quando há variação de preços entre fornecedores ou lotes de compra.
- Valorização contábil do estoque: o CPC 16 — Estoques exige um critério consistente de custo para o Balanço Patrimonial, e o CMP atende essa exigência.
- Simplicidade operacional em ERPs: por manter uma única variável de custo unitário por produto (em vez de uma fila de lotes, como no PEPS/FIFO), o CMP reduz a complexidade de implementação — motivo pelo qual é o método mais adotado entre pequenas e médias empresas no Brasil.
- Relevância na Reforma Tributária (IBS/CBS): o custo de aquisição corretamente apurado continua sendo a base para o cálculo de margens e créditos tributários, tornando o CMP igualmente relevante no novo modelo de apuração.
✔️ Conclusão
Este tutorial demonstrou como calcular o Custo Médio Ponderado para entradas e saídas de mercadorias, mantendo o controle eficiente do estoque e dos custos. Com essas informações, é possível tomar decisões mais informadas sobre preços e margens de lucro.
Fontes para Referências
consulte o Pronunciamento Técnico CPC 16 — Estoques. A aplicação contábil deve considerar as normas vigentes e a realidade da empresa.
Comentários
Seja o primeiro a comentar!
Deixe seu comentário