When do you pay taxes on expected ordinary income in an ESPP? Already taxed or taxed again at sale?
I purchased some company stock through our ESPP program last year with the acquisition date of 8/15/23. My company reported Expected Ordinary Income of about $135 on my 2023 W2. I'm thinking about selling these shares soon (could use the cash for some home repairs), but I'm confused about the tax situation. If I sell these shares now in 2024, will I be taxed again on that $135 of Expected Ordinary Income that was already on my W2 from last year? Or have I already paid taxes on that amount when I filed my 2023 taxes? I don't want to get hit with surprise taxes if I've already paid them. I'm planning to use TurboTax again this year but wanted to understand this before I sell. Thanks for any help explaining how ESPP taxation works!
19 comments


Jamal Anderson
What you're dealing with is the two-part taxation of ESPP shares. The good news is you won't be taxed twice on the same income! When you acquire ESPP shares, any discount you received (the "bargain element") is considered ordinary income and is reported on your W2 in the year of purchase - which is what happened with your $135 in 2023. You've already paid taxes on this amount when you filed your 2023 return. When you sell the shares now in 2024, you'll only be taxed on any additional gain (or loss) that occurred since the purchase date. Your cost basis for the shares would be the fair market value on the purchase date (which includes that $135 already taxed). So if your shares are worth more now than when you bought them, you'll pay capital gains tax only on that difference.
0 coins
Mei Zhang
•Thanks for explaining! I have a similar situation but my ESPP has a "lookback provision" - does that change how the taxes work? My company uses the lower of beginning or ending period price.
0 coins
Jamal Anderson
•The lookback provision actually increases the potential bargain element (ordinary income) reported on your W2. When your company uses the lower of beginning or ending period price, the discount is typically larger, which means more ordinary income at purchase. However, the basic tax structure remains the same - the discount is taxed as ordinary income in the year of purchase (on your W2), and any subsequent gain or loss when you sell is capital gain/loss based on the difference between your selling price and your cost basis (which includes that already-taxed discount).
0 coins
Liam McGuire
I had the exact same question last year and spent hours trying to figure it out until I found taxr.ai (https://taxr.ai). I uploaded my ESPP statement and it highlighted exactly which portions were already taxed and what would be taxed when I sold. It showed me that my cost basis was already adjusted to include that ordinary income reported on my W2, which meant I wouldn't pay taxes on it twice. The tool broke down my potential sale into ordinary income vs capital gains portions clearly so I could see exactly what tax impact selling would have.
0 coins
Amara Eze
•Does it work for disqualifying dispositions too? I sold some of my ESPP shares before the holding period and had a mess trying to figure out how to report it.
0 coins
Giovanni Ricci
•Interesting, but how accurate is it really? I've found most tax software gets confused with the more complex ESPP scenarios. Does it handle the special tax lots correctly?
0 coins
Liam McGuire
•It absolutely handles disqualifying dispositions - that's actually where it's most helpful since those get complicated with the additional ordinary income reporting requirements. It shows you exactly what gets reported where on your tax forms. As for accuracy, I cross-checked the results with my company's stock admin team and they confirmed everything was correct. It properly handles different tax lots and even identifies which specific shares would be most tax-efficient to sell first if you have multiple purchase periods.
0 coins
Giovanni Ricci
Just wanted to follow up on my experience with taxr.ai (from my question above). I decided to try it with my complicated ESPP situation with multiple purchase dates and varying discounts. Honestly impressed with how it handled everything! It correctly identified my disqualifying dispositions and showed me exactly which portions had already been taxed as ordinary income on my W2 vs what would be new capital gains. Even showed me which specific shares would be best to sell first from a tax perspective. Way clearer than what my company's stock portal showed me and definitely better than trying to figure it out myself from confusing brokerage statements.
0 coins
NeonNomad
If you're like me and tried calling the IRS with ESPP questions, you know it's basically impossible to get through. I waited on hold for 3+ hours before giving up. Then someone recommended Claimyr (https://claimyr.com) - you can see how it works here: https://youtu.be/_kiP6q8DX5c It got me connected to an actual IRS agent in about 15 minutes who confirmed exactly how my ESPP taxes should be handled. Apparently there's several common mistakes on broker statements that can lead to double taxation if you're not careful. The agent walked me through checking my cost basis to make sure it properly reflected the already-taxed portion.
0 coins
Fatima Al-Hashemi
•Wait, so this actually gets you through to the IRS? How does that even work? The IRS phone system is notoriously impossible to navigate.
0 coins
Dylan Mitchell
•This sounds like BS. I've been trying to reach the IRS for weeks about stock basis issues. No way something magically gets you through their phone system that quickly.
0 coins
NeonNomad
•It uses an automated system that navigates the IRS phone tree and waits on hold for you. Then it calls you back when it gets a human on the line. It's basically like having someone else wait on hold instead of you. Yes, it really works. I was super skeptical too, but my ESPP situation was so confusing that I was desperate. I got connected to an agent who specialized in stock compensation issues and she cleared everything up in about 10 minutes once I actually got to talk to her.
0 coins
Dylan Mitchell
I'm actually eating my words about Claimyr from my skeptical comment above. After another frustrating 2-hour hold attempt with the IRS yesterday about my ESPP cost basis issues, I broke down and tried it. Got a call back in 22 minutes with an actual IRS agent on the line. They confirmed exactly what the first commenter said - the W2 ordinary income is already taxed, and your cost basis should be adjusted up by that amount so you don't get double-taxed when selling. The agent even helped me understand how to check my 1099-B to ensure my broker reported the correct adjusted basis. Definitely worth it for getting a definitive answer straight from the IRS.
0 coins
Sofia Martinez
Pro tip: Keep ALL your ESPP statements! I learned this the hard way. Sold some shares from 2019 last year and couldn't prove my correct cost basis because I didn't have the original purchase documents. Ended up paying tax twice on some of the income. Your brokerage *should* report the correct adjusted basis on your 1099-B but in my experience they often get it wrong, especially with older shares or if you've changed brokers. The burden is on you to prove the correct numbers if audited.
0 coins
QuantumQuest
•Thanks for the tip! I definitely still have all my statements since this is pretty recent. Should I be keeping anything else besides the purchase confirmation from the ESPP and the W2 showing the ordinary income?
0 coins
Sofia Martinez
•Also keep any statements showing your purchase price calculation (especially if your plan has a lookback provision) and the FMV on purchase date. If your company provides any supplemental tax information about the ESPP purchase, definitely save that too. Some companies provide really helpful tax info sheets that break down exactly what's already been taxed.
0 coins
Dmitry Volkov
Anyone know if the tax treatment is different for qualified vs non-qualified dispositions of ESPP shares? I've held mine for over a year but less than 2 years from the offering date.
0 coins
Jamal Anderson
•Yes, there's a big difference! For a fully qualified disposition, you need to hold the shares for BOTH 1 year after purchase AND 2 years after the offering date. If you only meet the 1-year requirement but not the 2-year one, it's still a disqualifying disposition. With a qualified disposition, any discount you received is still ordinary income, but any additional gain beyond that can be long-term capital gains (lower tax rate). With a disqualifying disposition, more of your gain might be taxed as ordinary income depending on your specific plan details.
0 coins
Emma Wilson
This is exactly the kind of confusion that trips up so many ESPP participants! You're right to be concerned about double taxation, but the good news is that you've already paid the taxes on that $135. Here's what happened: When you acquired the shares in August 2023, the $135 "bargain element" (the discount you received) was treated as compensation income and included on your W2. You paid ordinary income tax on this when you filed your 2023 return. When you sell in 2024, your cost basis for tax purposes will be the fair market value of the shares on the purchase date (8/15/23) - which already includes that $135 discount that was taxed. So you'll only owe capital gains tax on any appreciation since then. Make sure your broker reports the correct adjusted cost basis on your 1099-B. Sometimes they get this wrong and show a lower basis, which could lead to overpaying taxes. If there's a discrepancy, you'll need your ESPP statements to prove the correct basis. Since you're planning to use TurboTax, it should handle this correctly as long as the 1099-B shows the right cost basis. Good luck with those home repairs!
0 coins