How We Calculate Posted Pay
How Metaintro measures what employers are advertising to pay, read from job postings live on employer career sites, and what the figure does and does not cover.

Most salary guides, ours included until now, report a government figure. The Bureau of Labor Statistics surveys people who already hold a job and publishes what they earn. It is careful work and we still cite it. But it answers a slightly different question from the one most readers are asking. Someone searching for what a job pays is usually deciding whether to apply for one, and they want to know what is being offered right now. So we started measuring that ourselves. Where a guide on this site shows a posted pay figure, this page explains exactly how we arrived at it.
What Do We Actually Count?
We read job postings that are live on employers' own career sites.
Not aggregators, not search results, not a third party's database. We query the software employers themselves use to publish openings, so a posting we count is one the employer is running today.
A posting has to clear three bars to be included.
It has to be dated by the employer. The posting must carry a date from the employer's own system, and that date must fall within the last 90 days. A standing careers page is not a dated posting. If we cannot establish when something was posted, we exclude it rather than guess.
It has to state pay in its own text. We read the salary from the body of the posting, including the pay-transparency paragraph that a growing number of states require. We deliberately ignore the machine-readable pay data attached to many postings, because it is frequently a placeholder rather than a real figure. One large hospital system publishes a range of one dollar to one million dollars in that field to satisfy a technical validator, while the actual wage sits in plain prose further down the page.
It has to be base pay. A posting quoting only on-target earnings or total compensation is excluded, not converted. Those figures fold in commission and bonus, and comparing them to a base wage would overstate what the job pays. In one posting we looked at, on-target earnings exceeded the same job's base salary by more than twenty-four thousand dollars.
Where pay is quoted hourly, we convert at 2,080 hours a year and keep both figures.
Why Do We Count Employers Instead of Postings?
Once we have the qualifying postings, one detail decides whether the result means anything. We count employers, not postings.
This matters more than it sounds. In one occupation we measured, a single insurance company accounted for 60 of 102 postings, all of them the same franchise advertisement repeated in different cities, every one quoting an identical range. Treated as 60 separate data points, that one company would simply have been the answer.
So each employer contributes a single observation, its own median across whatever it has posted. The published figure is the median of those employer medians, and the range we show is the 25th to 75th percentile across them.
When Will We Publish a Figure and When Will We Not?
Some occupations do not produce enough evidence to support a number, and in those cases we would rather say nothing than publish something that looks more solid than it is.
Where we found 30 or more postings from 8 or more employers, we publish a posted pay range and describe it as a market figure.
Where we found 10 to 29 postings from 4 or more employers, we publish the same figures but label them explicitly as a small sample rather than a market median.
Below either of those thresholds, we publish no figure of our own, and the guide cites public data only.
Every guide states how many postings and how many employers its number rests on, in the same sentence as the number, so you can judge it the way we do.
How Do We Read Pay Out of a Posting?
It helps to walk through one. A hospital system posts an opening for a medical assistant. Near the bottom, in the compliance paragraph that state law increasingly requires, it reads: "Compensation Range: $21.72 - $32.58." Nothing else in the advert states a wage.
We take those two figures, confirm they are hourly from the surrounding words, convert each at 2,080 hours, and record the posting as a range from $45,177 to $67,766 with a midpoint of $56,472. We also store the sentence we read it from and the URL, so the number can be checked later.
Now a harder one. A different posting states "Pay Range: $21.94 - 26.82." The second figure has no dollar sign. A naive reading takes only the first number and records the job as paying a flat $45,635, which is both wrong and biased downward. We accept the second figure only when it matches the first in shape, when no unit noun follows it, and when the two are within a plausible ratio of each other. Here all three hold, so the range is read in full.
A third. An advert says "can expect to earn between $70,000 and $120,000." That reads like a salary band, and it is not one. The surrounding text describes an agency sales role paid on commission, and the figure is expected total earnings rather than base pay. It is excluded.
The general principle is that we read the words around a number, not just the number. A dollar figure in a job advert can be a wage, a bonus, a benefit, a draw, or a company statistic, and only one of those belongs in a salary guide.
Why Ninety Days?
A posting has to be dated within the last ninety days to count.
The window is a compromise between two failures. Too short and most occupations produce too few postings to say anything, because employers leave adverts up and refresh them irregularly. Too long and the number stops describing the current market, which is the entire reason for measuring advertisements rather than surveys.
Ninety days is also roughly how long a real opening stays open. Beyond that, an advert is often a pipeline listing collecting applications for a role that may not exist yet, and those distort a pay picture because they tend to quote wide, aspirational ranges.
The date has to come from the employer's own system. Many career sites display something like "Posted 30+ Days Ago," which is not a date and cannot be aged. Where the underlying record carries no real timestamp, we exclude the posting rather than estimate one, even though that costs us volume.
How Are the Median and the Range Calculated?
Every employer contributes one observation, its own median across all the postings it has for that role. Those employer figures are then sorted, and we report the middle one as the median.
For the range, we use the 25th and 75th percentile of the employer figures, chosen by nearest rank rather than by interpolating between two employers. That means every number we publish is an actual employer's figure rather than a computed point between two of them. It is slightly less smooth and considerably easier to defend, because each end of the range corresponds to a real company advertising a real job.
We report the count of postings and the count of employers alongside the figure because those two numbers are what let you judge it. Four hundred postings from six employers is a narrower fact than eighty postings from forty.
What Gets Thrown Out, and Why?
Job adverts mention money constantly, and most of it is not pay.
One posting offered a "monthly contribution up to $200 to help you pay off your student loans." Read carelessly as an hourly rate, that becomes an annual salary of over four hundred thousand dollars. Another mentioned a company holding "nearly $8 billion in policyholder equity," which is a balance sheet, not a wage. A third listed a $5,000 annual tuition benefit and no salary at all.
We guard against these two ways. Any figure whose implied wage falls outside a plausible band is excluded and recorded as excluded, with the reason. And because each employer holds a single vote, a bad figure that survives everything else moves the published median by a few dollars rather than distorting it.
Every excluded posting stays in the record with its reason attached. The exclusions are part of the evidence, not swept out of it.
Which Jobs Does This Method Not Suit?
Some occupations cannot be measured this way honestly, and we would rather say so than publish a number we do not believe.
Commission roles are the clearest case. When we measured loan officers, most postings quoted an hourly rate for a job that the government puts near seventy thousand dollars a year. Those hourly figures are minimum-wage draws against future commission, and one advert stated it outright as an "Hourly Non-Recoverable Draw." A posted base is simply not what those jobs pay, so we do not publish a posted band for them.
Roles paid on union scale have a better source in the published agreement itself. Public sector roles usually have a better source too, in the pay schedule that names each grade and step. Where a more precise public record exists, we would rather point you at it than approximate it.
Whose Postings Can We Not See?
Our reach is not the whole labour market, and the gaps are specific rather than random.
We read several of the major systems employers use to publish jobs, but not all of them. Some large firms publish through platforms we have not yet added, and until we do, their openings are invisible to this method even when they are the biggest employers in an occupation.
Public sector employers are the widest gap. Most counties, municipalities and public library systems hire through government platforms we do not currently read, which is why an occupation dominated by public employment may produce a number drawn almost entirely from private ones. Where that would mislead, we do not publish a figure.
We would rather state these limits plainly than let a number imply a completeness it does not have.
What Does This Number Not Tell You?
It is not what people in the job currently earn. It is what employers are advertising to pay someone starting now, which in a moving market is often a different number, and that difference is usually the interesting part.
It is a snapshot, not a series. Each figure is stamped with the month it was collected and is not updated automatically, so a guide showing a figure from one month is telling you about that month rather than about a trend.
It is also a national picture unless a guide says otherwise. Advertised pay varies sharply between metros, and a figure that looks strong nationally can be ordinary in a high-cost city.
What If You Think a Figure Is Wrong?
Tell us and we will check it against the postings behind it. We keep a record of every posting used for every number we publish, including the ones we excluded and why.
That record is the point. A salary figure that cannot be traced back to the evidence behind it is an assertion, and we would rather publish a number you can argue with than one you have to take on trust.
For job seekers
The work you want, without the hunt.
Metaintro reads every new posting each day and texts you the few that fit your skills, pay and commute.
- MatchCompare live roles against your current evidence.
- PositionTurn proof projects into role-specific applications.
- ImproveUse market feedback to keep the skill plan current.






