The one-year line that changes everything
In the United States, what you pay on an investment gain hinges on a single date: the one-year mark. Sell a stock, ETF or crypto position you have held for one year or less and the profit is a short-term capital gain, taxed at your ordinary income rate, anywhere from 10% to 37%. Hold the same position more than a year before selling and it becomes a long-term gain, taxed at the far kinder 0%, 15% or 20% schedule.
Concretely, buy shares for $5,000 and sell them for $8,000, and you have a $3,000 gain. At a 15% long-term rate that is $450 of federal tax and $2,550 kept. At a 24% short-term rate the same gain costs $720. The asset did not change; the holding period did.
Long-term rates: 0%, 15% or 20%
Long-term capital gains sit in their own brackets, tied to your taxable income rather than a flat number. Many lower- and middle-income investors pay 0% or 15%; the 20% rate applies only at the top of the income scale. Because the exact thresholds are indexed each year, this calculator lets you pick the rate that matches your situation rather than guessing your bracket for you.
One layer to keep in mind: taxpayers above certain income levels also owe a 3.8% Net Investment Income Tax on capital gains, on top of the headline rate. This tool estimates the base federal capital gains tax and leaves that surtax aside.
Crypto is property, not currency
The IRS treats cryptocurrency as property, so the same capital gains rules apply: selling, swapping one token for another, or spending crypto all trigger a taxable gain or loss based on your cost basis. The short-term versus long-term split works exactly as it does for stocks. The notable gap is the wash-sale rule, which blocks claiming a loss on a security you rebuy within 30 days; today it does not apply to crypto, though proposals to extend it surface regularly.
When you sell at a loss
Losses are not wasted. They first cancel out your capital gains dollar for dollar. If your losses are larger than your gains, you can deduct up to $3,000 of the remainder against ordinary income each year ($1,500 if married filing separately) and carry any excess forward indefinitely. For stocks and ETFs, respect the wash-sale rule: buying the same or a substantially identical security within 30 days before or after the sale disallows the loss for now and rolls it into the new position's basis.
What you need to report
Each sale of stock, ETF or crypto is reported on Form 8949 and totaled on Schedule D of your federal return, using cost basis and proceeds. Your broker sends a 1099-B that most of this flows from, and crypto exchanges increasingly issue their own reporting. Keep your year-end statements: they make filing straightforward and serve as your evidence if the return is ever questioned.