Methodology
What counts as a source
Union base rates come from a government prevailing-wage record first (a state labor department or city comptroller schedule) and are cross-checked to the penny against the local's own wage sheet. Where the two disagree the record is not published until they reconcile.
Apprentice ladders come from the negotiated wage sheet or the state apprenticeship determination, expressed as a percent of journeyman base with period lengths in months at 2,000 hours a year.
Fringe is the employer-paid package on the same record: health and welfare, pension, annuity, training. Base and fringe are stored separately and never added into the hourly wage.
Non-union figures are Bureau of Labor Statistics OEWS percentiles for the metro area and occupation code, with the survey year shown.
Licensing hours and fees come from the state licensing board's published rule or fee schedule.
What "verified" means
Every numeric value has an audit entry recording its source, the date it was last checked, and whether a person checked it against the primary document. A value is only marked verified after that human check. Values that are modeling assumptions, such as 2,000 paid hours a year and the business-ownership range, are marked unverified on purpose and say so wherever they appear.
The honest-math rules
Break-even and the cash hole ride wages plus one-time licensing fees only.
Benefits are shown as a separate line and never enter break-even. Counting a full union package in year one makes a first-year apprentice look like they out-earn a six-figure salary, which is false.
Business ownership and self-employment income is a labeled scenario range, never a forecast.
A null break-even inside the horizon is a valid result and is displayed as one.
Where a metro has two credible union anchors, the point math uses the lower one and the higher is shown as a range.
Refresh cadence
Prevailing-wage records and union wage sheets change on the agreement's effective dates, usually once or twice a year. BLS OEWS publishes each spring. Licensing fees change rarely. Each page prints the effective window of the agreement it rests on, and the footer shows the date the dataset was last refreshed.
Source registry
| Source | Covers | Type | Cadence |
|---|---|---|---|
| bls-oews-msa S3 | nonunion bands, all metros | api | annual-spring |
| wa-lni-prevailing-wage S1 | electrician-seattle union.journeyman_hourly + fringe | portal | biannual (spring/fall) |
| wa-lni-arts S2 | electrician-seattle union.steps | portal | annual (june) |
| ca-dir-pwd S1 | electrician-bay-area union.journeyman_hourly + fringe | html | biannual (feb/aug) |
| ca-das-standards S2 | electrician-bay-area union.steps | html | annual (june) |
| nyc-comptroller-220 S1 | electrician-nyc union.journeyman_hourly + fringe | annual (july 1) | |
| sam-gov-davis-bacon S1 | any-metro union anchors beyond the v0 three | api | on-scale-out |
| college-scorecard-api S5 | program costs, programs-near-you | api | annual |
| anthropic-economic-index S6 | current-occupation AI-exposure scores | csv | on-release |
| onet-database S6 | physical-demand descriptors | csv | annual |