Free Money · Taxes

A Tale of Two ESPPs

[As with anything tax-related, see my disclaimers.]

Despite complications to my taxes, I have personally found the financial benefits of participating in employee stock purchase plans (ESPPs) to outweigh the cons.

What’s an ESPP?

In a nutshell, ESPPs give employees the opportunity to buy company stock directly from the company at a discount. Employees choose a percentage of their salary to set aside and then periodically that money is used to buy company shares which are then given to the employee.

ESPP details can vary widely between plans. Here are the details from two ESPP plans that I have participated in.

MegaCorp’s ESPP

  • Period: three months
  • Discount: 10% off the closing price of the period
  • Contributions every pay period, twice a month
  • Internal rate of return: 161%
  • Could stop contributing and withdraw all contributions at any time without penalty but forfeiting discount
  • Qualifying holding period: 21 months after purchase.
  • Able to sell shares within 2 days of purchase.

DumpsterFireInc’s ESPP

  • Period: six months
  • Discount: 15% off either the opening or closing price of the period, whichever was lower
  • Contributions every pay period, twice a month
  • Internal rate of return: 97%
  • Could decrease contribution % once during the period without needing to withdraw
  • Could withdraw all contributions at any time without penalty but forfeiting discount
  • Qualifying holding period: 18 months after purchase.
  • Able to sell shares the next day following a purchase

At both MegaCorp and DumpsterFireInc, I was limited to 15% of my salary to the ESPP and the IRS capped participation at $25k.

A qualifying holding period simply means that if I sell the shares before the end of the holding period, the tax consequences can change.

ESPP Components

The following waterfall charts attempt to show the various components of the ESPP plans I’ve participated in.

  • Blue: These are my contributions. Notice they are spread out over the period. Contributions are after tax. I pretend this is a CD where the discount is the “interest” rate. If I withdraw early, I forfeit all of the “interest”. However, unlike a CD, I don’t have to deposit the full amount up front, and later contributions “earn” more than earlier contributions.
  • Yellow: This is the discount. In my experience, regardless of when I sell, this is always taxed at my marginal tax rate. I found this reported as a DSQDP (or something like that) in box 14 of the W2 statement within the year I sold the shares. I usually sold within the two year holding period but I’m told that if it’s beyond that period, the company no longer needs to report it but I would still need to report it.
  • Green/Red: Daily rise (dark) and fall (light) of the stock after the ESPP purchase. If shares are held for more than a year after purchase, any green is taxable at my capital gains rate (15%). If I sell before a year, the green is taxed at my marginal tax rate (22%). If the stock dips into the discount or further (red) then it’s a capital loss. If the red dips lower than the yellow discount, I’ve lost money by participating in the ESPP.

The following chart is from my experience at DumpsterFireInc and shows an additional color.

  • Purple: If the price of the stock was lower at the opening of the period than at the end, then there is an additional discount/gain. If I sell before the holding period is over, this area is taxed at my marginal rate (22%). If I sell after the holding period, it’s taxed at my capital gains rate (15%).  Sometimes there is no purple area, like when the price has declined during the period and the closing price is below the opening price. I saw that a couple times.

Annualized Rates of Return

It’s tempting to look at the discount number and compare that to other rates of return. But that would be apples to oranges for the following reasons.

  • The contribution period is for only a fraction of the year.
  • Contributions are spread over the period, not lumped at the beginning.
  • Later contributions that are held for only a couple weeks get the same discount as contributions made earlier in the period.
  • Different periods between plans make it harder. I’d rather have a 7.5% discount every three months than a 15% discount every six months.

MegaCorp’s ESPP annualized rate of return from discount: 161%

DumpsterFireInc’s ESPP annualized rate of return from discount: 97%

IRS Limits

As stated above, the IRS puts a limit of $25k on ESPP plans. In my experience, when the limit gets hit, the contribution amounts remain the same but they just give me the cash back at the end of the period. Again, I’ve already paid tax on it.

Flip this ESPP!

You’ll notice in the chart above that the daily market fluctuation can put me easily in the red zone. I also practiced immediately selling any ESPP shares. In MegaCorp’s case, there was absolutely no benefit because the discount amount (yellow) was always taxable at the regular income tax rate and holding it longer gave no benefit. With DumpsterFireInc, saving tax on the purple section from 22% to 15%, a delta of 7%, just wasn’t worth the risk.

I generally don’t hold on to company stock ever. With my job and possibly my house value (in the case of MegaCorp) tied to the well-being of the company, I need less exposure, not more.

Adjusting the Tax Cost Basis

Unfortunately brokerages don’t always or can’t always report the accurate cost basis (what was already taxed) when I sell. They often just throw their hands up and report the sale. If I’m not careful during my taxes, it’s possible that I pay more tax than I should.

Remember, I’ve already been taxed on the blue and yellow and if the brokerage doesn’t report those as my cost basis, it’s up to me to report an adjusted cost basis.

Searching for Form 8949 and ESPP finds help on this and Turbotax is helpful here as well.

Cash Flow Challenges

If I could have put 100% of my salary with no IRS cap into the ESPP, I would have. Unfortunately there are limits so that’s not possible.

However, even with the 15% salary limit and $25k, IRS-imposed limit, there’s still the issue of cash flow.

Can my budget handle little or no salary for months at a time and getting it all in a big chunk at the end? If not, then I start small, building my way up to the limits.
To make things easier, I could also use this to double as my extended emergency fund because with both plans I could withdraw contributions at any time. Sure, I’d be forfeiting the discount, but it’s possible.

Conclusion

During my tenure at MegaCorp and DumpsterFireInc, I found financial success in participating in the ESPP, as long as I flipped it immediately. It’s tempting to think that flipping the stock is counter to what the company wants. However, even when I flipped the stock, the company benefited as it was able to get more shares into the market without having to go through a onerous filing and stock offering process.

What kind of experience do you have with ESPPs? Leave your experience in the comments.

Hasta luego!

2 thoughts on “A Tale of Two ESPPs

  1. Thanks for posting this detailed analysis. I found several of your conclusions useful and relatable. I wonder if you worked for “DumpsterFireInc” and “MegaCorp” in the same year. One question I have been trying to find the answer to with no success is if the $25,000 IRS limit applies on a person-per-year basis or if there are individual $25,000 limits for each company/plan.

    1. Thanks for stopping by, Diego. I’m glad you found what I wrote relatable.

      I left MegaCorp in early January to accept the position at DumpsterFireInc, making a clean break between the ESPPs. Actually, when I started at DumpsterFireInc, it was a year before they were public and even had a ESPP program, further making it a non-issue. I suspect the IRS limit applies to the plan and not the person, but I really have no idea. Maybe a great question for https://money.stackexchange.com/?

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.