top of page

What Should HVAC Service Cost? A Cited Market Brief with the Copilot Researcher Agent

7 hours ago
6 min read

Every contract renewal starts with the same question: is this price fair? The vendor sends a renewal with an increase "reflecting market conditions", and you have three weeks to decide. Most property teams answer with a gut feeling, or one call to a competitor who has every reason to quote high or low.

What you want is a short brief: what licensed technicians cost in your city this year, what other buildings pay for preventive maintenance, what's actually pushing prices up, and how your own contract compares. With a source for every number, so you can use it at the table.

In this guide we ask Researcher, the research agent in Microsoft 365 Copilot, to write that brief for HVAC service in the Greater Toronto Area, and to compare it with our own HVAC contract stored in SharePoint. Then we check its sources.

Here it is, sped up:

The Researcher agent in Microsoft 365 Copilot building a cited market brief on Toronto HVAC contractor pricing and comparing it with a service agreement

What you'll need

  • A Microsoft 365 Copilot licence. Researcher is in the Agents list in Copilot Chat.

  • Web search and your Microsoft 365 content both turned on under Sources in Researcher. Web gives it the market. Microsoft 365 gives it your contract.

  • The contract in SharePoint or OneDrive. Ours is the ClearAir Mechanical HVAC service agreement from our contract renewal radar: $6,450 a month for three buildings, expiring December 31.

Step 1: Ask the question properly

Researcher prompt asking for a 2026 GTA commercial HVAC pricing brief compared with our ClearAir agreement
Prepare a market brief on commercial HVAC contractor pricing in the Greater Toronto Area for 2026, for a property manager preparing a contract renewal. Cover: 1) typical hourly labour rates for licensed refrigeration and air conditioning mechanics, including overtime and emergency call-out rates; 2) typical preventive maintenance contract pricing for mid-size office and medical buildings; 3) what is pushing prices up or down (wage agreements, refrigerant rules, demand). Cite a source for every number and say how current it is. Then compare with our ClearAir Mechanical service agreement in the Vendor Contracts folder and tell me whether our price looks high, low or in line, and what to ask for at renewal.

Two phrases do most of the work: "cite a source for every number" and "say how current it is." Pricing that's three years old is worse than no pricing at all.

Step 2: Answer its questions

Researcher didn't start straight away. It asked three questions: which version of the agreement, how to define "mid-size", and whether we wanted price only or commercial terms too. It also admitted it couldn't find the ClearAir agreement in its first search. We gave it the exact file name and folder, chose a short report and said to include commercial terms. It then wrote a seven-step research plan and got to work:

Researcher's seven-step research plan, from retrieving the agreement to the renewal asks

About five minutes later we had a four-section brief.

Step 3: Read the verdict

The headline was more careful than we expected: "high-leaning, but not conclusively overpriced." Our $77,400 a year works out to about $25,800 per building. A GTA contractor's 2026 guide puts mid-size buildings with 4 to 10 rooftop units at $6,000 to $18,000 a year, and large buildings with building automation at $18,000 to $60,000 and up. So we're in the large-building range. That's fair for an office tower with a chiller, but expensive if it's mostly rooftop units.

Then it found the real problem. The agreement refers to "Schedule A" for the equipment list and the tasks, and Schedule A isn't in the file. Without it, nobody can say what the $6,450 a month actually buys. That's the first thing to fix at renewal, whatever the price.

Step 4: The market numbers

Market pricing table with RTU maintenance, whole-building preventive maintenance and large public portfolio benchmarks, each with a source

The brief separates two things that are easy to mix up:

  • What a technician earns: the City of Toronto's fair wage schedule lists refrigeration and HVAC mechanics at $64.08 an hour from May 2026, up from $61.48, plus 10% vacation pay and $11.80 an hour in benefits. The UA Local 787 rate is in the same range.

  • What a contractor charges: published GTA prices of $185 to $245 for a diagnostic call including travel and the first hour, and $485 to $785 per rooftop unit per year for two maintenance visits. A broader North American guide puts regular commercial labour at $110 to $175 an hour.

It also covered the price drivers: wages up about 4.2% this year, a tight but competitive trades market, and the federal HFC refrigerant phase-down. On refrigerants it made a useful point. Existing equipment isn't suddenly illegal, so a vague "refrigerant surcharge" shouldn't be accepted without a per-pound rate.

Step 5: Our contract, clause by clause

Comparison of the ClearAir agreement with market benchmarks: base fee, labour rates, overtime, scope, response commitment

This is where having the contract in SharePoint pays off. Researcher read the agreement and rated each term: the base fee "high unless scope proves complexity", labour and overtime rates "not assessable" because the contract doesn't state them, the four-hour emergency response "in line to strong", and the fixed price for three years "favourable". It also noticed that ClearAir only has to provide renewal pricing 30 days before expiry, which is too late to run a competitive quote.

Then the renewal asks:

Prioritized renewal asks: a priced asset schedule, per-RTU pricing, a conditional portfolio cap and a locked rate card

No increase until there's a priced equipment list by property. Price rooftop units per unit. Lock a rate card for labour, after-hours and holidays. Cap future increases at the lower of CPI or 3%. Put the refrigerant price per pound in writing.

Checking the sources

The Sources pane lists every citation, from our own agreement to the City of Toronto. We checked five of the numbers ourselves:

Researcher's list of cited sources, including our agreement, the City of Toronto fair wage schedule, UA Local 787 rates and contractor price guides
  • The City of Toronto fair wage schedule: $61.48 in 2025 and $64.08 in 2026 for refrigeration and HVAC mechanics, with 10% vacation pay and $11.80 in benefits. Correct, from the City's own PDF.

  • Overtime at 1.5 times after the weekly limit: correct, same document.

  • $6,000 to $18,000 a year for mid-size buildings, $18,000 to $60,000 and up for large ones: correct, from a GTA contractor's 2026 maintenance contract guide.

  • $485 to $785 per rooftop unit per year for two visits: correct, from another GTA contractor's 2026 price list.

  • The 43% figure: $77,400 against a $54,000 ceiling for three mid-size buildings. The arithmetic is right.

Where it slipped

Three things to know.

First, it couldn't find our contract on its own, even though the request named the vendor and the folder. Give it the exact file name and you avoid the extra round.

Second, the best price benchmarks it could find are contractors' own published price lists. Researcher said so itself ("vendor-generated, so they should guide negotiation rather than replace competitive quotations"), but it's worth repeating: a market brief tells you where to start the conversation, not what to sign.

Third, it can only compare what's in the file. Our agreement doesn't include the equipment list, so it couldn't say whether $77,400 is fair. It said exactly that rather than guessing, which is the right answer and the least satisfying one.

A quick game: wage or price?

Three numbers from the brief. Which ones are what a technician earns, and which are what you pay?

  • $64.08 an hour

  • $175 an hour

  • $485 per rooftop unit per year

Ours: the first is a wage, the other two are prices. The gap between $64 and $175 is the contractor's truck, insurance, training, overhead and margin. If your renewal letter quotes the union wage increase as a percentage, apply it to the wage share of the bill, not the whole bill.

Lessons from the build

  • Ask for sources and dates. It's the difference between a brief and a blog post.

  • Point it at your contract. The market numbers are useful. The clause-by-clause comparison is what you take into the meeting.

  • Answer its questions. Thirty seconds of clarification gave us a better report than a longer prompt would have.

  • Check a few numbers yourself. Ours held up. Checking took ten minutes, and now we can quote them with confidence.

Ideas to take it further

  • Add the vendor scorecard: ClearAir scored 33 out of 100 in our vendor scorecard. Ask Researcher to put performance and price in the same brief.

  • Run it for every renewal on the radar: security, elevators, landscaping and janitorial each get a market brief before the notice deadline.

  • Draft the negotiation email: Researcher offered to, and the asks are already written.

  • Re-run it next year: same prompt, new year, and you'll see whether the market moved or your vendor did.

Why this matters

The market price lives on contractor websites and in City wage schedules. Your price lives in a contract in SharePoint. Your vendor's performance lives in AP and the work order system. Bring your data from different systems into one place and put AI in front of it, and the renewal conversation starts with evidence instead of a feeling.

Need help?

Smart Solutions builds Microsoft 365 Copilot, SharePoint and procurement workflows for Canadian property and facilities teams. If you'd rather have contracts, purchase orders and vendor performance in one product, take a look at ProcuraCloud, our procurement platform for small and mid-sized businesses. Contact us to talk about your next contract renewal.


Comments


bottom of page