Use this guide to import crypto trades into Navexa when your exchange file needs to be converted into Navexa’s crypto spreadsheet format first.
Before You Upload
The crypto spreadsheet importer works best when you use the Navexa crypto CSV template.
Use this template as a starting point:
Do not upload a raw exchange export without checking it first. Files from exchanges such as Crypto.com often include extra activity types, different column names, and rows that are not standard trades.
For example, an exchange export may include:
Deposits and withdrawals.
Earn, staking, or reward entries.
Cashback or card transactions.
Internal transfers.
Columns such as
Timestamp (UTC),Transaction Description,Currency,Amount,To Currency, andTransaction Kind.
These files may cause mapping errors because they do not match the format Navexa expects.
When To Use This Import
Use the crypto spreadsheet importer when:
Your exchange or broker is not currently supported for direct import.
You want to bulk-add crypto buys, sells, or swaps.
You are comfortable copying your trade data into the Navexa crypto template.
If your exchange is supported by a direct import method, that option is usually faster.
What The Importer Supports
The crypto spreadsheet importer supports:
Spot buys.
Spot sells.
Crypto-to-crypto swaps, using Buy or Sell with a crypto pair.
The CSV importer does not support:
Transfer In or Transfer Out rows.
Deposits or withdrawals.
Earn, staking, interest, cashback, rewards, or airdrops.
Card payments or card top-ups.
If you need to record crypto transfers, add them manually after importing your trades.
Required CSV Columns
Your CSV must include these column headers:
Market PairTrade DateTrade TypeAmount ReceivedAmount TradedFeeFee Currency CodeNotes
Use the template as your starting point and keep the column names unchanged.
How to fill each field
Market Pair
Format is BASE/QUOTE:
BASE = the coin you’re buying/selling (first in the pair)
QUOTE = the currency you’re paying/receiving (second in the pair)
Examples:
BTC/AUD (BASE = BTC, QUOTE = AUD)
SOL/USDT (BASE = SOL, QUOTE = USDT)
BTC/ETH (BASE = BTC, QUOTE = ETH)
Trade Type
Use only:
Buy
Sell
For swaps, you still use Buy or Sell (Navexa will display these as Trade In/Trade Out automatically).
Amount Received and Amount Traded (important)
In the crypto spreadsheet importer:
Amount Received = the BASE quantity (how many units of the first asset)
Amount Traded = the unit price in the QUOTE currency (price per 1 unit of BASE)
This means Amount Traded is not the total you spent/received.
Example (BTC/AUD buy):
You buy 0.10 BTC for 9,500 AUD total
Unit price = 9,500 / 0.10 = 95,000 AUD per BTC
CSV values:
Market Pair: BTC/AUD
Trade Type: Buy
Amount Received: 0.10
Amount Traded: 95,000
If you put 9,500 into Amount Traded, Navexa interprets it as $9,500 per BTC (unit price), not the total.
Fee and Fee Currency Code
Fee = fee amount
Fee Currency Code = the currency the fee was charged in (AUD, BTC, ETH, USDT, etc.)
Tip: If your fee is charged in a coin you don’t otherwise hold (or don’t have a starting balance for), that coin may show as negative until you add earlier trades/transfers.
How swaps work (crypto-to-crypto)
Buy vs Sell for swaps
For swaps, think in terms of what you receive vs what you spend:
Buy BASE/QUOTE = you receive BASE and spend QUOTE
Sell BASE/QUOTE = you spend BASE and receive QUOTE
Example (SOL/USDT):
Buy SOL/USDT = receive SOL, spend USDT
Sell SOL/USDT = spend SOL, receive USDT
What you’ll see in Navexa
After import, Navexa will automatically show:
Trade (In) on the coin you received
Trade (Out) on the coin you spent
Even though your CSV says Buy/Sell, the UI will correctly label the “in” and “out” side of the swap.
Transfers and starting balances (why errors happen)
Why you may see “Insufficient shares to sell”
Because Transfer In/Out isn’t supported in the CSV importer, Navexa can only build balances from the trades you import.
So if your CSV spends a coin before you ever acquired it (for example, you buy SOL using USDT, but you never added a USDT buy or transfer-in first), you’ll see:
Insufficient shares to sell
This is expected and just means the holding needs an earlier balance.
Fix options
Choose one:
Option A (recommended for CSV-only): Add earlier Buy trades so the coin exists before it’s spent.
Example: add a USDT/AUD Buy before any SOL/USDT trades.
Option B (manual): Add a Transfer In inside the holding.
Use this when your USDT (or other coin) came from a deposit, not a buy.
How to manually add Transfer In / Transfer Out (when needed)
If you need to add a starting balance for a coin:
Open the holding (e.g. USDT).
Click Add Trade.
Select Transfer In.
Set the Trade Date to before the first time you spend that coin.
Enter the transferred quantity.
Click Add Trade.
You can also add Transfer Out the same way if you want withdrawals reflected.
How to import your CSV
In Navexa, go to Add Holdings.
Choose Import from Spreadsheet.
Choose the Cryptocurrencies.
Upload your CSV, click Next.
Check that the row selected shows the column headers. Then, click Yes to confirm.
In Header Selection, confirm each column is matched correctly. Click Next at the bottom to continue.
In Review, scan for any warnings.
Click Save.
Download the template and example rows
Use this template as a starting point:
What the template demonstrates:
BTC/AUD and ETH/AUD buys/sells
A BTC/ETH swap (shows as Trade In/Out in the UI)
Funding USDT with a USDT/AUD buy before using SOL/USDT swaps
Common issues and quick fixes
My quantities are wildly wrong (e.g. “sold 5,200 BTC”)
Cause: Total value was entered as the quantity.
Fix:
Put the coin quantity in Amount Received
Put the unit price in Amount Traded
A coin is negative after import
Cause: You spent that coin before acquiring it in your imported history.
Fix:
Add earlier buys for that coin, or
Manually add Transfer In dated before the spend
My swap shows as Trade In/Trade Out, not Buy/Sell
That’s expected. Navexa is correctly showing both sides of the swap inside each holding.
What we recommend for best results
Import your trades from the earliest date you started trading that coin.
If you use stablecoins (USDT/USDC), include an earlier funding trade (or add Transfer In manually).
Keep fees in their real fee currency where possible.
Download the Crypto Spreadsheet Template here:






