Methodology

How OfferUnlock estimates the market value of an offer — and the limits we own up to. This page is deliberately transparent: if a number looks off to you, we want to know.


In one sentence

OfferUnlock computes a market estimate from your base salary, role, location, and experience, then places your offer in a range around that estimate. The calculation runs in your browser — your numbers are not sent to anyone.


Upfront honesty

Our estimates are calibrated from public sources — they are not proprietary primary data.

We don't have access to the internal datasets of Levels.fyi, Glassdoor, or Payscale. What you get is based on:

  • a reference base salary anchored on the median of a mid-level tech profile (3 to 5 years of experience) in the United States, across all industries;
  • adjustments for location, role, and experience, calibrated by cross-referencing public sources (BLS, Statistics Canada) and market observations (Levels.fyi, Glassdoor).

What we don't claim to do:

  • Give a value accurate to within 5%. Our ±12% range around the market deliberately reflects the noise in public sources.
  • Cover every case. The product targets salaried tech offers in North America. European and Asian markets, highly specialized roles, and exotic packages (complex pre-IPO stock options) are outside our current scope.
  • Provide week-to-week up-to-date figures. The public benchmarks themselves aren't.

If a number seems off from your experience, write to privacy@offerunlock.app. Documented counter-examples help us improve the calibration.


Sources consulted

Official sources

SourceWhat it provides
U.S. Bureau of Labor Statistics — Occupational Employment & Wage StatisticsMedian salaries by occupation, updated annually. This is the anchor of our reference base.
Statistics Canada — Labour Force SurveyCanadian equivalent for Canada estimates.
Levels.fyi (public views)Medians by level and by company in tech. Read directly from public pages.
Glassdoor (public views)Medians by title and by city. Documented upward bias (contributors are over-represented at large companies).

Cross-check sources

We cross-reference this data with annual sector reports (Hired State of Salaries, Stack Overflow Developer Survey, Robert Half / Hays Tech barometers) to verify the consistency of gaps by function and by experience.

Limits we own up to

  • Selection bias. Levels.fyi and Glassdoor are fed by people who choose to share — often the best paid. The bottom of the range is under-represented there. Our reference base is therefore deliberately lower than their displayed median, to compensate.
  • Time lag. The tech market went through severe compressions over 2024–2026. Medians published in 2024 on 2022–2023 data are already partly outdated. We recalibrate at least once a year.
  • Geographic granularity. We group certain cities together (San Francisco and New York in the same tier, for example), even though a real gap exists between them. A trade-off we accept at this stage.

How the estimate is built

The estimate starts from a reference base of about USD 85,000 — the base salary of a generalist mid-level tech profile in the United States. This base is then adjusted by three factors.

The geographic adjustment

LocationEffect on the estimateWhy
Very high cost area (SF, NYC)+30%Documented gap of 25 to 35% vs the continental median.
US remote role+25%These roles target candidates whose salary expectations are anchored on major metros, not on a national average.
High cost area (Austin, Seattle)+10%10 to 15% above the US median depending on the city.
Canada, Europe, otherreferenceNational reference baseline.

One important limit: the estimate is expressed in USD, including for Canadian or European cases. If you enter a salary in another currency, the result will be skewed. We plan to handle currency by region in a future version.

The role adjustment

Software engineering and product management get an upward adjustment (+15% and +10% respectively), consistent with public medians. Other roles use the reference base without a specific adjustment for now — finer per-role calibration is part of our planned improvements.

The experience adjustment

Experience increases the estimate non-linearly: about +5% per year over the first 15 years, then the effect drops sharply beyond that.

ExperienceCumulative effect
Entry levelreference
5 years+25%
10 years+50%
15 years+75%
20 years+82%
30 years+98%

Why this saturation? Because the pay of very senior profiles (Staff, Principal, Distinguished) rarely comes from a mechanical seniority effect. It depends on individual levers — equity, retention, key roles — that our general estimate doesn't try to model. A linear progression would value a 30-year profile at nearly 3x an entry-level one, which isn't borne out in the market.

The ±12% range

Once the estimate is computed, we place it within a ±12% range. Below it, your offer is considered below market; above it, above market; in between, within range.

This width absorbs the normal noise between public sources (the median gap between Levels.fyi and Glassdoor for the same role and city is 5 to 10%). A narrower range would produce false "below market" signals for candidates who are actually well positioned.


When we recalibrate

TriggerAction
Every year (May/June)Review of the reference base and geographic adjustments. The tech market moves significantly from one year to the next.
Recurring user signalIf several people challenge the same case, it's a sign our calibration has drifted on that segment.
Before a high-traffic periodConsistency check against several public benchmarks.

Contact

To challenge a number or help us refine the calibration, write to privacy@offerunlock.app. Any documented and sourced correction will be credited if published.