Treat compensation as a system, not a number
Tech compensation is not one number. It can include base salary, bonus, equity, pension, sign-on payment, relocation, contractor day rate, private health cover, remote-work costs, holiday, notice period and redundancy protections. Negotiation gets messy when candidates compare only the headline salary.
This guide is not financial advice and does not tell you what number to ask for. Career and salary content affects income, so it should be framed carefully. The practical goal is to help you understand the offer, collect evidence and negotiate professionally.
The 2026 context matters. Pay transparency rules have changed candidate expectations. New York and New York City require salary ranges for covered postings. The EU Pay Transparency Directive pushes pre-interview salary information by June 2026. The UK has moved more slowly, with government guidance focused on increasing transparency rather than a blanket range requirement. Primary sources: New York State pay transparency, NYC salary transparency, EU pay transparency, and the UK government's pay transparency publication.
Build a compensation inventory
Before negotiating, write down every part of the offer:
| Component | What to check |
|---|---|
| Base salary | Currency, review cycle, probation impact |
| Bonus | Target, historical payout, eligibility date |
| Equity | Grant size, vesting schedule, strike price if options, refresh policy |
| Pension | Employer contribution and matching rules |
| Sign-on | Repayment clawback and tax timing |
| Remote costs | Equipment, office stipend, travel expectations |
| Leave | Holiday, parental leave, sick pay |
| Risk | Funding stage, notice period, redundancy terms |
For private-company equity, avoid treating paper value as cash. Ask how the company explains valuation, exercise cost, tax treatment and liquidity. For public-company RSUs, check vesting schedule and stock volatility. For startups, the upside can be meaningful, but the risk is different from a higher base salary.
Useful data sources include Levels.fyi's annual report, Glassdoor salary pages, public job adverts, recruiter ranges and official labour statistics where relevant. For US occupational data, the BLS Occupational Employment and Wage Statistics is a primary source. For UK context, the ONS labour market pages can help with macro trends, though they are not a tech-company compensation database.
Ask for range early, but do it cleanly
The best time to discuss compensation is before a long interview loop. You are not demanding an offer. You are checking whether the process is worth both sides' time.
A clean question:
Could you share the budgeted compensation range for this role, including base salary and any bonus or equity components? I want to make sure we are aligned before going deeper in the process.
If the recruiter asks for your expectation first, you can still anchor in evidence:
I am still calibrating against the scope and level. Based on the role description and market data I have seen for similar roles, I would expect the package to be within the range budgeted for a mid-level backend engineer. Could you share the company's range so I can confirm alignment?
Do not invent competing offers. Do not claim "market rate" without knowing which market. London fintech, fully remote US startup, regional UK SaaS and public-sector contractor roles do not price the same way.
Negotiate on scope and evidence
Strong negotiation is usually about fit between level, scope and compensation. Your evidence can include:
- Comparable roles with published ranges.
- Recruiter-provided ranges.
- Offer components from similar companies.
- Your level evidence: ownership, impact, domain match, leadership.
- Scarcity: specialist skills, availability, location or security clearance.
A practical structure:
- Thank them and confirm interest.
- State the specific gap.
- Tie the ask to scope or evidence.
- Ask whether there is flexibility in a component.
Example:
I am excited about the role and the team. The main gap is the base salary relative to the scope we discussed, especially owning the payments migration and on-call rotation. Is there flexibility to improve the base salary, or alternatively to adjust the sign-on or review timeline?
This avoids fake certainty. It gives the employer options. Candidates report better conversations when they negotiate the package rather than issuing ultimatums.
Understand wide bands and level mismatch
A wide salary band is not always bad faith. It can mean the company hires multiple levels under one title, or that location and equity mix vary. It can also be a warning sign that the company has not defined the role.
Ask:
- What level is this role mapped to internally?
- Where would this offer sit within the band and why?
- What scope would justify the top of the band?
- How are salary reviews handled after joining?
- Are remote employees paid by location or one global band?
Levels.fyi is useful for company and level mapping, but it is not a substitute for understanding the specific offer. Glassdoor can add signal, but self-reported data can be stale or mixed across titles. Treat all databases as inputs, not verdicts.
Know your walk-away conditions
Negotiation advice often focuses on tactics. The more important question is what you value. A higher package may be a poor trade if the role has unsustainable hours, unclear remote terms or weak sponsorship for growth. A lower package may be rational if it gives you a strong role transition, visa stability, excellent mentorship or a rare domain entry point.
Write down your walk-away conditions before the offer call. Examples:
- Base salary below your minimum budget.
- Required office attendance that breaks your commute.
- Equity-heavy package with low cash and high uncertainty.
- No clarity on level, manager or team.
- Contractor setup when you need employee protections.
This is especially important for remote and cross-border roles, where tax, employment rights and benefits can change the real value of the package.
Continue your prep
Negotiation works best when your role evidence is strong: