How these rate estimates are built.
Every figure on a /rates page is in one of two states, Estimated or Measured, never a mix. This page explains both, plus the factors that move a rate regardless of which state it's in.
Estimated rates: wage data x a documented multiplier
An Estimated rate is not a measured billed rate. It's a city's own hourly employee wage for a trade, sourced from regional government wage data, multiplied by a documented service multiplier that converts an employee wage into a billed commercial rate.
The 2.5-3x band covers what an hourly wage doesn't: labour burden (payroll tax, workers' comp, benefits, PTO), overhead (vehicle, dispatch, insurance, licensing), utilisation (not every paid hour is billable), and margin. We show the arithmetic on every Estimated page rather than just the result, so it can be checked, not just trusted.
US figures come from O*NET OnLine (onetonline.org), a U.S. Department of Labor/ETA-sponsored project that republishes Bureau of Labor Statistics OEWS metro-area wage percentiles. Canadian figures come from Job Bank Canada (ESDC), reference period 2023-2024.
Measured rates: real job data, k-anonymity gated
A Measured rate comes from real job records logged directly in Evalystar by facility teams rating actual vendor work, the hourly rate paid, not a rate card or a quote. A city/trade cell only publishes once it clears a privacy threshold: at least 5 companies, 3 vendors, and 10 jobs, so no single company's pricing is ever identifiable. Measured rates show a p25-p75 range plus a sample size and company count; Estimated rates never do; a page is never a mix of both.
A Measured cell always takes priority over an Estimated one the moment it exists, upgrading the page in place at the same URL. Most cities on this site are Estimated-only today.
What affects the rate, regardless of state
- Emergency vs scheduled: same-day or after-hours emergency calls run well above scheduled maintenance visits.
- After-hours and weekend work: typically carries a premium over standard business-hours rates.
- Contract vs ad-hoc: vendors on a standing contract usually price lower per hour than one-off, ad-hoc jobs.
- Code and certification requirements: trades with stricter local licensing (electrical, HVAC/gas) typically carry a premium tied to certification cost.
Why a range instead of a single number
A single average hides the real spread, in the underlying wage data for Estimated rates, and between emergency/scheduled and contract/ad-hoc work for Measured ones. Showing low, median, and high reflects that spread honestly rather than implying more precision than the figure can support.