Cripto no Imposto de Renda: custo médio sem chute
Cripto no Imposto de Renda: como declarar, quando a venda é isenta e como calcular o custo médio com planilha e script, conforme as regras da Receita em 2026.
Março, programa da declaração aberto, e a ficha pede o custo da moeda que está na sua carteira. Você comprou em três vezes, trocou uma parte por outra moeda e recebeu um pouco de mineração. Não anotou nada. A resposta curta: cripto não é invisível para o fisco só porque não passou pelo banco, e a declaração depende de um registro com data, quantidade, origem e valor em reais de cada entrada e saída. Com esse registro, o custo médio sai numa conta simples. Sem ele, a declaração vira chute.
Este guia mostra como a Receita Federal trata criptoativos no Imposto de Renda, como montar o registro, como calcular o custo médio com um exemplo e quais perguntas levar ao contador. As regras citadas foram conferidas no Perguntas e Respostas IRPF 2026 da Receita, em outubro de 2026. Ele não diz quanto você deve pagar, porque isso depende do seu caso e da regra vigente no ano. Isto não substitui um contador ou profissional habilitado.
Por que o rastro importa mais que a cotação de hoje
A declaração de bens trabalha com custo de aquisição, não com valor de mercado. O saldo que aparece no aplicativo da corretora em 31 de dezembro não é o número que vai para a ficha de bens. O que vai é quanto você pagou, em reais, pela quantidade que ainda tem. E a forma usual de chegar a esse número, quando você compra o mesmo ativo em várias datas, é o custo médio ponderado.
O ganho na venda também depende disso. Se você vende parte do saldo, o resultado é o valor de venda menos o custo médio da quantidade vendida. Sem saber o custo, não há como saber se houve ganho, quanto foi, nem se alguma obrigação nasceu naquele mês.
E o fato de não ter sacado para o banco não muda isso. A Receita diz expressamente que, quando uma criptomoeda é usada diretamente para comprar outra, o ganho de capital é tributado mesmo sem conversão para reais, pelo valor de mercado na data da troca. Esse é o erro mais comum: declarar zero porque "não saquei".
Cripto no Imposto de Renda: o que diz a regra vigente
Na ficha de Bens e Direitos
Criptoativos vão na ficha Bens e Direitos, no Grupo 08 – Criptoativos, pelo valor de aquisição, quando o custo de cada tipo de criptoativo for igual ou superior a R$ 5.000,00. Os códigos são 01 (Bitcoin), 02 (outras criptomoedas, as altcoins), 03 (stablecoins), 10 (NFTs) e 99 (outros criptoativos). Na discriminação vão o tipo, a quantidade e onde está custodiado (nome da empresa com CNPJ ou custódia própria). Tipos diferentes viram itens separados.
Na venda: corretora no Brasil ou no exterior muda tudo
- Custodiado ou negociado por instituição no Brasil: o total vendido no mês, somando todos os criptoativos, até R$ 35.000,00 é isento. Acima disso, o ganho de todas as vendas do mês é tributado como ganho de capital, com alíquotas progressivas, e o imposto é pago por DARF (código 4600) até o último dia útil do mês seguinte.
- Custodiado ou negociado por instituição no exterior: desde 1º/01/2024, pela Lei 14.754/2023, esses ativos são tratados como aplicação financeira no exterior. O ganho entra na Declaração de Ajuste Anual com alíquota de 15%, e não há isenção dos R$ 35 mil.
- Autocustódia (carteira própria): segundo a Receita, a sua residência define se o ativo é considerado no Brasil ou no exterior.
Houve propostas de mudança nessas regras nos últimos anos, por isso confira sempre a versão do Perguntas e Respostas do ano em que a operação aconteceu.
O reporte mensal de operações
Além da declaração anual, quem opera em corretora no exterior ou fora de corretora precisa informar certas operações à Receita. Essa obrigação seguia a IN RFB 1.888/2019 e, desde 1º/07/2026, passou para a DeCripto, criada pela IN RFB 2.291/2025. Os limites, prazos e o leiaute estão na página de criptoativos da Receita Federal. Quem opera fora de corretora nacional precisa perguntar especificamente sobre isso ao contador.
Como montar o registro
- Uma linha por operação: compra, venda, troca, recebimento de mineração, transferência entre carteiras.
- Colunas mínimas: data, tipo, ativo, quantidade, valor em reais na data, origem ou corretora e referência do comprovante.
- Troca vira duas linhas: uma saída da moeda entregue e uma entrada da moeda recebida, ambas com o valor em reais naquele dia.
- Transferência entre carteiras suas não é venda: registre para manter o rastro, mas sem valor de saída.
- Guarde o comprovante: extrato ou relatório da corretora com data. Print de cotação sem data não serve.
- Atualize todo mês: reconstruir um ano em abril é onde os erros aparecem.
O exemplo: três operações de bitcoin
Valores fictícios, num arquivo cripto.csv:
data,tipo,ativo,quantidade,valor_brl,origem 2026-01-10,compra,BTC,0.05,15000.00,corretora X 2026-02-15,compra,BTC,0.03,12000.00,corretora X 2026-03-20,venda,BTC,0.04,16000.00,corretora X
Depois das duas compras, você tem 0,08 BTC com custo total de R$ 27.000,00. O custo médio é R$ 27.000 ÷ 0,08 = R$ 337.500,00 por BTC. Na venda de 0,04 BTC, o custo dessa quantidade é 0,04 × 337.500 = R$ 13.500,00. O resultado da venda é R$ 16.000 − R$ 13.500 = R$ 2.500,00. Ficam 0,04 BTC com custo de R$ 13.500,00, que é o valor que o registro mostra para a ficha de bens, e não a cotação de dezembro.
Neste exemplo, o total vendido em março foi R$ 16.000,00. Se a moeda está em corretora no Brasil, esse valor fica abaixo do limite mensal de isenção explicado acima. Se estivesse numa corretora no exterior, o ganho de R$ 2.500,00 entraria na declaração anual, sem isenção.
Um script para não fazer a conta à mão
Este script em Python lê o CSV na ordem das datas e aplica o custo médio. Ele usa Decimal para evitar erro de arredondamento de ponto flutuante:
import csv
import sys
from decimal import Decimal
CENTAVO = Decimal("0.01")
def processar(caminho):
saldo = Decimal("0")
custo_total = Decimal("0")
with open(caminho, newline="", encoding="utf-8") as arquivo:
for linha in csv.DictReader(arquivo):
qtd = Decimal(linha["quantidade"])
valor = Decimal(linha["valor_brl"])
if linha["tipo"] in ("compra", "recebimento"):
saldo += qtd
custo_total += valor
elif linha["tipo"] == "venda":
if qtd > saldo:
raise ValueError(f"venda maior que o saldo em {linha['data']}")
custo_saida = (custo_total / saldo * qtd).quantize(CENTAVO)
print(f"{linha['data']}: venda de {qtd}, custo {custo_saida}, resultado {valor - custo_saida}")
saldo -= qtd
custo_total -= custo_saida
print(f"saldo final {saldo}, custo {custo_total.quantize(CENTAVO)}")
if __name__ == "__main__":
processar(sys.argv[1])
Com o arquivo acima, a saída mostra a venda com custo 13500.00 e resultado 2500.00, e o saldo final de 0.04 com custo 13500.00. Um script separado por ativo, ou um filtro pela coluna ativo, evita misturar moedas diferentes no mesmo custo médio.
E a mineração?
Na linha de recebimento por mineração, o valor que entra como custo é justamente uma das perguntas para o contador. O script usa o número que você colocar ali. O que você pode fazer sozinho é anotar a data, a quantidade e a cotação em reais do dia, e guardar os gastos com equipamento e energia com nota fiscal. Não invente um custo de energia em abril. Se a dúvida é se a mineração compensa, a conta está no post hash rate não é lucro.
Erros comuns
- Declarar zero porque não sacou para o banco: vendas e trocas podem ter gerado obrigação, e a omissão aparece depois, com acréscimos.
- Informar o valor de mercado em 31 de dezembro na ficha de bens: o campo pede custo, e o número errado contamina as declarações seguintes.
- Esquecer as trocas entre moedas: o custo médio da moeda recebida fica errado e o ganho da moeda entregue some do registro.
- Misturar ativos diferentes no mesmo custo médio: cada criptoativo tem seu próprio saldo e custo.
- Guardar print de cotação sem data: não comprova nada se alguém perguntar.
- Usar a regra de um ano anterior: a legislação muda, e o cálculo correto em um ano pode estar errado no outro.
- Aplicar a isenção de R$ 35 mil a corretora estrangeira: desde 2024, ativo no exterior não tem essa isenção.
Checklist
- Existe um registro com uma linha por operação, com data, quantidade e valor em reais.
- Trocas entre moedas estão registradas como saída e entrada.
- O custo médio de cada ativo foi calculado e bate com o saldo atual.
- Os comprovantes da corretora estão guardados com data.
- Você sabe quais meses tiveram vendas e o total vendido em cada um.
- Você sabe quais moedas estão em corretora no Brasil, no exterior ou em carteira própria.
- A regra do ano foi conferida em fonte oficial ou com o contador.
- Gastos de mineração estão documentados com nota, se for o seu caso.
Depois da planilha: o resto da declaração
O custo médio de cripto é só uma ficha. Se você também investe em ações e fundos imobiliários, o mesmo problema de registro aparece em cada compra, venda e provento. O Clarus, sistema de finanças da DevBras, organiza despesas, receitas e carteira e gera relatórios de IR de ações e FIIs, e assim sobra menos coisa para reconstruir em abril. Depois de entregar a declaração, guarde o recibo e os comprovantes como explicamos em recibo do Imposto de Renda.
Você consegue dizer, hoje, o custo em reais da moeda que ainda está na sua carteira? Se não, o próximo passo é a planilha, não o formulário. E a pergunta para levar ao contador é: quais das minhas operações deste ano já geraram alguma obrigação?
Referência: https://impostoderendarestituicao.com.br/irpf/como-declarar-imposto-de-mineracao-de-criptomoeda/