I've done a lot of negotiation in sales and I thought I'd be good at it on my own job offer. Spoiler: it's different when it's you on the line. Here's what I learned from my Stripe negotiation this spring.
Context: staff-adjacent role on their revenue/sales enablement side, not SWE. So my data points are for a business/GTM role, not engineering. Take with that grain of salt.
What the first offer looked like: Base $185k, equity $500k over 4 years, signing $35k. Non-technical role, so no bonus either. Total TC in year 1 about $285k annualized.
What I tried and what happened: "Can you move the base?" Response: they said the band for the role at this level was $175-190k and I was already near the top. They wouldn't go higher than $190k on base, period. Got $5k. "I have an offer from X at $210k base." (True, different company.) Response: recruiter went back, came back with a revised equity number of $600k and a signing bump to $50k. Base didn't move because they said they couldn't match cross-industry. "Can we accelerate the vest schedule?" Response: hard no. They said they don't do non-standard vesting schedules at all. I believe them. "Can we add a performance bonus clause?" Response: no. They said they don't have variable comp for this role type. Also believe them.
So in the end I got: base $190k, equity $600k, signing $50k. Moved about $115k in total value from the original offer.
What I think actually mattered: The competing offer was the lever. Without it I think I get $5k base and that's it. They track market comp carefully. The equity move was real and meaningful. Signing is the easiest thing for them to move.
What didn't work: Any argument based on cost of living, "I was hoping for more", or vague future promises. They respond to market data only. Come with numbers or come empty-handed.