TRUST · DATA

How Jobiba's salary figures are built

Jobiba's salary figures come from pay that employers state in job postings. They are not surveys, guesses by users or model predictions. A band appears only when there is enough evidence, and a number that fails a plausibility check is withheld instead of shown.

Last updated

What a Jobiba salary figure is

A figure is the spread of employer-advertised pay across the postings in one cohort, for example one role in one city. The bands you see are the 10th, 25th, 50th (median), 75th and 90th percentiles of that pay, per year. Company salary pages show the 25th, 50th and 75th.

Self-reported pay is kept separate from employer-advertised pay. Salary contributions from signed-in users are stored apart, are never shown individually and are not part of these bands.

What goes into a cohort

Jobs
Active, unexpired postings first seen in the last 365 days. Company salary pages look back 2 years and include postings that have since closed.
Pay
A stated amount or range with an explicit currency and an explicit pay period. When a posting gives a range, its midpoint is used.
Role
The job title is reduced to a role key, so spelling and decoration variants of one title group together.
Place
A place cohort matches jobs by city, state or country name, or by the job's location text.
Annual equivalent
Hourly pay × 2,080, daily × 260, weekly × 52, monthly × 12, yearly × 1.
One currency
Each cohort uses the currency with the most postings and ignores the rest. Jobiba never converts between currencies. Role and place bands never aggregate pay in a currency Jobiba has no reviewed range for; company salary pages include any currency a posting states explicitly.
Plausibility
Role and place bands: a fixed annual range per currency removes impossible amounts, then pay more than 3 × the interquartile range beyond the 25th or 75th percentile is removed as an outlier. Company salary pages apply a per-currency annual floor and one broad upper limit that is the same for every currency, and skip the outlier step.

How pay is read from a posting

Pay comes from the structured pay fields that some applicant tracking systems publish when an employer enables them (for example Greenhouse, Ashby, Recruitee and Pinpoint), from employer feeds that supply pay, or from the posting text. Before a job's pay is stored, Jobiba checks it.

  • Currency must fit the country. If the currency contradicts the job's country and the posting never states it with a symbol or ISO code, the pay is re-read under the country's currency by fixed rules, or dropped when that is not possible. Indian postings that write “25000/- to 65000/-” (amounts under ₹3 lakh) are read as rupees per month unless they say LPA, per annum or CTC.
  • Benefits are not pay. An amount on a benefit line (for example an allowance of up to $10,000 a year) is never stored as salary; a genuine salary line in the same posting replaces it, otherwise the pay is dropped.
  • Ceilings for non-executive roles. Annual pay above a ceiling (USD 600,000, GBP 450,000, EUR 450,000, INR 30,000,000 (3 crore)) is replaced with a figure found in the posting text, otherwise dropped. Executive titles such as chief, president, vice president, head of, partner or managing director are exempt.

A bounded repair pass re-checks stored pay in small batches and writes every change to an audit log with the before and after values.

When a number is shown, indexed or withheld

Fewer than 5 samples
No band is shown. The page says it is building confidence instead of giving a number.
5 or more samples
The band is shown with a confidence label: early (under 15 samples), medium (15 to 49) or high (50 or more).
8 or more samples and 5 or more live jobs
The page is offered to search engines when its role and place are ones Jobiba publishes, and may carry structured data, provided the shape checks below pass.
Fails a shape check
The numbers are withheld, the page says the pay data is under review, and the page is not offered to search engines, even when the sample is large.

Shape checks

  • The percentiles are in order.
  • The 90th percentile is at most 15 × the 10th; the 75th is at most 3.5 × the median; the median is at most 3.5 × the 25th.
  • The 75th percentile is above the 25th: a cohort where every percentile is equal is one posting repeated, not a market.
  • The median is below the non-executive ceiling for its currency.

A trend is shown only when the latest 90 days and the 90 days before each hold at least 5 samples; it is the change in the median between the two windows. Company salary pages need at least 5 postings with pay, in one currency, for a role, and at least 8 in total for the page to be offered to search engines.

How fresh the numbers are

Salary figures are recalculated on a schedule, by default about every 48 hours, instead of on every page view. A page can therefore normally lag the newest postings by up to that long. If a refresh fails, the last good figures stay up until the next successful refresh. Salary pages show the number of postings behind a figure and a “refreshed” date, which is when the page was last generated, not necessarily when its figures were last recalculated.

What the figures are not

  • They are not what any person earns. Advertised pay can differ from the pay an employer finally agrees.
  • They are the pay stated in postings. Jobiba does not add estimated bonuses, equity or benefits to a figure.
  • Coverage depends on employers publishing pay. A role or market where employers rarely do has few or no bands.
  • Currencies are never blended or converted in these bands, so figures for different countries are not directly comparable.

Corrections

If a figure looks wrong, email [email protected] with the page URL. How jobs themselves are sourced and expired is described in How we verify jobs; how Jobiba uses AI is described in the editorial policy.