---
title: "Crypto Capital Gains Tax Calculator"
description: "Estimate US tax on selling, swapping, or spending crypto — and see why a wallet-to-wallet transfer is usually not a sale. Informational only."
canonical_url: "https://www.themoneypocket.com/tools/crypto-capital-gains-calculator"
last_updated: "2026-08-27T06:42:06.613Z"
---

**Estimate the US tax on one crypto lot when you sell, swap, spend, or move coins.** This calculator treats cryptocurrency as property: a disposal is usually a capital gain or loss, while a transfer between wallets you own generally is not. Figures are educational estimates for a single lot — not a filing, not tax advice, and not a guarantee of accuracy.

<crypto-capital-gains-calculator>



</crypto-capital-gains-calculator>

<rock-wallet-offer variant="tax">



</rock-wallet-offer>

This page is for **informational purposes only**. Tax software, Form 1099-DA, and your own wallet records can disagree. Confirm numbers with a tax professional before you file. For the rule behind the “transfer” option, read [Is transferring crypto between wallets taxable?](/articles/is-transferring-crypto-between-wallets-taxable). If you are building a position over time instead of selling, pair this with the [crypto DCA calculator](/tools/crypto-dca-calculator).

## What this calculator is modeling

The IRS treats digital assets as **property**, not as foreign currency. That single classification drives almost every beginner surprise:

- Buying bitcoin with dollars is generally **not** a taxable event (you have a cost basis).
- Selling bitcoin for dollars **is** a taxable event.
- Trading bitcoin for ethereum **is** a taxable event, even if no cash hits your bank.
- Paying a merchant with crypto **is** a taxable event at fair market value on the payment date.
- Moving coins from Coinbase to a wallet you control is generally **not** a taxable event — you still own the same property.

The form above asks for **one lot**: proceeds (or FMV received), cost basis, fees, acquire date, dispose date, filing status, other taxable income, and state. It then stacks the gain on top of your other income the way long-term capital gains actually work — the 0% / 15% / 20% brackets are not a flat rate on the whole gain.

That stacking is the main reason a dedicated crypto calculator exists next to the broader [capital gains tax calculator](/tools/capital-gains-calculator). The general tool is built for stocks, real estate, and mixed portfolios. This one is built around **event type**, so you can see a transfer return zero tax while a swap of the same coins does not.

### How to read the inputs

**What happened?** Choose the economic event, not the app screen. An exchange “withdraw” to your own address is a transfer. An in-app “convert BTC to ETH” is a swap. Paying a vendor or buying a gift card is a spend.

**Proceeds / FMV received.** For a cash sale, use the USD you actually received. For a swap, use the fair market value of the coins you received on the trade date. For a spend, use the USD price of the goods or services (or the FMV of the crypto, which should be close). For a transfer, proceeds do not create tax in this model; the field is ignored for the tax result.

**Cost basis.** What you paid for **this lot**, in USD, including purchase fees you capitalized. If you dollar-cost averaged, do not dump your entire bag into one number unless you truly sold the entire bag. Each purchase is its own lot. See [how crypto dollar-cost averaging works](/articles/how-crypto-dollar-cost-averaging-works) for why that matters.

**Fees on this disposal.** Sell-side commissions, network fees you paid to complete the disposal, and similar costs that reduce net proceeds. Do not double-count a fee you already added to basis.

**Dates.** Holding period is more than one year for long-term rates. Selling on the anniversary date is still short-term in IRS counting. The one extra day is often worth more than any trading edge. Our [short-term vs long-term capital gains](/articles/short-term-vs-long-term-capital-gains-tax-rates) guide walks through the clock.

**Other taxable income.** Wages, interest, short-term gains already realized, and other ordinary income. Long-term rates apply to taxable income **including the crypto gain**. A $40,000 long-term gain on top of $90,000 of wages is not all taxed at 0%.

**State.** Many states tax capital gains as ordinary income. A few have no income tax. The rate used here is a simplified statewide estimate so Texas, Florida, Washington, California, and New York do not look the same. It is not a full state return.

## Taxable events vs wallet moves

Beginners mix up **custody** and **taxation**. Changing who holds the keys is not the same as changing who owns the coins.

<table>
<thead>
  <tr>
    <th>
      Event
    </th>
    
    <th>
      Typical tax result
    </th>
    
    <th>
      What to record
    </th>
  </tr>
</thead>

<tbody>
  <tr>
    <td>
      Sell for USD
    </td>
    
    <td>
      Gain or loss vs basis
    </td>
    
    <td>
      Proceeds, fees, lot identity
    </td>
  </tr>
  
  <tr>
    <td>
      Swap for another token
    </td>
    
    <td>
      Gain or loss vs basis
    </td>
    
    <td>
      FMV of what you received
    </td>
  </tr>
  
  <tr>
    <td>
      Spend on goods or services
    </td>
    
    <td>
      Gain or loss vs basis
    </td>
    
    <td>
      FMV on the payment date
    </td>
  </tr>
  
  <tr>
    <td>
      Transfer between wallets you own
    </td>
    
    <td>
      Generally not a sale
    </td>
    
    <td>
      Date, txid, from/to addresses, same owner
    </td>
  </tr>
  
  <tr>
    <td>
      Gift to another person
    </td>
    
    <td>
      Usually not income to you; donee takes carryover basis (gift-tax rules can still apply)
    </td>
    
    <td>
      FMV, basis, recipient
    </td>
  </tr>
  
  <tr>
    <td>
      Receive airdrop / staking
    </td>
    
    <td>
      Often ordinary income at FMV when you have dominion
    </td>
    
    <td>
      FMV on receipt; that FMV becomes basis
    </td>
  </tr>
</tbody>
</table>

The transfer row is the one people get wrong after they leave an exchange. They assume “withdraw” equals “sell.” It does not. The taxable event already happened when they **bought**. The withdraw just changes the storage location. That is also why a [non-custodial wallet](/articles/custodial-vs-non-custodial-crypto-wallet) is a custody choice, not a tax dodge: you still owe tax when you later sell, swap, or spend.

If a platform lets you buy and then immediately hold in self-custody, you still need the **buy** ticket: date, quantity, USD paid. Without that, a later 1099-DA from a different broker will not reconstruct your basis for you.

## Worked examples

### Example 1 — Long-term sale in a no-income-tax state

Alex (single) bought 0.2 BTC in January 2024 for $10,000 including fees. In March 2026 Alex sells that lot for $20,000 and pays $50 in trading fees. Other taxable income is $85,000. Alex lives in Texas.

- Holding period is more than one year → long-term.
- Net proceeds ≈ $19,950. Gain ≈ $9,950.
- That gain stacks on $85,000 of other income, so it sits in the 15% long-term federal band for 2026, not the 0% band.
- Texas adds $0 state income tax in this simplified model.
- NIIT (3.8%) applies only if MAGI is over $200,000 single / $250,000 married. $85,000 + $9,950 is under that line, so NIIT is $0 in this example.

Plug the same numbers into the form. If you change the acquire date to two months before the sale, the federal piece jumps to ordinary brackets. That is the entire point of waiting for long-term treatment.

### Example 2 — Same coins, but a swap

Bailey swaps the same $20,000 of bitcoin for ether. No USD hits a bank account. The IRS still treats the swap as a sale of bitcoin at $20,000 FMV. The ether’s opening basis is $20,000 (plus any swap fees you capitalize). People skip this because the app UI says “convert” instead of “sell.” The calculator’s **swap** option exists so that UI does not hide the tax.

### Example 3 — Coffee is a disposal

Casey bought ETH at $1,800 and later spends $6 of it on coffee when ETH’s FMV makes that $6 of ETH. The gain is $6 minus the basis of those specific units — often a few dollars. The law does not have a de minimis exception for personal purchases. In practice, people who spend crypto constantly need software. In planning, the lesson is: **spending is selling**. If you wanted to avoid a 1099-DA line for tiny spends, you would spend dollars, not coins.

### Example 4 — Exchange to self-custody

Dana buys $5,000 of bitcoin on an exchange, then withdraws to a hardware wallet or a non-custodial app Dana controls. Choose **Moved between my own wallets**. The estimate should show **not a taxable event**. Dana still keeps the $5,000 basis and the acquire date. If Dana later sells from the new wallet, that future sale uses the original basis and holding period — not a reset.

This is the scenario behind [Is transferring crypto between wallets taxable?](/articles/is-transferring-crypto-between-wallets-taxable). It is also why Form 1099-DA can confuse people: a broker may report a **transfer out** even when no sale occurred. Your job is to match the 1099-DA boxes to real economics, not to assume every line is a gain. See [IRS Form 1099-DA explained](/articles/irs-form-1099-da-explained).

## Cost basis after 2025: wallet by wallet

For years, many US crypto filers used a universal method across every exchange and wallet as if all coins lived in one pool. Starting with 2025 transactions, Treasury and IRS rules generally require **wallet-by-wallet** (account-by-account) identification. You identify lots **inside the wallet or account that made the disposal**, not from a global FIFO pile that ignores where the coins sat.

Practical consequences:

- Moving coins to a new wallet does not create tax, but it **does** move specific units. You should document which lots left.
- Specific identification is only as good as your records. If you cannot identify the lot, the default method for that account applies.
- A 1099-DA from Broker A will not include lots that never sat at Broker A.
- Self-custody sales (peer-to-peer, some DEX activity, spending from your own wallet) may never appear on a 1099-DA. You still have to report them.

This calculator does **not** allocate lots across ten wallets. It prices **one** identified lot. That is the honest scope. If you DCA weekly, you may have dozens of lots. Run the ones you actually disposed of, or use dedicated crypto tax software for the full year and use this page to sanity-check a single trade.

## Federal rates this tool uses (2026)

**Short-term** gains use ordinary 2026 brackets (10% through 37%) stacked on your other taxable income.

**Long-term** gains use the 2026 0% / 15% / 20% thresholds with stacking:

- Single: 0% up to $48,350 of taxable income; 15% up to $533,400; 20% above that.
- Married filing jointly: 0% up to $96,700; 15% up to $600,050; 20% above.

Those long-term thresholds are **taxable income** cutoffs, not “your salary.” Standard deduction, above-the-line adjustments, and the gain itself all move you around inside the stack. The calculator uses a simplified taxable-income proxy: other ordinary income plus the crypto gain. It does not model every deduction.

**NIIT** is an extra 3.8% on net investment income once MAGI exceeds $200,000 (single) or $250,000 (married filing jointly). Thresholds are not indexed. Model MAGI more carefully with the [NIIT calculator](/tools/niit-calculator) and [What is MAGI?](/articles/what-is-magi-modified-adjusted-gross-income).

**State** rates in the dropdown are rounded planning rates, not your exact state return. California and New York can dwarf the federal long-term rate. Texas, Florida, Nevada, Washington, and similar no-income-tax states show $0 here for the state line.

None of these figures are a promise that your Form 8949 will match. They are a planning range.

## Losses, harvesting, and wash sales

If proceeds are below basis, the result is a **capital loss**. Capital losses offset capital gains, and up to $3,000 of net capital loss can offset ordinary income each year, with the rest carrying forward.

Cryptocurrency is generally **not** a stock or securities wash-sale asset under current law, which is why people harvest crypto losses and immediately rebuy. That is a planning difference versus ETFs, not a loophole you should assume lasts forever. Congress has proposed extending wash-sale treatment to digital assets. For the strategy, read [crypto tax-loss harvesting](/articles/crypto-tax-loss-harvesting) and model securities harvests separately with the [tax-loss harvesting calculator](/tools/tax-loss-harvesting-calculator).

Do not harvest a loss and then forget the replacement lot’s new (lower) basis. The tax benefit is real only if the economics and the records both work.

## What this tool does not do

- It does not import exchange CSVs or on-chain history.
- It does not allocate staking rewards, airdrops, mining, or hard-fork income (often ordinary income, then a new basis).
- It does not apply wash-sale, straddle, or trader-tax-status rules.
- It does not compute estimated-tax penalties. If you realize a large gain, see [how to pay quarterly estimated taxes](/articles/how-to-pay-quarterly-estimated-taxes).
- It does not apply Canadian ACB or the UK pooled-asset rules. Canadian readers should use the [Canada capital gains tax calculator](/tools/canada-capital-gains-tax-calculator) and [crypto capital gains tax in Canada](/articles/capital-gains-tax-crypto-canada-2025).
- It does not guarantee that RockWallet, any exchange, or any 1099-DA issuer used the same lot method you did.

If you hold coins you intend to keep, the tax question is “when will I dispose?” not “did I withdraw?” Custody is still worth getting right: a [custodial vs non-custodial](/articles/custodial-vs-non-custodial-crypto-wallet) choice affects who can freeze an account, who issues a 1099-DA, and how painful a hack is. It does not erase basis.

## Frequently asked questions

### Is this calculator accurate enough to file?

No. It is an **informational estimate** for one lot under simplified 2026 federal brackets, a NIIT shortcut, and a flat state rate. Filing requires every disposal, every income event, and your real deductions. Use it to learn the shape of the tax, then reconcile with software or a CPA.

### Do I owe tax when I move bitcoin to a hardware wallet?

Usually **no**, if you still own the wallet. Record the move. Tax is due when you later sell, swap, or spend. Details: [Is transferring crypto between wallets taxable?](/articles/is-transferring-crypto-between-wallets-taxable).

### Does a crypto-to-crypto trade get long-term rates?

Yes, **if** you held the **disposed** asset more than one year. The asset you receive starts a **new** holding period. Trading a long-term bitcoin lot for ether realizes long-term gain on bitcoin and starts ether’s clock at zero.

### What if I used FIFO on everything before 2025?

You still need a method that matches current identification rules for 2025-and-later disposals in each wallet. Old-year returns are separate. Going forward, do not invent a global pool that ignores accounts. Keep per-wallet lots.

### Will Form 1099-DA include transfers?

Brokers may report transfers and proceeds in ways that do not match “this was a sale.” Treat the form as a third-party report, not as your tax return. [IRS Form 1099-DA explained](/articles/irs-form-1099-da-explained) covers typical mismatches.

### I live in California. Why is the state number so large?

California taxes most capital gains as ordinary income. A 15% federal long-term rate plus a high state rate is a very different bill than the same sale in Texas. Change the state dropdown to see the gap. The state figure is still a sketch, not Franchise Tax Board software.

### Can I use specific identification to pick a high-basis lot?

Often yes, if you can identify the units in **that wallet** and you follow the identification rules that apply to the year. Specific ID is how you avoid selling the cheapest 2017 coins when you only needed $2,000 of cash. Without records, you do not have specific ID.

### Does DCA create many lots?

Yes. Every scheduled buy is usually a separate lot with its own basis and acquire date. The [crypto DCA calculator](/tools/crypto-dca-calculator) is for accumulation math. This calculator is for **disposal** math. Use both.

### Is there a de minimis exception for small spends?

US federal law does not currently give casual spenders a clean small-purchase exemption the way some proposals have sketched. Practically, people still spend crypto; they also create a tracking mess. Plan as if every spend is a disposal.

### What about coins I received as income?

If you were paid in crypto, you generally had ordinary income at FMV on the receipt date. That FMV is basis. A later sale uses that basis, not $0. This tool’s “cost basis” field is where that FMV goes.

## Related tools and guides

- [Is transferring crypto between wallets taxable?](/articles/is-transferring-crypto-between-wallets-taxable) — primary companion article
- [IRS Form 1099-DA explained](/articles/irs-form-1099-da-explained)
- [Crypto tax-loss harvesting](/articles/crypto-tax-loss-harvesting)
- [Custodial vs non-custodial crypto wallets](/articles/custodial-vs-non-custodial-crypto-wallet)
- [How crypto dollar-cost averaging works](/articles/how-crypto-dollar-cost-averaging-works)
- [Capital gains tax calculator](/tools/capital-gains-calculator) (stocks, real estate, mixed portfolios)
- [Tax-loss harvesting calculator](/tools/tax-loss-harvesting-calculator)
- [Capital gains tax strategies](/articles/capital-gains-tax-strategies-minimize-taxes)
- [Capital gains tax hub](/hub/capital-gains-tax)

**Disclaimer:** The Money Pocket provides this calculator for education. It does not provide tax, legal, or investment advice. Cryptocurrency is volatile and you can lose money. Affiliate links, including wallet offers on this page, may earn a commission. Digital-asset buy/sell availability varies by US state. Always verify current IRS publications and your own records before you file.
