All guides

Guide

The Morning Exception Report: an HVAC daily report template with the rules to flag

McGuire Flanigan · Updated October 22, 2026 · 6 min read

This HVAC daily report template puts only the exceptions at the top: the finished job nobody invoiced, the missed call nobody returned, the quote that's due for follow-up. It reads your field software, your books and your phone log, compares yesterday with a normal day, and leaves every decision to your office.

A daily report that lists everything gets read for a week and then ignored. The Morning Exception Report flips it: the few lines that need a decision come first, and everything that looks like a normal day collapses into one line at the bottom. It fits on one phone screen, so the owner can read it before the trucks roll.

The report, in order

  1. Read three systems. Your field software, your books and your phone log, every morning.
  2. Compare yesterday with a normal day. Not with a target, with what a typical day looks like for your company.
  3. Put only the exceptions on top. The lines that need someone to act, each with a suggested next step, and "everything else: normal" underneath.

The office decides what happens to each line. Whoever builds the report, a person or an agent, only reads and drafts.

Who this is for and what you need first

This is for an HVAC owner or ops manager who already gets reports and doesn't read them. You need:

  • Read access to your field software. ServiceTitan lets admins and office staff schedule a report to email on an interval as a PDF or a spreadsheet. That's a fine start, and it's free.
  • Your books. QuickBooks or whatever holds invoices and payments.
  • Your phone log. Your phone system's call history, with missed calls marked.
  • A normal day. Pick four recent weeks that felt ordinary. Note, for each weekday, roughly how many jobs closed, calls came in and invoices went out.

The gap is that most scheduled reports cover one system. Combining all three with your own rules is the part you have to set up.

Step one: read three systems

Every morning at 5:30, pull yesterday's data from each:

System What to pull
Field software Jobs completed, jobs scheduled today, open estimates with their sent date, callbacks
Books Invoices created yesterday, payments received, invoices past due
Phone log Inbound calls, missed calls, whether each missed call got a callback

Only read. Nothing in this step changes a record.

Step two: compare yesterday with a normal day

For each count, compare yesterday with the normal day for that weekday. You're looking for two kinds of gap:

  • Things that should match and don't. Jobs completed yesterday versus invoices created yesterday. Missed calls versus callbacks.
  • Things that are well off normal. Half the usual calls on a hot Monday usually means a phone problem, not a slow day.

A plain rule of thumb: if a count is more than a third away from normal, it's worth a line.

Step three: the rules to flag

These are the exception rules we'd start with. Each one becomes a line at the top of the report, oldest first.

  1. Finished, not invoiced. A job marked complete yesterday with no invoice in the books.
  2. Missed call, not returned. A missed call from yesterday with no outbound call or text to that number afterward.
  3. Quote due for follow-up. An estimate sent three or more days ago with no reply and no follow-up logged.
  4. Callback scheduled. Any job booked today at an address you visited in the last 30 days.
  5. Invoice newly past due. An invoice that crossed its due date yesterday.
  6. Volume off normal. Calls, jobs or payments more than a third away from a normal day for that weekday.

Everything else is one line: "Everything else: normal."

Keep the list short. If a rule flags something every single day and nobody acts on it, delete the rule.

The sample morning email

Subject: Tue Oct 21 · 2 things need you · everything else normal

Needs a decision 1. Job #6131, Lopez residence, AC tune-up, finished Mon 3:40 PM. No invoice in QuickBooks. Draft invoice ready for review. 2. Missed call Mon 4:52 PM from (555) 0142. No callback logged. Suggested text ready for review.

Today Jobs on the board match a normal Tuesday. One callback at a recent address (Job #6119).

Everything else: normal.

That's it. Two lines that need someone, one line of context, one line saying the rest is fine. The example numbers above are demo data.

Who decides each line

The report suggests. Your office decides. For each exception:

  • The draft invoice goes to whoever bills, who checks the work order and sends it or fixes it.
  • The missed-call text goes to the dispatcher, who sends it, calls instead, or marks it handled.
  • The quote follow-up goes to the salesperson who wrote the estimate.

This is the same rule we use for every agent: it can read and draft, and anything a customer receives waits for a person. Our trust page describes those defaults.

Where the software already helps

Before you build anything, check what you own. Housecall Pro says its Analyst AI answers questions about revenue, job trends and team performance, and ServiceTitan describes Atlas as able to help with reporting and flag invoice anomalies. If one of those already gives you a useful morning view, start there.

Most shops are still early. In ServiceTitan's 2026 survey of 1,032 contractors, 12% had embedded AI in their operations and 44% named integration complexity as their top barrier. That barrier is exactly the three-system part of this report.

For the bigger picture, read our guide to AI for daily reporting in HVAC companies, and the daily briefing page shows what the owner sees.

What to watch out for

  • Timing. Run it after your books sync. A report built at 5:30 from a sync that runs at 6:00 flags every invoice as missing.
  • Duplicates. A missed call that was returned from a cell phone won't show in the phone log. Let the dispatcher mark those handled so they don't come back tomorrow.
  • Too many rules. Six is plenty. More rules make the report long again, which is where you started.

How to tell it worked

For two weeks before you switch it on, count how many finished jobs went more than a day without an invoice and how many missed calls never got a callback. Run the Morning Exception Report for a month and count again. Also ask yourself one plain question each Friday: did I read it every morning?

Questions operators ask

What should be in an HVAC owner's daily report?

Only what needs a decision: finished jobs with no invoice, missed calls with no callback, quotes due for follow-up, callbacks on today's board and invoices that just went past due. Everything that looks like a normal day can collapse into one line.

Can ServiceTitan email a daily report?

Yes. Admins and office staff can schedule reports to email on an interval as a PDF or a spreadsheet. It covers ServiceTitan's own data; combining it with your books and phone log takes extra setup.

Should an AI agent fix the exceptions it finds?

No. It can draft the invoice or the callback text, but a person in your office reviews and sends each one. The report is there to point, not to act.

How long should a daily report be?

Short enough to read on one phone screen. If it takes scrolling, cut rules until it doesn't.

See where AI fits in your operation

Thirty minutes on how the work actually moves. No pack of agents. No obligation to build. If we can help, we will show you the first paths. If we cannot, we will say so.

Sources

  1. Schedule reports, ServiceTitan Help
  2. 2026 State of AI in the Trades, ServiceTitan
  3. Understanding the HVAC AI Landscape in 2026, ServiceTitan
  4. AI Team, Housecall Pro
  5. Trust and Security, Cortex

Keep reading