Enterprise DNA

Omni by Enterprise DNA

Enterprise DNA Resources

Thought leadership & research. Practical AI operating-system thinking for owners, operators, and teams doing real work.

220k+

Data professionals

Omni

AI agents and apps

Audit

Map the manual work

Key Findings

See how AI seasonal campaigns help plumbing, HVAC, electrical, and roofing firms fill schedules, recover calls, and convert stale estimates.

AI Seasonal Campaigns for Trades Businesses
Insight ai

AI Seasonal Campaigns for Trades Businesses

Sam McKay

Seasonal demand should not depend on memory

Most trades businesses don’t have a lead problem all year round. They have a timing problem.

The phones run hot when the first cold snap hits, when a heatwave arrives, or when heavy rain exposes every roof issue in the area. Then there are quieter periods when the diary has gaps, technicians have capacity, and the business has thousands of past customers who could use a service, tune-up, inspection, or repair.

The opportunity is obvious. The work to capture it is not.

An HVAC business should be contacting customers before the cooling season, not after their system fails in the middle of January. A plumbing business should be reactivating customers before winter pipe issues become urgent. An electrical contractor can use seasonal reminders around smoke alarm checks, switchboard inspections, and air conditioning demand. A roofing firm can reach past customers before storm season, when inspections are easier to schedule and less expensive than emergency repairs.

Yet this work often sits in somebody’s head.

The owner says, “We should send something out next month.” The office manager exports a list from the field service system. Someone drafts a generic email. A few people respond. The team gets busy again. No one follows up with the people who opened the message but didn’t book. No one calls the customers who are due for service. The campaign produces a handful of jobs, then disappears.

For a trades business doing $1 million to $25 million in annual revenue, that gap can be expensive. We usually see annual leakage in the range of $50,000 to $200,000 from missed calls, unworked estimates, dormant customer lists, and underused capacity. It rarely appears as one dramatic mistake. It shows up as dozens of jobs that never made it into the diary.

AI seasonal campaigns are designed to close that gap. They don’t replace good technicians or a capable office team. They take repeatable communication work off people who are already stretched.

The manual work behind a simple seasonal campaign

A seasonal campaign sounds simple from the outside. Send a reminder. Book work. Fill the schedule.

In practice, it asks your team to make a series of decisions, many of them repeatedly.

First, someone has to identify the right list. That might mean customers with air conditioning units installed three years ago, homeowners who approved an electrical safety inspection last year, or property managers whose gutter and roof maintenance is due before storm season.

Then somebody has to clean the data. Are the mobile numbers current? Did the job happen? Was the customer unhappy? Are they already booked? Is this a landlord, homeowner, builder, or facilities manager? Can the business service their postcode this month?

Next comes the message. An annual boiler service needs a different approach from a pre-summer HVAC tune-up. A roofing inspection is not sold the same way as a drain clearing service. The message needs to explain what is due, why the timing matters, and what the customer should do next.

Once replies arrive, the hard part begins. Someone must answer questions, check capacity, qualify urgency, find the right technician, and book a workable slot. If the customer doesn’t respond, somebody needs to follow up. If they call after hours, the campaign is only useful if their call is answered.

This is why many seasonal campaigns become one-off blasts. The office can send the first message. It struggles to manage the 200 small actions that follow.

The same issue appears with estimates. A customer receives a quote for a heat pump, roof repair, switchboard upgrade, or bathroom plumbing job. They mean to decide later. The office intends to follow up. Two weeks pass. Then two months.

Follow-up alone commonly converts 15% to 25% of stale estimates when the work is timely and the customer had genuine interest. That doesn’t mean every old quote is recoverable. It does mean leaving all of them untouched is an avoidable decision.

What an AI seasonal campaign does end to end

A useful AI campaign is not a chatbot that sends broad marketing messages. It is an operating process connected to your customer records, job history, estimate data, and dispatch rules.

The first step is defining a campaign trigger.

For an HVAC firm, that could be customers whose systems have not had a maintenance visit in the last 10 to 14 months. For a plumbing business, it could be homes with older hot water systems before peak failure periods. For roofers, it could be past inspection customers ahead of the wet season, grouped by suburb and roof type where the data is available.

The system then applies rules before anyone is contacted. It excludes customers already booked, contacts that opted out, unresolved complaints, and jobs outside your current service radius. It can separate high-value commercial customers from residential customers so the message and follow-up path fit the relationship.

From there, the campaign begins with a direct message. Usually that means SMS first, with email where it makes sense. The message isn’t written as a vague promotion. It references the customer’s prior service, the reason for the timing, and a simple booking action.

A typical message might say that their annual cooling-system check is coming due, that early booking gives them better access to preferred times, and that they can reply with a suitable day. The AI can answer routine questions about the service, likely duration, service area, and available time windows. It can also identify when the customer needs a person.

That handoff matters. If a customer says their unit is blowing warm air, this is no longer a maintenance booking. It may be an urgent call. If a commercial property manager asks for a site-specific quote, the AI should collect the details and route the opportunity to the right person, not pretend it can price a job without enough information.

The process needs clear rules, not clever improvisation.

Our Omni Ops capability is built around this kind of repeatable operational workflow. It tracks the campaign stage for every customer, records the outcome, triggers the next action, and gives the office a clear exception queue instead of a pile of inbox messages.

The agents that keep bookings from falling away

For trades businesses, a seasonal campaign has to work across more than one channel. A customer may get an SMS at 10am, call at 7pm, and want a booking confirmation by text. If those steps don’t connect, the business loses momentum.

24/7 Dispatch Voice Agent

The 24/7 Dispatch Voice Agent answers inbound calls when the office is closed or tied up. It qualifies the job as an emergency or scheduled service request, captures the required job details, books an appropriate slot directly in the dispatch tool, and sends the customer a confirmation text.

This is important when a campaign prompts people to act outside office hours. A homeowner receives an HVAC maintenance reminder after dinner and remembers their system has been noisy. They call. If the call goes to voicemail, many won’t leave a message. They will try the next business in a search result.

A missed job can easily represent $500 to $3,000 in lost revenue, depending on the trade and scope. Some are much larger. The point is not that every call is valuable. The point is that your business should know which calls it missed and why.

The voice agent follows the dispatch rules you set. It does not book an emergency electrical fault into a routine next-week slot. It does not promise a technician in an area you don’t cover. It asks the right questions, follows your escalation thresholds, and makes the next step clear to the customer.

You can see how these call workflows fit into Omni Voice, including the controls needed for customer-facing conversations.

Estimate Follow-Up Agent

The Estimate Follow-Up Agent tracks every estimate that goes out and follows up on day 2, day 5, and day 14. The messages are tuned to the trade, the job size, and the reason the customer requested the estimate.

For a smaller plumbing repair, the agent may use a short reminder and offer to answer a question or confirm a booking. For a major roofing job, it may focus on the inspection findings, timing, finance options if offered, and the next decision needed. For commercial electrical work, it may ask for the approval process or offer a site conversation with the estimator.

The agent also stops when it should. If a customer says they chose another provider, the result is recorded. If they ask to delay work until next season, the system schedules a future follow-up. If they book, they leave the sequence. This is basic discipline, but it is difficult to maintain manually across hundreds of estimates.

Seasonal campaigns work better when estimate follow-up is part of the same operating system. The campaign creates demand. The follow-up agent makes sure interested customers do not drift away.

Review and Reactivation Agent

The Review and Reactivation Agent contacts happy customers the day after a completed job to request a review. Later, it reactivates them at the correct service interval.

Reviews matter because seasonal customers often make a fast choice. They search for “emergency plumber near me” or “air conditioning service” and compare the businesses that appear credible. A steady flow of legitimate reviews from recent customers improves that credibility.

The reactivation side is where the longer-term value sits. A customer who had a ducted system serviced last year should not need to remember the next service date. A roofing customer who received minor repairs may be due for another inspection before bad weather. The agent can create a practical contact rhythm from completed job data rather than relying on a spreadsheet someone updates when they have time.

Start with the capacity you can actually serve

A common mistake is running a campaign before deciding what the business can fulfil.

If you have two weeks of open capacity across four technicians, your campaign should target the geographic areas, job types, and customer segments that fit those openings. If your best technician is booked on complex installs, don’t flood them with inspection work they can’t take. If you only have limited after-hours emergency coverage, make that clear in the routing rules.

AI helps because it can work against live schedule conditions. It can offer available windows, hold a provisional time, notify the customer, and alert the office when a request falls outside the rules. It can also slow or pause a campaign if capacity fills.

That changes seasonal marketing from a demand-generation exercise into a controlled flow of work.

A plumbing owner in our network described the old process as “marketing into a black hole.” The team would send offers, then spend days trying to catch up with calls and messages. A better process uses the calendar as the control point. If there are 35 suitable slots, the campaign works to fill 35 suitable slots. Once they are filled, the business can redirect the next group to later dates or pause the outreach.

This is also where an Omni app can give your team a simpler view of campaign responses, booking status, exceptions, and revenue recovered. Your office should not have to jump between an inbox, a spreadsheet, a dispatch system, and personal mobile phones to understand what happened.

Measure the right commercial outcomes

Open rates and click rates can be useful signals, but they don’t tell you whether the campaign made money.

For a seasonal service campaign, track these numbers:

  • Customers eligible for the campaign
  • Customers contacted successfully
  • Replies and inbound calls generated
  • Bookings created
  • Booking show rate
  • Average job value
  • Estimates issued from campaign jobs
  • Estimate acceptance rate
  • Revenue booked and revenue completed
  • Calls answered after hours
  • Reviews requested and reviews received

You don’t need a complex dashboard to start. You do need a baseline.

If 1,000 past customers are eligible for a pre-season service campaign, the first question is not how many opened the text. It is how many booked, what those jobs were worth, and how much technician capacity was filled that would otherwise have been idle.

Then look at the leakage points. Did customers reply but fail to book? Did calls go unanswered? Did estimates from campaign work get no follow-up? Did the team lack capacity in certain postcodes? Those answers tell you what to fix next.

For broader practical ideas on building these systems, our AI resources and guides cover the operational side, not just the software layer.

A practical worksheet for after-hours gaps

Seasonal outreach often exposes a weak point that was already there. Your campaign gives customers a reason to call, but the office cannot answer every call while staff are driving, quoting, dispatching, or off duty.

The After-Hours Call Recovery Plan for Trades is a practical worksheet to map what happens when a customer calls outside normal hours. It helps you document your call types, emergency rules, booking boundaries, escalation contacts, and follow-up process. You can access the direct version here: download the call recovery plan.

Use it to expose the handoffs that cost you jobs. Then decide which ones should be handled by process, which need an AI agent, and which need a person immediately.

Find the leakage before buying more tools

You don’t need another generic campaign platform if the real issue is unanswered calls, disconnected data, or quotes that sit untouched.

The better question is where revenue leaks between the first customer signal and a completed job. For some firms, it is after-hours call handling. For others, it is a dispatcher spending 20 or more hours each week routing crews and returning messages. For others, it is a healthy database of past customers that has never been segmented and reactivated.

An Omni Audit gives you a structured way to find the highest-value opportunities. It takes 60 minutes and produces three things: a map of the manual workflows consuming time, a prioritised view of revenue leakage, and a practical agent plan for what to automate first. There is no deck designed to impress you. You leave with decisions you can use.

If you want to see the wider approach first, see Omni for trades businesses. If you already know your seasonal campaigns and call handling need work, Book a 60-min Omni Audit.

Make seasonal work predictable

The aim is not to send more messages. The aim is to convert existing customer relationships and incoming demand into booked work without creating more pressure on your office.

A well-run AI seasonal campaign identifies the right customers, contacts them at the right time, answers routine questions, books suitable jobs, catches after-hours calls, follows up estimates, requests reviews, and brings customers back when their next service interval approaches.

That is how a trades business builds a steadier calendar. It is also how you reduce the $50,000 to $200,000 of annual leakage that often hides in missed calls and uncompleted follow-up.

For a closer look at the workflow and where AI fits your operation, visit the AI audit for trades businesses. When you’re ready to map the specific opportunities in your business, Book my Omni Audit.