Crypto Tax Recordkeeping: Cost Basis, Exchanges, Fees and Ledgers
The hardest tax problem is often not today’s calculation but proving whether a transaction months ago was a purchase, sale, exchange, self-transfer, reward or fee. Exchange CSV files do not cover every self-custody, DeFi, bridge, NFT, staking and gas event. This guide preserves raw evidence and normalizes timezone, asset identity, quantity, fair value, fees, transaction hash and purpose into one event ledger.
Who this guide is for: People reconciling multiple exchanges, wallets and protocols, including Japan-based individual taxpayers
Key points to understand first
- Tax treatment changes by residence, entity, purpose and year; verify current authority guidance and professional advice.
- Preserve raw CSVs, statements, transaction data, receipts, rates and time zones separately from the working ledger.
- Crypto exchanges, spending, rewards, airdrops and fees can be relevant tax events and need explicit classification.
- Reconcile self-transfers through address ownership to avoid double counting and lost cost basis.
Connect the original transaction to the reviewed ledger
- T0Order or contract
Order ID, pair, side, amount and fee schedule
- T1Fill or on-chain event
Execution, timestamp, transaction and address
- T2Fair-value conversion
Tax-currency rate, source and timezone
- T3Event classification
Acquisition, disposal, transfer, income or fee
- T4Cost-basis calculation
Method, opening, activity, closing and rounding
- T5Review and retention
Variance, unknowns, approval and version
A tax ledger is an evidence chain for events, not merely a price table
Crypto tax records should reconstruct who exchanged which asset, when, in what quantity, for what consideration, with which fees and at what value in the tax currency. Japan’s National Tax Agency provides current guidance and worksheets, but treatment changes with business context, entity, NFTs, staking, foreign tax and legislative year. This page designs records and is not tax advice.
Confirm current authority material, residence, tax year and selected valuation method with a qualified professional. Expanded service-provider reporting under CARF does not eliminate the taxpayer’s own records. Third-party reporting can differ from a personal ledger, so reconcile account IDs, tax residence and asset mappings.
| Event | Economic substance | Evidence |
|---|---|---|
| Fiat purchase | Fiat exchanged for crypto | Order/fill, cash movement, fee and rate |
| Sale or spending | Crypto exchanged for fiat or goods | Proceeds, basis, fee and counterparty |
| Crypto-to-crypto | Possible disposal and acquisition | Both quantities, value, pair and fee |
| Self-wallet transfer | Possible same-owner movement | Address control, transaction and fee |
| Reward or airdrop | Potential income on receipt or control | Condition, time, value and availability |
Confirm the formal classification under the applicable law.
Preserve CSV, statements and on-chain evidence before transformation
Download exchange CSVs, annual statements, deposit and withdrawal histories, fee reports and reward reports by period. Name files with provider, account code, period, download date, timezone and version. Store originals read-only. Perform transformations in separate files and retain import-script and mapping versions. Export regularly because a discontinued service may not remain accessible.
For self-custody, preserve public address, network, contract, transaction hash, block time, from/to, token movements and gas. Explorer labels and fiat conversions can change, so keep raw transaction data separate from enrichment. Screenshots are not machine-readable enough; CSV alone does not prove wallet ownership or purpose.
- Raw file: Preserve provider output with hash and download date.
- Mapping: Map provider symbols to network, contract and tax asset ID.
- Ownership: Classify self, shared, business and third-party wallets.
- Evidence URL: Save explorer and official terms with access date.
Fix contract, timezone and rate source instead of relying on a ticker
The same ticker can exist on several networks, and migrations leave old and new contracts. Include network, contract, decimals and issuer in the tax asset ID. Do not automatically merge wrapped tokens or liquid-staking receipts with the underlying. A bridge event may be a transfer, exchange or mint/burn depending on evidence and local law.
Align exchange timestamps, block time, bank statements and the local tax-day boundary. Mixing UTC with JST can move a year-end event. Choose and document an accepted conversion source and whether it uses transaction price, bid, ask, mid or daily close.
fiat value = asset quantity × selected asset/fiat ratecross rate = asset/quote × quote/tax-currency raterecord key = event ID + UTC time + local time + source + rate versionPermitted rates and valuation times depend on jurisdiction and event.Version the method, opening balance, fees and rounding
Japan’s NTA materials cover total-average and moving-average methods for individuals and related forms. Preserve the selected or filed method, opening units and value, acquisitions, disposals and ending units for each asset. Do not switch method opportunistically during a year; check formal change procedures. Corporate and other-jurisdiction rules differ.
In a fictional moving-average example, two units at USD 20,000 average are followed by a purchase of 0.5 at USD 30,000 plus a USD 10 fee included in basis. New average = (40,000 + 15,000 + 10) ÷ 2.5 = USD 22,004. Whether the fee belongs in basis and the recognition time require tax confirmation.
ending units = opening + acquisitions + income − disposals − outgoing fees ± adjustmentsnew moving average = (opening cost + acquisition cost + included fees) ÷ units after acquisitionrealized gain ≈ proceeds − allocated basis − allowable disposal costsConfirm the exact formula, fee treatment, income class and rounding.Do not collapse staking, DeFi, bridges and NFTs into one net row
A staking reward may raise questions about accrual, claim or when it becomes freely disposable. Liquid-staking receipts, interest-bearing tokens, LP tokens and bridged tokens can be transfers, exchanges, deposits or income under different rules. Do not classify by protocol name alone.
One transaction can contain approval, swap, liquidity deposit, reward claim and gas. Decompose token transfers, internal calls and event logs. Determine how gas is allocated, how failed-transaction fees are treated and whether paying a fee in the native token is a disposal. First establish the technical meaning through the DeFi contract and approval guide.
| Field | Example | Purpose |
|---|---|---|
| Protocol action | Stake, claim, swap, bridge, mint or burn | Describe economics rather than UI label |
| Assets in/out | Network, contract, units and decimals | Keep receipts and wrapped assets distinct |
| Control change | Available, locked or collateralized | Support recognition analysis |
| Fee allocation | Gas, protocol, provider and impact | Avoid omissions or double deductions |
| Evidence | Transaction, logs, terms and price | Enable review |
Always reconcile automated tax-software output to primary evidence.
Close with quantity reconciliation, an unknown queue and change history
For each asset, calculate opening units plus acquisitions, rewards and inbound transfers less disposals, fees and outbound transfers equals ending units. Reconcile against statements and wallets. Classify differences as rounding, missing exports, internal transfers, delisting, rebase, airdrop, fork, spam token or migration. Do not erase the difference with an unexplained manual adjustment.
Place unresolved events in an unknown queue with an owner and due date rather than assigning zero value or “transfer.” Lock the return-supporting ledger version, method, software, rates and professional adjustments. Later corrections become a new version. Apply local retention, privacy, succession and business-record rules with encrypted, distributed backups.
- Freeze all sources
Preserve CSVs, statements, addresses, transactions and bank evidence.
- Normalize events
Use one schema for asset ID, time, quantity, rate, fee and purpose.
- Reconcile quantities
Roll every asset from opening to ending balance.
- Resolve unknowns
Assign an evidence owner and due date instead of guessing.
- Lock the reviewed version
Save method, rounding, adjustment and approver.
The Financial Templates Hub can structure the event ledger, source list, open questions and review sign-off without storing private keys, seeds or complete identity files. Check current NTA material and a qualified tax professional for an actual filing.
Moving-average cost mini calculator
Add one fictional purchase to an existing balance and calculate a new average cost. This does not calculate tax or classify the event.
- Units after purchase2.5
- Opening cost (USD)40,000
- Purchase cost + fee (USD)15,010
- New average (USD)22,004
Formula: new average = (old units × old average + buy units × buy price + fee) ÷ (old units + buy units)
Results are mechanical estimates from the inputs. No live price, fee or tax rate is fetched, and the tool does not determine a trade, suitability, safety or tax liability.
Frequently asked questions
Should a crypto-to-crypto exchange be recorded?
Yes. It can be a disposal of one asset and acquisition of another, so preserve both quantities, fair value, fee, time and pair, then apply local law.
Is a transfer between my own wallets a sale?
It may be a same-owner transfer, but you need evidence of address control, quantity and fees and must distinguish third-party transfers and wrapped-asset exchanges.
Is an exchange CSV enough?
Not always. Multiple providers, wallets, DeFi, bridges, NFTs, bank transfers and fees require additional evidence and ownership mapping.
Can a cost-basis method be changed freely?
Rules and procedures apply. In Japan, check current NTA selection and change requirements; do not switch opportunistically inside a year.
Primary sources and verification links
- 国税庁 | 暗号資産等に関する税務上の取扱い及び計算書Japan NTA source for crypto-asset income treatment and calculation worksheets
- OECD | Crypto-Asset Reporting FrameworkInternational standard for collection, reporting and exchange of crypto-asset transaction data
- FATF | Updated Guidance for Virtual Assets and VASPsRisk-based guidance covering VASPs, P2P transactions, stablecoins and the travel rule
- Japan FSA | List of Registered Crypto-asset Exchange Service ProvidersOfficial entry point for Japan’s list of registered crypto-asset exchange service providers
- IMF | Elements of Effective Policies for Crypto AssetsPolicy framework for classification, legal certainty, financial stability and user protection
Edited and published by: SG Group · Editorial approach: We prioritize primary materials from central banks, regulators and international institutions. Rules, product terms and release times can change, so verify current information at the linked source and with your provider before acting.
Important notice: This article is general education about crypto assets, blockchains, wallets and related services. It is not investment, legal or tax advice; a recommendation of any token, exchange, wallet or protocol; a trading signal; a price forecast; or a guarantee of profit or principal. Crypto assets can lose some or all value through volatility, lost keys, mistaken transfers, fraud, smart-contract failure, depegging, illiquidity, provider insolvency, or regulatory and tax changes. Figures are fictional learning examples unless expressly identified otherwise. Before use, verify the network, contract address, fees, registration or regulatory status, terms and tax treatment with primary sources and qualified professionals.

