A Thursday afternoon in March 2019. Marcus Chen, a mid-level software engineer at a Chicago logistics firm, turned down a recruiter’s call because he’d just gotten a 3% raise and felt appreciated. Six years later, his college friend accepted a role at a competing firm doing nearly identical work — and walked in at $47,000 more per year.
Marcus didn’t make a bad career decision once. He made the same bad decision six times in a row.
The Number You Need to See First
Here is the number that matters: 34%.
According to the Federal Reserve Bank of Atlanta’s Wage Growth Tracker (2024), job switchers earn wages approximately 34% higher than job stayers over a comparable period. A separate 2023 analysis by the Pew Research Center found that among workers who changed employers, 60% saw real wage increases, compared to just 47% of those who stayed put. And the gap compounds. Every year you stay, the ceiling moves up slightly. Every year the market moves up faster.
Do you actually know what your skills are worth on the open market right now — not two years ago, not at your last review, but today?
Most people get this wrong. They anchor their sense of fair pay to their last raise, not to what the market is actually paying strangers with their same resume.
Why Companies Are Structurally Built to Underpay You
This isn’t malicious. It’s mechanical.
Compensation budgets inside most mid-to-large companies are set as a percentage of existing payroll. The Society for Human Resource Management (SHRM) reported in 2024 that average merit increase budgets sat at 3.5% — slightly above inflation in a neutral year, and well below it in a hot one. Meanwhile, the external hiring market sets salaries based on competition for talent, which moves at a completely different speed.
New hires are priced against the market. Existing employees are priced against their own history. Those are two very different pricing mechanisms, and they almost never converge in your favor.
Did You Know: A 2022 study by compensation analytics firm Syndio found that new hires in the same role as tenured employees were paid, on average, 7–12% more at the point of offer — before accounting for years of compounding divergence.
Over Marcus’s six-year tenure, the mathematical divergence becomes catastrophic. A $95,000 starting salary with 3.5% annual raises reaches roughly $116,000 by year six. The same role, filled externally in year six, might be posted at $145,000 or higher in a market that moved faster than the internal budget did. That’s not a gap. That’s a structural trap.
What the Data Says (And What It Means for You)
The Bureau of Labor Statistics Employment Cost Index showed in Q4 2024 that wages and salaries for private industry workers rose 4.2% year-over-year. External offer data from Levels.fyi for mid-level software engineers in the same period showed median total compensation increases of 11–14% in competitive markets. The two numbers are not living in the same world.
When did you last run your own salary against three live job postings for your exact title, your exact level, at companies in your geography or remote tier? Not a salary calculator. Actual postings with actual numbers.
If your best friend called you tomorrow with an offer 34% higher than your current salary, would you be shocked — or would some part of you already know that number has been sitting out there, unclaimed?
Warning: The loyalty penalty accelerates at the 3–5 year mark. After year five with one employer, the Bureau of Labor Statistics (2023) found that median wage growth for stayers flatlines at roughly 2.1% annually, regardless of performance rating.
The mistake most professionals make isn’t staying too long. It’s staying without ever checking the price. That’s the difference between a strategic decision and a passive one.
The Script That Actually Works
Let me be direct about this. If you’ve decided to try the internal negotiation route first, you need to walk in with market data, not feelings. Here is a script that has worked:
“I wanted to have a direct conversation about my compensation. I’ve been doing some research on market rates for my role and experience level — using BLS, Glassdoor, and Levels.fyi — and I’m seeing a meaningful gap between what I’m currently earning and what the market is paying for this work. I’m not looking to issue an ultimatum. I genuinely want to stay and keep building here. But I’d like us to close that gap. Can we talk about what that looks like?”
Three things that script does correctly: it names specific data sources (which signals you’re serious, not emotional), it removes the adversarial framing, and it opens a door without slamming one shut. Use it verbatim.
Pro Tip: Bring a one-page comp comparison document to that meeting. Three external job postings. Your current salary. The median from BLS OES for your title and metro area. One paragraph of your documented contributions in the last 12 months. That document does more work than 20 minutes of talking.
If They Say No
Your bargaining power disappears the day you sign an offer letter. Not before. Which means the conversation above is worth having — once. If the answer is no, or if the counteroffer is a 3% bump while the market shows 30%, that’s data too.
The impossible becomes possible the moment you have something they want to keep. An external offer is not a threat. It is a real number that replaces the theoretical argument you’ve been losing internally for years.
I spent 15 years on Wall Street. This is what they never tell you: in every negotiation I ever saw, the person with the most accurate information won. Not the most loyal. Not the most tenured. The most informed.
The tech hiring market has shifted significantly since 2024, and understanding that landscape before you move matters as much as knowing your worth. Timing and market awareness work together.
Action Step: Before you negotiate anything internally, spend 90 minutes this week pulling live comp data from Glassdoor, Levels.fyi, and BLS OES for your exact title. Screenshot three job postings. Write one number down: the median market rate for your role. Everything else flows from that number.
The same discipline applies in other financial decisions. Travel insurance timing works on a 14-day window that most people miss because they don’t check until it’s too late. Salary negotiation has its own timing traps, and they cost far more. Full stop.
Your Next 3 Steps
Step 1: Run your market comp audit this week. Open Glassdoor, Levels.fyi, and BLS Occupational Employment and Wage Statistics (OES). Search your exact job title, your experience level, and your metro area or remote tier. Pull three live job postings that match your role. Write down the median number you find. Not a range. One number. Build a simple one-page document: current salary on the left, market median on the right. That gap is your opening argument.
Step 2: Request a compensation conversation within 30 days. Do not wait for your annual review cycle. Email your manager this week and ask for 20 minutes to discuss your compensation. Use the script in this article verbatim. Bring the one-page comp document. If the answer is a real commitment to close the gap, stay and verify. If the answer is a 3% consolation raise while the market shows 20–30% above your number, move to Step 3.
Step 3: Apply to one external role in the next 60 days. Not because you’ve decided to leave. Because a real offer number in your hand is worth more than any internal talking point you can construct. One application, one process, one live number. That number becomes your actual floor in every future negotiation, internal or external. You cannot negotiate without it. Get it before you need it, not after.
Do the math. Then act on it.
