Crypto.com used to ship a built-in Tax calculator that spat out a yearly capital-gains style report. That product was deprecated in June 2024. For 2026 filing you are back to the boring path every serious exchange workflow already uses: export complete CSVs from the App and Exchange, save any IRS information returns Crypto.com emails you, then reconcile in software or your own ledger.
This post is a developer-oriented map of what those exports give you, where the 1099-DA trap sits, and a small Python sketch to sanity-check App Token Wallet CSVs. For click-by-click paths and a Canada note, see NutshellCrypto's guide to the Crypto.com tax report.
What replaced "Crypto.com Tax"
Crypto.com's Tax site and Help Center say the legacy calculator is no longer operational for new reports, and that past reports from that tool are no longer applicable. They point users toward partner tax services and toward exporting transaction history yourself.
Practical takeaway: do not wait for a fresh Crypto.com Tax PDF. Treat App + Exchange CSVs (plus any Forms 1099) as the source of truth.
What to download (App vs Exchange)
From the Crypto.com App, Help documents three CSV sources:
- Token Wallet — crypto activity; usually the primary import for tax software
- Cash Wallet — fiat
- Crypto.com Visa Card — card spend history
App exports can cover up to about three years per report, and downloads typically expire after 30 days. For a US calendar year, export at least January 1–December 31 of the tax year, plus earlier years if you still hold coins bought then (cost basis often lives in older buys).
If you also use Crypto.com Exchange, App CSVs alone are incomplete. Exchange exports cover wallet transactions, deposits/withdrawals, order and trade history, and related sets — with date-range caps and a ~65,000-row limit on some files. Shorten the range and stitch months if an export truncates.
Keep App and Exchange files separate and mark internal transfers so software does not invent a taxable sale when you moved coins between Crypto.com products.
The 1099-DA gap: proceeds ≠ profit
US persons may receive Forms 1099-DA, 1099-MISC, and/or 1099-B by email from no-reply@crypto.com (check spam). Crypto.com's FAQ for recent tax years states that cost basis is not required on Form 1099-DA during the transitional period, and that they chose not to report basis to avoid unintended error.
That means:
- Proceeds on 1099-DA are not your taxable gain
- You still need acquisition cost for Form 8949 when the broker form is proceeds-only
- No 1099-MISC under the $600 rewards threshold does not automatically mean Earn / lockup / referral income is non-taxable
If you also use Coinbase, keep each platform's CSVs separate. NutshellCrypto's Coinbase tax report walkthrough covers the parallel 1099-DA pattern on that venue.
A tiny App CSV sanity check
Crypto.com Token Wallet CSV column names can vary by export year. Inspect the header row first. This sketch counts disposal-like rows without a usable basis field — a cheap red flag before you file.
import csv
from collections import defaultdict
from decimal import Decimal
from pathlib import Path
DISPOSAL_HINTS = {"sell", "trade", "convert", "exchange"}
def d(x: str) -> Decimal:
return Decimal((x or "0").replace(",", "").strip() or "0")
def scan_token_wallet(path: Path) -> dict:
missing_basis = 0
by_type = defaultdict(int)
proceeds_total = Decimal(0)
with path.open(newline="", encoding="utf-8") as f:
reader = csv.DictReader(f)
fields = {h.lower().strip(): h for h in (reader.fieldnames or [])}
def get(row, *names):
for n in names:
key = fields.get(n.lower())
if key and row.get(key) not in (None, ""):
return row[key]
return ""
for row in reader:
t = get(row, "Transaction Kind", "Type", "transaction_type").lower()
by_type[t or "unknown"] += 1
if not any(h in t for h in DISPOSAL_HINTS):
continue
proceeds_total += d(get(row, "Native Amount", "Amount (USD)", "USD Value"))
if not get(row, "Cost Basis", "cost_basis_usd", "Basis"):
missing_basis += 1
return {
"by_type": dict(by_type),
"disposal_rows_missing_basis": missing_basis,
"rough_proceeds_sum": str(proceeds_total),
}
print(scan_token_wallet(Path("crypto_com_token_wallet.csv")))
Tune aliases against your header row. This is not a tax engine — it catches empty basis fields and odd type mixes before they become Form 8949 mistakes.
Import workflow that usually works
- Export Token Wallet (plus Cash/Card if needed) for the tax year and prior years for basis.
- Export every relevant Exchange history set; split ranges if you hit caps.
- Save 1099 PDFs from Crypto.com's email link.
- Import into crypto tax software or enter disposals on Form 8949 with your own basis where the broker form is proceeds-only.
- Report rewards income even when no 1099-MISC arrived; reconcile 1099-DA proceeds to your Form 8949 lines.
- Do not forget on-chain / DeFi Wallet activity outside Crypto.com's custodial App and Exchange.
Takeaways
- Crypto.com's built-in Tax calculator is gone; CSVs + 1099s are the workflow now.
- Export both App and Exchange if you used both.
- Treat 1099-DA proceeds as proceeds, not profit — basis is still your job in the transitional years.
- Watch App download expiry, Exchange row/date caps, and rewards below the 1099-MISC threshold.
- Preserve inbound transfer basis across venues in a personal ledger or software profile.
Read the full guide on NutshellCrypto: Crypto.com Tax Report: How to Download and Use It (2026).
Not financial, tax, or investment advice. Educational only — rules depend on your facts and jurisdiction; talk to a qualified professional before filing.
This post was written with AI assistance.
Top comments (0)