Methodology
Every number on TradeSalary comes from a public government dataset, and every page says which one and for what date. We don't estimate, survey, or adjust figures ourselves, except where a page says so and shows how.
Pay: BLS Occupational Employment and Wage Statistics
Pay figures come from the U.S. Bureau of Labor Statistics (BLS) Occupational Employment and Wage Statistics (OEWS) program. OEWS surveys about 1.1 million employers over three years and publishes employment and wages for about 830 occupations nationally, for every state, and for metropolitan and nonmetropolitan areas. The current figures are for May 2025, loaded on September 26, 2026.
For each trade and place we show what BLS publishes:
- the median (half earn more, half less) and the mean, hourly and yearly;
- the 10th, 25th, 75th and 90th percentiles, which we draw as the tape-measure range from the 10th to the 90th;
- employment, rounded by BLS to the nearest 10.
What it excludes. OEWS counts wage and salary workers. Self-employed tradespeople, owners of their own shops, and independent contractors are not included. BLS wages include base pay, incentive pay, commissions, and tips, but not overtime pay, shift differentials, nonproduction bonuses, or employer-paid benefits. Yearly figures are the hourly wage times 2,080 hours.
Occupations. Each trade is one BLS occupation code: electricians 47-2111; HVAC technicians 49-9021 (heating, air conditioning, and refrigeration mechanics and installers); plumbers 47-2152 (plumbers, pipefitters, and steamfitters); welders 51-4121 (welders, cutters, solderers, and brazers); and linemen 49-9051 (electrical power-line installers and repairers).
Missing values. When BLS doesn't publish a figure, usually because too few employers reported it to be reliable, we show “not published”, never a zero or a guess. When a wage is at or above the BLS reporting cap ($239,200 a year or $115.00 an hour for May 2025), BLS publishes only that it's above the cap, and so do we.
Starting pay and pay by career stage
BLS doesn't report pay by license level. We label the 10th-percentile wage as an estimate of apprentice or entry-level pay, the median as typical journeyman pay, and the 75th to 90th percentiles as what master-level and top earners make. These are approximations: pay at any level varies with union status, employer, specialty, and local demand.
Cost of living
The “after cost of living” figure divides the median by the Bureau of Economic Analysis (BEA) Regional Price Parity for the state or metro, where the U.S. average is 100. We use BEA's 2024 figures for all items. A $70,000 median where prices are 10% above average (a parity of 110) buys about what $63,640 buys nationally. BEA publishes one parity for the rural part of each state rather than for BLS's nonmetropolitan areas, so rural rows don't get an adjusted figure.
Which pages exist
We build a salary page for a trade and place only when BLS publishes a median for it. Today that is 5 national pages, 255 state pages, and 1,790 metro pages. A metro area that crosses state lines has one page, under the state BLS names as its primary state, and appears in the tables of the other states it reaches. Rural (nonmetropolitan) areas appear as rows on their state's page.
Updates and corrections
BLS releases new OEWS figures each spring, and BEA updates price parities each year. We load each release through automated checks (percentiles in order, no zero or negative wages, hourly and yearly figures consistent) before it goes live, and every page shows the date it was updated. If you spot an error, email support@tradesalary.com.