Reduce both to the same shape before comparing: one annual figure, over the same period, with the same things included, and the conditional parts separated from the certain ones. The most common distortions are comparing base to total, comparing target bonus to actual bonus, and counting a four-year equity grant as a first-year number.
Put both offers in the same units
Two offers arrive within a week of each other and one of them is obviously better, until you build the comparison and it is not. When offers are shaped differently the comparison has to be constructed rather than observed. Looking at two letters side by side reliably favors whichever employer wrote the more generous-sounding one. That is a fact about letter-writing rather than about pay.
The comparison fails whenever the two sides are not the same quantity. Base against total. A target bonus against a bonus that actually paid. A four-year equity grant against an annualized one. Each of those is an unfair comparison and each is easy to make without noticing you have made it.
So build a table with one row per component and one column per offer. Where you do not have a figure, leave the row blank rather than guessing at it. A blank row is a question to go and ask, and the questions it generates are usually the ones that decide the outcome. Filling it in from memory is how the comparison quietly decides itself.
The rows the table needs
Base salary comes first and is the only row most people fill in. Bonus needs recording twice, once at target and once at what it actually paid out last year. Employer retirement contribution belongs in dollars rather than as a percentage, so the two offers are directly comparable. Employer health premium contribution goes in per month, and it is the single largest number that nobody puts on the table.
Then equity, annualized rather than as a headline grant, and paid leave in days. Six rows in total, and a typical offer letter supplies three of them. That imbalance is exactly why a comparison built from the letters alone is unreliable. The three missing rows are the ones that move the answer.
Separate certain from conditional
Draw a line through the table and produce two subtotals rather than one. The first is what you will be paid regardless of anything happening. The second is what depends on a bonus paying out, equity vesting, or a target being met. Those two numbers answer different questions and both are worth having.
Comparing the certain subtotals tells you which offer you can actually live on. Comparing the totals tells you which one might eventually be worth more. Conflating the two is how people accept an offer they cannot afford in the year they have to get through. Base, employer retirement contribution and employer premium contribution are certain; bonus, equity and anything described as discretionary are not.
Mark the line explicitly on your own sheet rather than holding it in your head. Under the pressure of a decision, the conditional half quietly migrates across into the certain column. Writing it down is a small defense against a predictable failure. It costs one line and it holds.
Normalize the timing
A bonus paid in March to people employed the previous December is not available to somebody starting in January. A twelve-month cliff means the first year of an equity grant is contingent on staying past it. A review cycle two months after you start is worth substantially more than one eleven months after. None of that is visible in an annualized figure.
So work out year one and steady state as separate numbers rather than as one. For a role you might well leave inside two years, year one is the number that actually matters. The two frequently point in opposite directions, which is itself the most useful thing the exercise produces. Knowing they diverge is worth more than either figure on its own.
Annualizing an equity grant without flattering it
Divide the grant by its vesting period rather than by a single year. A $60,000 grant vesting over four years is $15,000 a year, not $60,000 of first-year compensation. That single distortion is the most common error in offer comparisons and it is worth a great deal. It also tends to run in the direction the employer would prefer.
Then apply the cliff on top. If nothing vests before month twelve, the year-one figure is zero whatever the grant document says. Finally, ask whether refresh grants are routine at this employer, because a package with no refresh falls off a step in year five when the original grant finishes vesting. Three adjustments, and the equity row usually looks quite different afterwards.
A worked example that flips twice
Offer A: base $96,000, bonus target 10 percent, employer retirement contribution 4 percent, employer health premium contribution $520 a month, 15 days of leave. Offer B: base $88,000, bonus target 20 percent, a $60,000 equity grant over four years with a twelve-month cliff, employer retirement contribution 3 percent, employer premium contribution $310 a month, 20 days of leave. B has the bigger headline and the better story.
Added up exactly as presented, A totals $115,680 and B totals $126,960. B is $11,280 ahead and the decision looks settled. Most comparisons stop here, and this is the point at which the wrong offer gets accepted.
Now separate certain from conditional. A’s certain subtotal is $106,080 and B’s is $94,360. On money that arrives regardless of how the year goes, A is $11,720 ahead. The sign has flipped and nothing about either offer has changed.
Now normalize. B’s bonus paid at 60 percent of target last year, so use $10,560 rather than $17,600, and the equity annualizes to $15,000. At steady state B comes to $119,920 against A’s $115,680, which is about 3.7 percent apart, plus five extra days of leave worth roughly $1,700. In year one, with the cliff unvested and the first bonus fourteen months away, B lands at $94,360 against A’s $115,680. That is a gap of $21,320 in the year you actually have to live through.
The things that never make the table
Notice period, severance practice, whether leave accrues and pays out on departure, and what happens to unvested equity in a redundancy. None of those is compensation until something goes wrong, at which point they become all of it. They are also the terms nobody thinks to ask about while the conversation is going well. That is precisely why they are worth writing down.
Add them as a column of notes rather than trying to convert them into money. Pricing them requires assumptions you cannot support, and the false precision does more harm than the omission. They rarely change an arithmetic answer and they occasionally change a decision. Having them visible while you decide is the whole point.
What to do with a blank row
Go and ask. What the bonus actually paid out last year, and what the employer contributes toward the premium each month, are ordinary questions that recruiters answer routinely. An employer who declines to answer either has told you something worth knowing about that component. Ask both in the same message and the whole table usually fills in one exchange.
Do not fill a blank with the other offer’s figure, and do not fill it with zero unless somebody has told you it is zero. An assumed number feels like progress and quietly decides the comparison on your behalf. The discipline of leaving it empty is what forces the question. That question is where most of the value of this exercise actually comes from.
Then stop
A carefully built comparison usually produces two totals within a few percent of each other. At that point the arithmetic has done its job and has nothing further to tell you. The decision becomes a question about the work, the people, and what the role does to your next move. That is the right basis for it and the numbers were never going to settle it.
The value of building the table was never the total anyway. It was discovering that one offer pays $21,000 less in the first year, which no amount of looking at the two letters could have shown you. Once you know that, you can decide to take it anyway with your eyes open. What you cannot do is decide well without knowing it.
Common questions
What is the most common comparison error?
Comparing base on one side to total on the other, and counting a multi-year equity grant as first-year money. Both make the more complicated offer look larger than it is.
Why separate certain from conditional?
Because they answer different questions. The certain subtotal tells you what you can live on; the total tells you what the offer might be worth. Conflating them is how people accept a package they cannot afford.
Why does year one differ from steady state?
Cliffs, bonus eligibility dates and review cycles all sit inside the first year. An offer can be better in steady state and substantially worse in the year you actually have to get through.
What should I do about a component I do not know?
Leave the row blank and go and ask. Never fill it with the other offer's figure or with zero — an assumed number decides the comparison without your noticing.
What if the totals come out almost identical?
Then the arithmetic is finished and the decision is about the work, the people and where the role leads. A few percent is inside the margin of any comparison built from incomplete information.
How do I annualize an equity grant?
Divide by the vesting period, not by one year, then apply the cliff. A $60,000 grant over four years is $15,000 a year, and zero in year one if nothing vests before month twelve.
Which rows does the table need?
Base, bonus at target and as actually paid, employer retirement contribution in dollars, employer health premium contribution per month, annualized equity, and leave in days.
Should I price notice period and severance?
No — record them as notes instead. They are not compensation until something goes wrong, and they are hard to value without inventing a probability you do not have.