PennyCompass

ESPP Calculator 2026

Free Employee Stock Purchase Plan calculator. Compute discount, ordinary income, capital gain, and net after-tax proceeds for both qualifying and disqualifying dispositions.

Published

Compute Employee Stock Purchase Plan tax for both qualifying and disqualifying dispositions. Enter your purchase parameters and sale price.

Post-15% discount.

Net after-tax profit

Total cost

Sale proceeds

Ordinary income portion

Capital gain portion

Ordinary tax

Cap gains tax

How an ESPP turns a payroll deduction into a return

An employee stock purchase plan lets you buy company stock through payroll deductions, usually at a 15 percent discount, and the better plans add a lookback that prices the discount off the lower of the offering start or purchase date. That built-in discount is the engine of the return. This calculator models the full lifecycle: your purchase cost, the proceeds when you sell, and how the profit splits between ordinary income and capital gain depending on whether the sale is a qualifying or disqualifying disposition. It then nets out tax at the ordinary and long-term capital gains rates you enter and reports the return on what you contributed.

It speaks to employees deciding whether to enroll, how much to contribute, and when to sell. The tax split is where ESPPs get genuinely confusing, so the tool keeps the two dispositions explicit rather than hiding the difference behind a single number.

Selling 100 shares right after purchase

Take 100 shares bought at $85 after the 15 percent discount when the fair market value at purchase was $120, later sold at $150, and assume a disqualifying disposition because you sold quickly. Your cost is 100 times $85, or $8,500. Proceeds are 100 times $150, or $15,000. In a disqualifying sale the discount counts as ordinary income, measured as the $120 purchase-date value minus the $85 you paid, times 100, which is $3,500. The remaining gain, the $150 sale price minus the $120 value, times 100, is a $3,000 capital gain. Tax at a 32 percent ordinary rate is $1,120, and tax at 15 percent on the capital gain is $450. Net profit is $15,000 minus $8,500 minus $1,570 of tax, which is $4,930, a return of about 58 percent on your $8,500 outlay.

Line Amount
Cost (100 shares at $85)$8,500
Sale proceeds (100 at $150)$15,000
Ordinary income ($120 - $85)$3,500
Capital gain ($150 - $120)$3,000
Tax: ordinary $1,120 + cap gains $450$1,570
Net after-tax profit$4,930
$15,000 proceeds, divided up Cost $8,500 Ord $3,500 Gain $3,000 Of the $6,500 profit, $1,570 goes to tax, leaving $4,930 net.

The basis error that makes people overpay

Here is the most expensive mistake in the ESPP world, and the calculator handles it correctly even when your broker does not. When you sell, the brokerage issues a Form 1099-B that often reports your cost basis as only the discounted price you paid, $85 in the example, ignoring the $35 of discount already taxed as ordinary income on your W-2. If you transcribe that 1099-B figure straight onto Schedule D and Form 8949 without adjusting, you pay tax twice on the same $3,500, once as wages and again as a phantom capital gain. The fix is to add the ordinary income amount back to your basis, which the IRS expects you to do using the adjustment column on Form 8949.

A practical tip on strategy: the disqualifying sale modeled above captures the discount as a near risk-free return, which many people prefer to holding concentrated company stock for two years just to convert part of the gain to long-term rates. The qualifying path can lower your tax, but only if you are comfortable carrying single-stock risk in your own employer, the company whose fortunes already drive your paycheck. Weigh the tax saving against that concentration before you decide to hold.

ESPP questions worth getting right

Can I lose money in an ESPP if the stock drops?

With a true 15 percent discount you would need the share price to fall more than about 15 percent between purchase and sale before the discount is fully erased, and a lookback feature widens that buffer further. Selling immediately at purchase minimizes the window for a decline. Holding for months exposes you to a drop that can turn the position into a loss, which is the core argument for selling fast.

Where does the discount show up on my W-2?

In a disqualifying disposition, the ordinary income portion, the discount measured at purchase, is added to your taxable wages and appears in Box 1 of your W-2. Unlike nonqualified stock options, ESPP income does not carry its own dedicated W-2 code, so it can be easy to miss. That added amount is precisely what you must include in your cost basis when reporting the sale, so reconcile your W-2, your 1099-B, and your plan statements before you file.

Frequently asked questions

What is the difference between qualifying and disqualifying disposition?
Qualifying disposition: held 2 years from grant date AND 1 year from purchase date. Tax: ordinary income on the LESSER of (sale gain) or (discount at grant), rest is long-term capital gain. Disqualifying: sold earlier. Tax: ordinary income on (FMV at purchase - purchase price), capital gain/loss on the rest.
Should I hold for qualifying treatment?
Qualifying is tax-efficient but requires holding company stock for 2 years. The risk: concentration in your employer's stock. Common advice: sell immediately at purchase (called "fast money" ESPP) to capture the 15% discount risk-free, ignore the qualifying-disposition optimization.
How much is the typical ESPP discount?
Most ESPPs offer a 15% discount on either the start-of-offering or end-of-offering price (lookback). With lookback, if stock rose during the offering period, your discount is calculated from the lower price, effectively a >15% discount.
What is the IRS limit on ESPP?
You can contribute up to $25,000 worth of stock per year (measured at start-of-offering price). Most employers cap payroll deduction at 10-15% of salary. The $25K limit rarely binds unless you have a $250K+ salary contributing 10%.

Related calculators

Embed this calculator on your site (free)

Paste this code into your page. The calculator stays up to date automatically and links back to PennyCompass.

Calculator by PennyCompass