Why compensation feels so hard the first time
Most founders have never set someone's salary before. The decision feels enormous because (a) you have no internal data to compare to, (b) the wrong number permanently distorts every future hire, and (c) the candidate is sitting across the table waiting.
Here's the framework that gets it right 90% of the time.
Step 1: figure out the market rate (30 minutes)
Three sources, in order of reliability:
- levels.fyi for tech roles in the US/UK/EU. The data is self-reported but high-volume.
- Glassdoor / Payscale for non-tech roles. Less reliable but better than nothing.
- Local data: Stack Overflow Survey for Europe-tech, Robert Half salary guide for finance and ops, AmCham reports for managerial roles in the EU.
Pull three data points: 25th percentile, median, 75th percentile of cash compensation for the role, level, and country.
Step 2: pick a band (30 minutes)
You're going to define a salary band β a range, not a point. The band has three numbers:
- Floor: 25th-percentile market rate. This is what you'd pay a candidate who meets your minimum bar but no more.
- Target: Median. This is your default offer to a strong candidate.
- Ceiling: 75th-percentile. This is for someone who exceeds expectations and you want to retain.
For a Senior Software Engineer in Vilnius, market data 2026 says ~β¬48k / β¬58k / β¬72k gross per year.
If you can't pay the median, don't try to fill the role at all. Below-median offers attract below-median candidates and you'll have to repeat the process in 18 months.
Step 3: post the band publicly
In most US states and across the EU, the salary range now has to be in the post β that's law. But even where it isn't, posting it is the right move:
- It cuts no-show interview rates roughly in half.
- It signals you're not playing salary games.
- It filters candidates by who can afford the role at your band.
The band you post should be the target to ceiling β not the floor to ceiling. Post β¬58kββ¬72k, not β¬48kββ¬72k. Posting from the floor signals you're cheap.
Step 4: handle the offer conversation
When the candidate asks "what salary are you offering?" you have three choices:
a) Anchor at the target. "Based on what we've discussed, we'd like to offer you β¬60,000. We have headroom up to β¬72,000 if there are reasons that's the right number."
b) Ask their expectations first. Only do this if you have leverage β they really want the role, you have other strong candidates. Otherwise it's seen as cheap.
c) Range with reasoning. "For someone with your experience the band is β¬58k-β¬72k. I'm going to offer at β¬65k because of [specific reason]." This is the strongest move because it shows you've thought about it.
If they counter higher than the ceiling: either they don't want the role, or your band is wrong. Both are useful information.
Step 5: the offer letter
Whatever you agreed verbally, put it in the offer letter exactly:
- The gross figure (or net if that's the local convention β Lithuania, Spain, Italy default to net; UK, US, Germany default to gross).
- The time unit β per year, per month. Never bare numbers.
- The currency in local format (β¬60.000 in Germany, β¬60,000 in the UK, $60,000 in the US).
- A note on equity if applicable, with the specifics: number of options, strike price, vesting cliff.
Ambiguity here is where 50% of "the candidate ghosted us" stories actually come from.
Pitfalls that cost first-time founders money
- Lowballing because you can. A β¬5k saving year 1 is a β¬60k cost when you have to re-hire after the employee leaves and a β¬20k recruiter fee on top.
- Overpaying because the candidate is great. Now your second hire β also great β has to be paid even more, or feel underpaid. Stay within your band.
- Mixing currencies. A US founder offering a Lithuanian engineer in USD. The exchange rate moves; the engineer's tax bill moves; everyone's confused. Pay in local currency.
- Promising "we'll review in 6 months." You won't. Just pay the right number now.
What Penroll handles
Penroll's offer-letter generator formats the salary correctly per country (gross/net label, currency convention, time unit), so the offer letter at least doesn't introduce ambiguity. The number is still on you.