An Employee Stock Purchase Plan (ESPP) lets employees buy their employer's stock, typically through payroll deductions, at a discount to the market price. The tax treatment of that discount — and of any gain when you eventually sell — depends entirely on whether the plan is a qualified Section 423 plan and how long you hold the shares after purchase. This guide covers both plan types, the exact IRS holding-period rules that separate a "qualifying disposition" from a "disqualifying disposition," and worked numeric examples of each. If you're comparing ESPPs to other equity compensation, see our RSU vs Stock Options vs ISOs comparison and our dedicated Stock Options Tax Guide — ESPPs are the third major type of US equity compensation alongside RSUs and stock options, and this guide assumes you already understand the basic wage-income concept covered there.
Most large employer ESPPs are structured as qualified Section 423 plans — meaning they meet the specific requirements of Internal Revenue Code §423, including shareholder approval, a maximum offering period of 27 months, the $25,000 annual purchase cap, and equal rights for all eligible employees. In exchange for meeting these requirements, Section 423 plans get favorable tax treatment: no tax is due at purchase (only at sale), and the qualifying-disposition rules described below can convert most of the gain into lower-taxed long-term capital gains.
A non-qualified ESPP is any employee stock purchase arrangement that doesn't meet §423's requirements — often because it's more flexible (larger discounts, different eligibility rules, or offered to a narrower group of employees, such as executives). Non-qualified ESPPs do not get the qualifying/disqualifying disposition treatment. Instead, the discount is typically taxed as ordinary income at the time of purchase (similar to how a Non-Qualified Stock Option's spread is taxed at exercise), and only post-purchase appreciation gets capital gains treatment. Check your plan documents or Summary Plan Description to confirm which type of ESPP your employer offers — the tax outcome is substantially different.
Under IRC §423(b)(6), a qualified ESPP's purchase price cannot be less than the lesser of: (a) 85% of the stock's fair market value on the offering date (the start of the offering period, sometimes called the grant date), or (b) 85% of the fair market value on the purchase date (the end of the offering period, when shares are actually bought). Many plans use this "lookback" feature, which means you effectively get the lower of the two prices at a 15% discount — a meaningful benefit if the stock price rises during the offering period, since you still only pay 85% of the price at the start of the period, not 85% of the higher price at the end.
Example: an offering period begins with the stock at $50/share and ends 6 months later with the stock at $65/share. With a 15% lookback discount, the purchase price is 85% × $50 = $42.50/share (using the lower offering-date price), even though the stock is worth $65 at actual purchase. The built-in "discount" at purchase is therefore $65 − $42.50 = $22.50/share — a combination of the 15% statutory discount plus the stock's appreciation during the offering period.
A sale of ESPP shares is a qualifying disposition only if both holding-period tests are satisfied, per IRS Publication 525's Employee Stock Purchase Plan section:
Both conditions must be true; failing either one makes the sale a disqualifying disposition instead. For a qualifying disposition, the ordinary income you must report is limited to the lesser of: (a) the discount available at the offering date (generally 15% of the offering-date FMV), or (b) your actual gain on the sale (sale price minus purchase price). Any additional gain beyond that ordinary income amount is treated as long-term capital gain, taxed at the preferential 0%/15%/20% federal rates rather than at your marginal ordinary income rate.
If you sell before satisfying either holding-period test — for example, selling immediately after purchase in a "quick-flip" — the sale is a disqualifying disposition. In this case, the ordinary income you must report is the full bargain element: the difference between the fair market value on the purchase date and what you actually paid. This ordinary income amount is fixed based on the purchase-date FMV and does not shrink even if the stock price later falls — you owe ordinary income tax on the original bargain element regardless of what you eventually sell the shares for. Any gain or loss beyond that bargain element (based on the difference between your sale price and the FMV at purchase, which becomes part of your basis) is a separate capital gain or loss, short-term or long-term depending on how long you held the shares after purchase.
This ordinary income is typically reported by your employer in the year of the disqualifying sale — but unlike RSU or NSO income, ESPP disqualifying-disposition income is often not automatically withheld or included on your W-2 in real time, making it a common source of underpayment surprises at tax filing time. Always check with your plan administrator or payroll department about how (and whether) this income will be reported.
Scenario: An employee's ESPP offering period begins with the stock at $40/share (offering date). Six months later, at the purchase date, the stock is at $50/share. With a 15% discount applied to the lower offering-date price, the purchase price is 85% × $40 = $34/share. The employee buys 100 shares for $3,400 total.
The employee holds the shares for 2.5 years after the offering date (satisfying the 2-year test) and 2 years after purchase (satisfying the 1-year test), then sells all 100 shares at $80/share ($8,000 total).
| Step | Calculation | Amount |
|---|---|---|
| Purchase price paid | 100 × $34 | $3,400 |
| Sale proceeds | 100 × $80 | $8,000 |
| Total gain | $8,000 − $3,400 | $4,600 |
| Discount at offering date (15% × $40 × 100) | Lesser-of test: compare to total gain | $600 |
| Ordinary income (lesser of $600 discount or $4,600 gain) | $600 | |
| Long-term capital gain | $4,600 − $600 | $4,000 |
The same employee instead sells all 100 shares just 3 months after purchase (failing both holding-period tests), at $55/share ($5,500 total).
| Step | Calculation | Amount |
|---|---|---|
| Bargain element (FMV at purchase minus purchase price) | ($50 − $34) × 100 | $1,600 |
| Ordinary income (full bargain element, fixed regardless of sale price) | $1,600 | |
| Sale proceeds | 100 × $55 | $5,500 |
| Basis (purchase price + ordinary income already recognized) | $3,400 + $1,600 | $5,000 |
| Short-term capital gain | $5,500 − $5,000 | $500 |
Note how the qualifying disposition in Scenario A converts $4,000 of the $4,600 total gain into favorably taxed long-term capital gain, with only $600 as ordinary income — while the disqualifying disposition in Scenario B forces $1,600 into ordinary income even though the total dollar gain ($2,100) was smaller. Holding for the full qualifying period is usually — though not always, depending on your tax bracket and how the stock performs — the more tax-efficient outcome.
ESPPs complete the site's stock-compensation coverage alongside RSUs and stock options, but the tax mechanics are distinct from both:
| Type | Tax at Grant | Tax at Purchase/Exercise | Tax at Sale |
|---|---|---|---|
| ESPP (qualified §423) | None | None (unlike NSOs) | Ordinary income (lesser-of test or bargain element) + capital gain/loss on the rest |
| RSU | None | Ordinary income at vest (no purchase involved) | Capital gain/loss on post-vest appreciation only |
| NSO (Non-Qualified Stock Option) | None | Ordinary income on the spread at exercise | Capital gain/loss on post-exercise appreciation only |
| ISO (Incentive Stock Option) | None | None for regular tax (AMT preference item) | Long-term capital gain if holding periods met; otherwise ordinary income on the spread |
See our full RSU vs Stock Options vs ISOs Tax Comparison for worked examples of the other three types side by side.
CountryTaxCalc.com is reader-supported. When you use our partner links, we may earn a commission at no cost to you. This helps us provide free tax calculators and comparison tools. Learn more about our affiliate partnerships
★ 4.3 Trustpilot · 287,413 reviews
Send money internationally at the real mid-market rate. Free to open. 14.8M customers worldwide. 4.3★ / 287,000+ Trustpilot reviews.
⚠ For currency exchange only — not a bank account replacement.
Send Money Internationally →★ 4.8 Trustpilot · 1,625 reviews
Moving abroad from the US? Greenback's CPAs specialise in FEIE, foreign tax credits and FBAR. Dedicated CPA, flat fee from $565, no surprises. 71,000+ expat returns filed. 4.8★ / 1,625 Trustpilot reviews.
⚠ Not the cheapest option — best for complex situations and expats who want a dedicated CPA.
Get Expert US Expat Tax Help →Interested in reaching this audience? Advertise on CountryTaxCalc →