How we calculate
Where the numbers come from, what each figure means, and what we leave out.
Where the data comes from
Every figure on PublicPayData comes from a government’s own published payroll data: a state or city open-data portal, or an official payroll file. We never use other salary websites, surveys or estimates. Each page names the agency that published the data, links to that agency’s official website, and matches the agency’s latest release. The full list is on Sources.
What each figure means
- Pay is total gross pay for the calendar year, as published: regular salary or wages, plus overtime and any extra pay (allowances, longevity, supplemental pay, severance). It does not include benefits such as health insurance or pension contributions.
- Typical pay is the median: half of the people earned more, half earned less. We use it instead of the average because a few very high earners would pull an average up.
- Most earned between is the middle half of people: a quarter earned less than the lower number and a quarter earned more than the higher number.
- Extra pay is total pay minus regular pay and overtime. Some sources include pay types they don’t list separately, so we work it out from the published totals rather than adding up the listed columns.
Current pay rates
Some governments publish their current employee list with each person’s pay rate instead of what they were paid over a year (for example the City of Chicago, the Chicago Transit Authority and Pennsylvania state agencies). Those pages say current pay rates and show two figures side by side: the typical salary for people paid by the year and the typical hourly wage for people paid by the hour. A pay rate is what the job pays today; it does not include overtime or extra pay, and it is not what anyone took home over a year, so we never compare or rank these figures against yearly pay. We turn an hourly wage into a yearly figure only where the source publishes each person’s weekly hours, and we say so next to it. A rate published as $0 is treated as not published.
Full-year employees
Payroll lists include everyone who received a paycheck during the year, including seasonal, part-time and short-term workers, and people who joined or left partway through. That pulls typical pay down. Where a source lets us tell who worked the whole year, we headline typical pay for full-year employees and show the figure for everyone alongside it.
- Baton Rouge City-Parish: the person was hired before January 1 (or, for years where the city doesn’t publish hire dates, was on the previous year’s payroll) and has no end date during the year.
- New Jersey state payroll: the person was on the previous year’s payroll, is paid an annual salary, and received at least 90% of their published annual salary as regular pay.
- Missouri state payroll: the source doesn’t let us tell, so Missouri pages show figures for everyone paid and say so.
We use hire and end dates only to work this out. We don’t store or publish them.
People with more than one job
Some sources list a person once for each position they held during the year. We add those rows up so each person counts once per employer per year, under the job where they were paid the most. Where a source publishes its own employee ID, we use it to follow people from year to year; where it doesn’t (Missouri), we match on name within the same agency, and we don’t show year-to-year figures that depend on matching people.
What we leave out
- Records with $0 or negative pay for the year (usually payroll corrections). Negative amounts on a single row are kept when they net out against the same person’s other rows.
- Names that the source itself withholds (for example some public-safety staff). Those people still count in totals and typical pay, but are never named.
- Anything the source doesn’t publish. If a figure isn’t published, we say “not published”. We never estimate it.
- Personal details beyond name, job title, employer, department and pay.
Checks before we publish
Every refresh is checked automatically: required fields present, pay values valid, row counts and typical pay compared with the previous year. If a check fails, that source isn’t updated until we’ve looked into it. We’d rather show last year’s figures than wrong ones.
Corrections
If you spot an error, or need your name removed for safety reasons, see Corrections & removals.