About & methodology

Find out who pays what. Here's how.

WHO PAYS GOOD is an independent directory of high-paying jobs. Transparency is the product: this page explains where every number comes from.

How listings are collected

Listings come from sources we have reviewed and are allowed to use, in this order of preference:

  1. Employer career pages and their public applicant-tracking-system feeds.
  2. Official APIs and feeds whose terms permit this use.
  3. Manual research of publicly available information.

Every source is recorded with its permitted collection method, attribution requirements and the date its terms were last reviewed. Each listing stores its original URL, original publication date and the date we collected it. We record facts — title, company, location, published pay — and write a short, original summary. We never reproduce full third-party job descriptions; the full description stays on the original listing, which we always link to.

We don't claim ownership of information that belongs to employers or other sources. What we build is the structured, normalized and historical record of what was published, when, and where.

How salary data is normalized

Original figures are stored permanently, exactly as published: amount, currency, period and pay basis. Normalized values are stored alongside, never instead.

1. Pay basis is never mixed

Each listing is labelled with what its range represents:

  • Base salary
  • On-target earnings (OTE)
  • Total cash (base + bonus)
  • Total compensation (incl. equity)

Bonus, commission and equity are recorded separately when disclosed. Base salary, OTE and total compensation are never ranked against each other.

2. Annualization

Non-annual pay is converted to a yearly figure with fixed full-time assumptions (methodology v1):

  • Hourly × 2,080 (40 hours × 52 weeks)
  • Daily × 260 (5 days × 52 weeks)
  • Weekly × 52
  • Monthly × 12

3. Currency conversion

To compare across countries, annual figures are converted to US dollars using a recorded reference rate (for example the European Central Bank's euro reference rates) from the listing's publication date or the closest available date. The rate, its date and its source are stored with every listing. Conversions are for comparison only and don't reflect cost of living or taxes. If no rate is recorded, the listing keeps its original figures and is left out of cross-currency rankings.

4. Undisclosed pay stays undisclosed

When an employer doesn't publish pay, the listing is marked Salary not disclosed. We never estimate a salary and present it as published data.

How listings are verified

  • Imported and machine-submitted listings enter a pending review queue. A person checks them against the original listing before publication.
  • Duplicates are blocked by original URL, by source ID, and by company + normalized title + location. Near-duplicates are flagged for review.
  • Each listing shows its last verified date. Pay verified means a reviewer confirmed the figures on the original listing on that date.
  • Listings carry an expiration date. Expired listings are no longer advertised as vacancies, are removed from search results and the sitemap, and lose their job-posting structured data. They stay available as salary history.

Salary history

Each time a listing with published pay goes live, changes its pay or has its pay re-verified, we record a dated salary observation that can be traced to its source and collection date. Observations are append-only and are never overwritten, which is what makes company salary histories possible.

How rankings are calculated

  • Only active listings with published pay of a single pay basis are included.
  • Only full-time roles are ranked: an annualized contract day rate or hourly rate is not comparable to a salary.
  • Each range is reduced to its midpoint (or the single published figure), annualized and converted to USD.
  • Job rankings need at least 10 qualifying listings. Company and industry rankings use the median midpoint and need at least 3 listings per company or industry, and at least 5 companies.
  • Below these thresholds, the ranking says so and is not indexed by search engines.

Search results sorted by “highest salary” use the same midpoint in USD. Each figure is labelled with its pay basis, and you can filter to one basis for a like-for-like comparison.

Employers may pay to sponsor a listing in the future. A sponsored listing is always labelled Sponsored wherever it appears, with a disclosure on its page. Sponsorship never changes pay figures, verification status or position in a salary ranking.

Sources, attribution and privacy

Every listing names its source and links to the original. We respect website terms, copyright and data-protection law, and we don't collect personal data about candidates. Newsletter email addresses are stored only with explicit consent and can be removed on request.

Browse jobs