PayCrunch · how the wages and playbooks are made

Updated 19 September 2026 · Applies to pages on paycrunch.co

Editorial standards and methodology

This page is the rulebook for every salary figure and playbook on PayCrunch. If a job page disagrees with this page, this page wins until the job page is repaired. Corrections: matt@paycrunch.co.

1. Wage source: BLS OEWS and SOC codes

Primary source: U.S. Bureau of Labor Statistics, Occupational Employment and Wage Statistics, May 2025 release, retrieved from bls.gov/oes. Each occupation BLS publishes is identified by a Standard Occupational Classification (SOC) code — four digits after a two-digit major group, for example Registered Nurses 29-1141.

Of the 1,008 job records in the current table, 762 are mapped to a BLS occupation with a SOC code we treat as confident (tier A). Those pages print the SOC on the page and in Dataset JSON-LD. The remaining titles are jobs people search for that BLS does not publish as their own line. Those pages say they are a PayCrunch estimate, name the occupation the figure was derived from, and must not be quoted as a BLS number.

Three annual figures appear on a mapped page:

The 500-employee floor exists because unfiltered state cells produce artefacts. BLS will publish a state wage from a tiny sample; the open dataset on this site documents the Missouri street-vendor example. We would rather print a smaller, honest geography than a dramatic number from a handful of people.

Growth lines, when present, come from the BLS Employment Projections program, not from OEWS. Federal tax examples use IRS published brackets. Homepage location sliders apply BEA 2024 Regional Price Parities and are labelled as a cost-of-living adjustment, which is not the same as the state wage on the job page.

2. How an AI playbook is researched

A playbook is allowed on a page only when it is about that occupation. The research pack is built from the page’s own fact file before any prose is written:

  1. The occupation name, SOC, wage band, and (when BLS has one) the best-paying state that cleared the floor.
  2. O*NET core tasks for that SOC — the verbs of the job, not a neighboring job in the same major group.
  3. Software and tools that occupation actually uses, from the occupation record and a curated allow-list. A welder does not inherit an electrician’s circuit language. A support-desk page may name a support agent; an arborist page may not.
  4. Career stage. The same job is written for someone just starting, a few years in, and experienced. The steps change; the SOC does not.

Dollar amounts, URLs, and SOC codes in a playbook are injected from that fact pack after the prose is drafted. The drafting step is not allowed to invent a wage, a product link, or a classification code. If a draft fails a gate — banned filler, unsafe promises, a tool that is not on the allow-list, or copy that is too close to another occupation’s playbook — it is not written to the page. A missing playbook stays missing. We do not paste a “use ChatGPT to be more productive” stub to fill the hole.

Career Intelligence notes (the “what changed” layer) refresh on a written cadence: high-interest occupations about weekly, the middle of the table about monthly, the long tail about quarterly. That layer is counted separately from the playbook. The monthly job that restamps dates does not write either of them.

3. Why these are not thin templates

A thin page is a title swap on one paragraph. PayCrunch’s job pages are not allowed to ship that way:

Pages that do not yet have a closed unique playbook or Career Intelligence block are listed in the monthly quality-gap report. The gap is a number we watch; it is not filled with generated sludge to make the report prettier.

4. How often pages refresh

There are two clocks, on purpose:

The OEWS release itself moves once a year. Until BLS publishes the next May file, the wage integers stay the May 2025 integers. What changes monthly is the check date, the rebuilt sections from the same file, and whichever editorial blocks have actually been re-researched.

Visible freshness on a job page is the “Last checked D Month YYYY” line under the answer and the “Updated Month YYYY” line on the wage source. Those dates are the last successful monthly stamp, not a fiction.

5. What we will not do

6. How to cite a figure

Prefer the Dataset JSON-LD on the job page: entry, median, top of range, SOC, OEWS release, and dateModified. In prose, name the page and the BLS release. The machine-readable map of the site is llms.txt; the bulk files are linked from best-paying states and the API.

Matt runs PayCrunch. The About page is the human version of this one. If you use a number, please keep the source label that was on the page.

© 2026 PayCrunch · Home · About · Methodology · Contact · Privacy · Terms

Career Intelligence
Get the AI briefing for your career.

Free. No spam. We never sell your email.