How to calculate crypto profit and loss for a single trade
17 mins read

How to calculate crypto profit and loss for a single trade

Last updated: September 10, 2026

Key Takeaways

  • A chart can show a market move over 24 hours or 30 days, but it will not tell you your actual entry and exit.
  • For 2.5 ETH sold at $3,200, gross proceeds are 2.5 × 3,200 = $8,000.
  • For 2.5 ETH bought at $2,900, gross cost is 2.5 × 2,900 = $7,250.
  • Use return percentage = profit ÷ total cost × 100.

One trade. One answer. That is the whole point.

If you want to know whether a crypto trade made money, the math is blunt: profit or loss = what you got out – what you put in – trade costs. Usually, that means lining up the entry price against the exit price, then trimming the result for fees, slippage, and, where relevant, taxes. This guide covers the basic crypto profit and loss formula for a single spot trade and how to keep the figures tidy for records or tax work.

Table of contents

How to calculate crypto profit and loss for a single trade

Who this applies to, and what you need before you start

This is about a single crypto buy-and-sell: one purchase, one disposal, one outcome. I’m assuming you already know the coin or token, the amount traded, the entry price, the exit price, and the exchange or wallet records for both sides. I’m also assuming the trade is not wrapped inside staking, a margin position, a futures contract, or a multi-leg strategy. Different rules. Different math.

See these four items on a trade ticket or exchange history, and you can work it out:

  • quantity of crypto traded
  • buy price per unit
  • sell price per unit
  • fees on both sides, if any

Start with the exchange fill record, not the portfolio chart. A chart can show a market move over 24 hours or 30 days, but it will not tell you your actual entry and exit. For a simple spot trade, the arithmetic is easy; the snag is usually units. Trade 0.25 BTC, and the profit calculation must use 0.25 BTC — not 1 BTC. Easy to miss. Painful later.

This article is for ordinary spot trades on centralized exchanges or simple wallet transfers where you know both trade prices. It is not the right approach if you used leverage, a perpetual future, an option, or a trade that converted through several assets, such as BTC to ETH to USDT. In those cases, the route matters just as much as the start and end points.

How do you calculate crypto profit and loss for one trade?

How to calculate crypto profit and loss for a single trade

Subtract total cost basis from total proceeds. That is the core move. P&L = sale proceeds – purchase cost – fees. Positive means profit; negative means loss. Nothing fancy.

Here is the procedure I would use for a single spot trade:

  1. Write down the exact quantity traded. Use the traded amount from the fill record, such as 2.5 ETH or 0.04 BTC, and keep all calculations in that unit. Check that the buy and sell quantities match. If they do not, you may have partial fills, dust, or a transfer mixed into the record.
  2. Record the entry price per unit. Use the executed buy price, not the one you hoped for. If the trade filled in pieces, compute a weighted average entry price across all fills. Make sure the number comes from execution data, not the quote screen. The mismatch usually shows up when chart price and fill price diverge beyond what spread and fees would explain.
  3. Record the exit price per unit. Use the executed sell price, again not the displayed market price. If you sold in multiple fills, average them by size. Check that the sale price is the actual fill price. Market orders during a wild minute can land quite a bit worse than the screen suggests.
  4. Calculate gross proceeds. Multiply quantity × exit price. For 2.5 ETH sold at $3,200, gross proceeds are 2.5 × 3,200 = $8,000. Check that the decimal places match the asset’s precision. Small rounding errors can turn into noise — or into a headache — when the unit count is tiny.
  5. Calculate gross cost. Multiply quantity × entry price. For 2.5 ETH bought at $2,900, gross cost is 2.5 × 2,900 = $7,250. Make sure any conversion fee paid in the quote currency is included. Otherwise, the “cost” comes out too low.
  6. Add trading fees on both sides. Include maker/taker fees, spread costs if you can identify them, and any withdrawal or conversion fee directly tied to the trade. Many exchanges show fees in the fee field, often in USDT, USD, or the asset itself. Check that you have not counted the same fee twice. A catch appears when the fee asset is the coin you sold, because the proceeds number may already be net of fee.
  7. Subtract total cost from total proceeds. Use the formula: profit or loss = proceeds – cost – fees. With the example above, if total fees were $16, the result is $8,000 – $7,250 – $16 = $734. Verify the sign. Negative means loss, not profit with a minus sign hiding in the weeds.
  8. Convert to a percentage if you need a quick comparison. Use return percentage = profit ÷ total cost × 100. In the example, $734 ÷ $7,250 × 100 ≈ 10.1%. Divide by the full cost basis, not the sale proceeds. People often say “10% gain” too casually; the denominator decides whether that number is true.

When the asset is quoted in a currency other than your home currency, convert both sides using the same reference date and exchange rate you actually used for records. Tax authorities in different countries may require fair market value at disposal in local currency, and those rules vary. For a plain profit check, keeping everything in the quote currency is fine. For tax reporting, that may not be enough.

What should you include in the calculation, and what should you leave out?

Include every cost tied to the trade itself, and leave out unrelated portfolio expenses. Fees, spread, and direct conversion costs belong in the calculation; a monthly exchange subscription or a hardware wallet purchase usually does not. One trade result is about one transaction, not your whole account. Simple, but people blur that line all the time.

The useful split is between gross P&L and net P&L. Gross P&L is the price move alone. Net P&L is what remains after fees and other direct costs. If you only care whether the market moved your way, gross P&L is enough. If you care about what actually hit your balance, net P&L is the figure that matters.

Here is a simple template:

  • Buy 1.0 SOL at $150 = $150 cost
  • Sell 1.0 SOL at $165 = $165 proceeds
  • Exchange fee on buy = $0.30
  • Exchange fee on sell = $0.33
  • Net profit = $165 – $150 – $0.30 – $0.33 = $14.37

That example is intentionally simple. Real crypto trades often pick up one or two extra layers that a generic formula misses:

  • Slippage: the difference between the price you expected and the price you got. This matters more on thin books and during sharp moves.
  • Spread: the gap between bid and ask. Market orders usually pay this cost.
  • Fee paid in the asset: the exchange may deduct part of the crypto you sold, which changes both quantity and proceeds.
  • Conversion chains: if you traded through a base asset like USDT, the intermediate step is part of the full cost trail.

Mining rewards, staking rewards, and airdrops are better treated as separate acquisition events, not as a normal buy trade, though tax treatment should be checked with a qualified adviser or accountant. They can still feed into a later crypto profit and loss calculation, but the entry side is different. Same story if you moved coins between your own wallets; transfers are not trade profit or loss. Tax desks love their edge cases.

What mistakes do people actually make?

People usually do not mess up the subtraction. They miss the inputs. And the wrong input can make a profitable trade look like a loss, or make a loss seem smaller than it was.

  1. Using the chart price instead of the fill price.
    Consequence: the result is off by the spread and slippage, which can be material on a volatile candle. Correct alternative: use the executed order history from the exchange or broker.

  2. Forgetting fees charged in the asset itself.
    Consequence: your sell proceeds or buy cost is understated, and the P&L looks better than reality. Correct alternative: inspect the fee currency field and include the fee even if it was not charged in cash.

  3. Mixing up quantity and notional value.
    Consequence: multiplying the wrong numbers can create a result that looks plausible but is simply false. Correct alternative: keep quantity in coin units, price in quote currency per unit, and only convert once at the end.

  4. Combining a trade with a transfer.
    Consequence: moving BTC from one wallet to another and then selling it can look like two events when only one is a trade. Correct alternative: separate transfers from disposals before calculating P&L.

  5. Ignoring partial fills.
    Consequence: a market order split across 3 fills at different prices will not match a single “average” price unless you compute a weighted average. Correct alternative: weight each fill by size and sum the results.

  6. Treating taxable gain and trading profit as the same thing.
    Consequence: the number you use for tax reporting may differ from the number you use for a trading review, because local tax rules can require a specific cost-basis method. Correct alternative: keep a plain trading P&L for analysis and a separate tax ledger for filing, and check the applicable guidance for your country or adviser.

When does the standard calculation stop working?

The standard calculation stops working once the trade is no longer a simple buy-and-sell in one asset. Then you need a different method, because the economic event itself has changed even if the app still shows one button press.

Margin or borrowed funds are involved: the position carries financing costs and liquidation risk, so simple spot P&L is incomplete — use the broker’s margin statement and, for tax or debt questions, get qualified help.

You traded perpetual futures or options: your result depends on contract size, expiry or funding, and mark price, not just entry and exit spot prices — use the contract’s settlement rules instead of a spot formula.

You swapped through two or more assets: the real cost basis may be the value of the first asset at the moment of each conversion — trace each leg separately, especially if the chain ran through BTC, ETH, and USDT.

You received or paid a token rebate, referral reward, or fee token discount: the effective fee changes, and the reward may be a separate taxable event in some countries — record each item on its own line.

Your exchange history is missing fills or shows only daily summaries: the summary can hide the prices you actually received — export the full trade ledger or request a CSV with fill-level data before calculating.

The asset was illiquid or thinly traded: large spread and slippage can dominate the result — use the actual executed prices, not the quoted last price on a 1-minute chart.

For tax treatment, country rules differ and can change, so it is wise to confirm the current position with a qualified tax professional or accountant. A UK disposal is not treated like a US capital gain in every detail, and neither is the same as treatment in Canada, Australia, or Singapore. If the number is for filing, not just for personal tracking, local guidance matters.

How long does it take, and what does a correct result look like?

A clean single-trade calculation can take 2 to 10 minutes if your records are in good shape, and a lot longer if fills are scattered across a volatile session. The easiest case is one buy, one sell, one fee on each side, and a neat CSV export. The slow version is partial fills, token-denominated fees, and a trade history that mixes transfers with trades.

A good result has three traits:

  • it ties back to the exchange ledger line by line
  • it shows the units clearly: coin amount, price per coin, fee currency
  • it produces the same answer if you recalculate from the raw fills

If the answer changes when you switch from the app summary to the CSV export, the summary was too coarse. If the answer changes when you include fees, your first pass was only gross P&L. If the answer changes again when you convert to your local currency, you may be looking at a currency effect rather than a bad trade. That third one catches people off guard.

I’d trust a result more when it shows the math plainly. A transparent line like “0.8 ETH bought at 2,400, sold at 2,550, fees 8.20 USDT total” is easier to audit than a single dashboard card that says “+6.3%.” The dashboard number can be handy for a glance, but the line-item method is what survives tax season or a support-ticket argument.

What if the trade was denominated in a stablecoin or my home currency?

The calculation stays the same, but the currency unit changes the details. Bought and sold in USDT, USDC, or USD? Then the arithmetic is simple because both sides are already in the same quote currency. Quoted in BTC, ETH, or another crypto? You may need one extra conversion step to express the result in the currency you actually care about.

The general rule is this: use one currency for the whole calculation, then convert once if needed. Do not mix quote currencies halfway through. Suppose you bought a token for 0.01 BTC and sold it for 0.012 BTC; your profit is 0.002 BTC before fees. Want the result in dollars? Convert both BTC values using the same date and exchange-rate source that matches your purpose. Tax records often need a valuation at the time of disposal, while a trading review may only need the quote currency result. That split matters.

How crypto profit and loss for tax records can differ by country

Once you move from a trade review to tax reporting, crypto profit and loss can change shape because countries use different cost-basis rules, valuation dates, and disposal rules. So the same trade may look simple in a spreadsheet but more involved on a return. For the most authoritative starting point, check your local tax authority’s crypto guidance, such as the IRS digital assets page, HMRC’s cryptoassets manual, or the ATO’s crypto tax guidance.

A few practical differences show up often:

  • some countries tax each disposal when you trade one crypto for another
  • some require local-currency valuation at the time of disposal
  • some allow specific identification of units, while others default to a prescribed method
  • some treat rewards, airdrops, or rebates as separate income items before disposal

That is why a trading profit and loss report is useful, but it is not automatically a tax return. If you need the number for filing, use the rules that apply where you live and keep the trade ledger separate from the tax ledger.

Leave a Reply

Your email address will not be published. Required fields are marked *