Your manager has to sell it to someone else
Even when your manager agrees you deserve more, they usually can’t just say yes. They have to justify it to their own manager, to HR, or to a compensation committee, and they’ll be doing it next to requests from other teams.
So think of the conversation as handing your manager an argument they can repeat in a room you’re not in. “Alex is great and works really hard” won’t get far in that room. “Alex led the billing migration that unblocked annual plans, and has been the de facto owner of payments on-call since March” will.
Build the case before you ask
What you’ve delivered
Pick two to four things, each with a result attached, ideally a number. Write them as outcomes rather than tasks:
- Led the billing service migration, shipped with zero downtime, which unblocked annual plans three weeks later
- Cut CI failures from about 18% to 3%, saving the team a few re-runs a day
- Onboarded both new engineers; first merged PR went from roughly two weeks to four days
How your role has grown
Raises are easier to justify when your job today is bigger than the job you were hired, or last paid, for. Things like owning a system end to end, leading projects, mentoring, being the person other teams come to.
What the market pays
For engineers, levels.fyi is the usual starting point; salary surveys, Glassdoor, and recruiters you trust fill in the rest. Look for your role, level, and location rather than one impressive outlier.
Then pick a number. A specific figure is much easier for your manager to act on than “more”, so decide what you’re asking for before the meeting, and make sure you can explain where it came from.
When to ask
Timing matters more than most scripts admit.
- Before the budget is set. At a lot of companies, raises are decided during a compensation cycle that wraps up before you ever hear about it in your review. Ask your manager when that cycle happens, and bring this up one to three months ahead of it.
- After a visible win, like a launch, a rescued incident, or a quarter where your project carried the numbers. Your case is freshest in everyone’s mind then.
- Not in the middle of a fire, such as layoffs, a missed quarter, or your manager’s worst week. You can still ask, but expect “not now”.
Ask for time to talk about it specifically. You can add it to the agenda of your next one-on-one (“I’d like to spend part of our 1:1 on my compensation”) so your manager isn’t caught off guard.
What to say
Keep it short, since you’re opening a conversation. Something like:
I’d like to talk about my compensation. Over the past year my role has grown quite a bit. I led the billing migration, which unblocked annual plans. I’ve been the main on-call owner for payments since March. And I onboarded both of our new engineers, who were shipping within their first two weeks.
Looking at what senior engineers in our area are paid, I’d like to ask for a raise to $X. What would it take to get there this cycle?
That last question matters. It turns the conversation from yes-or-no into “what would need to be true”, which gives your manager something to work with even if they can’t say yes on the spot.
A few things to leave out:
- Comparisons with a coworker’s pay. Even when you know the numbers, it puts your manager in an awkward spot and pulls the focus away from your work.
- Personal reasons like rent or a new car. They’re real, but they aren’t an argument your manager can take upstairs.
- Ultimatums you don’t mean. Only mention an outside offer if you’d actually take it.
If the answer is “not right now”
That’s a common answer, and it isn’t the end of the conversation. Ask:
- What specifically would need to change for this to be a yes?
- When can we revisit it? Put a date on it.
- If the budget is the problem, is there room elsewhere: a level or title change, a bonus, equity, a bigger scope, a learning budget?
Then write it down. A short follow-up email after the meeting turns a vague “maybe later” into something both of you can point to.
Email templates
Most raise conversations go better in person or on a call. Email works well for two jobs: asking for the meeting, and recapping it afterwards. If your team is fully remote and async, the first one can also carry the full request.
Asking for the meeting:
Subject: Time to talk about my compensation
Hi [Manager],
Could we set aside 30 minutes in the next week or two to talk about
my compensation? Over the past year my role has grown, mostly through
[biggest project] and [ownership or scope change], and I'd like to
walk you through that and discuss an adjustment.
Happy to fit it into our 1:1 on [day] if that's easier.
Thanks,
[Name]
Recapping after the conversation:
Subject: Follow-up from our conversation about compensation
Hi [Manager],
Thanks for talking this through today. To make sure we're on the same
page:
- I asked for an increase to [$X], based on [two or three outcomes]
and market data for [role / level / location].
- You mentioned [what they said: needs approval / budget timing / the
bar for the next level].
- We agreed to revisit on [date], and in the meantime I'll focus on
[anything you agreed to].
Let me know if I've missed anything.
[Name]
Asking for a promotion instead?
A promotion conversation works a little differently. With a raise, you’re asking to be paid fairly for the job you’re doing. With a promotion, you’re showing you’re already doing the next job.
Ask your manager for the expectations of the next level, or your company’s career ladder if there is one. Then map your evidence against each expectation, be honest about the gaps, and ask:
Here’s how I think my work lines up with the next level. Where do you see gaps, and what would you need to see from me over the next six months to make the case?
Agree on a timeline, and check in on the gaps every month or two instead of waiting for the next review.
The hard part is having the evidence ready
Every example above has a project name, a date, and a number. That’s what most people don’t have when they finally decide to ask. They remember feeling busy all year and very little of the detail.
The fix is a running record of your work, a line or two a day. A work journal does it, and so does Perfly, which is built to make it as low-effort as possible:
- You jot down a few lines at the end of the day, or let GitHub, Jira, Google Calendar, or Notion draft entries from your activity. If you use Claude Code, Codex, or Cursor, your agent can send the summary. You confirm what to keep, and Perfly asks for the number when an item would be stronger with one.
- If you set yearly goals, entries link to them, so you can see how much evidence backs each goal and how much of it has a number attached.
- When it’s time, Perfly drafts a self-review from those entries for the period you pick. Every sentence links back to the work behind it, which is exactly what you want in hand before a raise or promotion conversation.
- You can practice talking through your review with an AI interviewer that has read it, so the first time you say it out loud isn’t in front of your manager.
Starting late? Connect GitHub and Google Calendar and Perfly can pull in the last 12 months of activity to build from.
FAQ
How much of a raise should I ask for?
There’s no universal number. Anchor it to market data for your role, level, and location, and to how much your scope has grown since your pay was last set. Whatever you land on, ask for a specific figure and be ready to explain where it came from.
Should I wait for my performance review to bring it up?
Usually not. At many companies the raise budget is settled before the review conversation happens. Bring it up a month or more ahead of your comp cycle, and use the review to reinforce the case.
Can I ask for a raise over email or Slack?
You can, but it tends to go better live, where your manager can ask questions and you can read the room. Use email to request the meeting and to recap what you agreed.
What if I’ve only been in the role for a few months?
It’s a harder case. Unless your scope changed a lot or you were clearly underpaid at hiring, it usually works better to start collecting evidence now and ask at the next cycle.
How much does Perfly cost?
30 days free with everything unlocked. After that it’s $6.99 a month, or $69.99 a year.