Every combined shop has a list of people who already trust it with one trade and have never been asked about the other. Before you spend more on ads, work out what that list is worth. The steps below take an afternoon with your field-service software or invoicing system and a calculator. The example numbers are invented for illustration; replace them with yours.
Step 1: count your households by trade
Export every customer with at least one paid job in the last three years, with the date of their last job, the trade or job type, and any equipment notes. Then sort them into three groups:
| Group | Example count |
|---|---|
| Plumbing only | 3,200 |
| HVAC only | 1,100 |
| Both trades | 450 |
| Total households | 4,750 |
The key ratio is the share who have bought from both: here 450 ÷ 4,750, or about 9.5%. In many combined shops it's under 15%, which means more than eight in ten customers are a cross-sell opportunity.
Step 2: separate who you can contact, and how
Not every customer can be messaged the same way. Canada's anti-spam law applies to commercial emails and texts. ISED's CASL guidance explains that you need consent, that express consent lasts until withdrawn, and that implied consent from a purchase may last up to two years (only six months after an inquiry). Messages also need your identification and a working unsubscribe. This is a summary, not legal advice; your lawyer can tell you how it applies to your list.
So split each group:
- Express consent on file: can receive email and text offers.
- Purchase in the last two years, no express consent: likely implied consent; check with your adviser.
- Older, no consent: don't email or text offers. Reach them on the next visit, by phone where appropriate, or by mail, and ask for consent going forward.
Example for the plumbing-only group:
| Plumbing-only segment | Count |
|---|---|
| Express consent | 900 |
| Job within 2 years, implied | 1,300 |
| Older, no consent | 1,000 |
That leaves about 2,200 households you can likely message this year, and 1,000 to reach by other means.
Step 3: choose a relevant offer, not a generic one
Response depends on relevance. A plumbing customer who had a water heater installed is more likely to respond to a heating message if you know the age of their furnace. Use what your technicians recorded:
- Furnace or boiler over 15 years old: replacement planning and a check-up offer.
- No cooling recorded: heat pump or air conditioning quote before summer.
- Recent HVAC-only customers: a water heater age check, or a drain inspection in older homes.
If you don't have equipment notes, start capturing them on every visit. That alone improves every future campaign.
Step 4: apply a cautious response rate
For planning, assume a range rather than a single number. Using the 2,200 contactable plumbing-only households:
| Assumed booking rate within 12 months | Jobs |
|---|---|
| 2% | 44 |
| 3.5% | 77 |
| 5% | 110 |
These are bookings of any heating or cooling service: tune-ups, repairs, replacements, quotes that turn into work.
Step 5: turn jobs into gross profit
Now split the jobs by type, using your own averages. Example:
| Job type | Share of bookings | Average gross profit |
|---|---|---|
| Tune-up or small repair | 70% | $180 |
| Larger repair | 20% | $550 |
| Replacement or new system | 10% | $2,400 |
The blended gross profit per booking is (0.7 × 180) + (0.2 × 550) + (0.1 × 2,400) = 126 + 110 + 240 = $476.
At the middle case of 77 jobs, that's about $36,650 in gross profit from the plumbing-only list in a year. Run the same sum for the HVAC-only group with plumbing offers (water heaters, drains, fixtures), and add the two.
Step 6: subtract the cost
Costs are modest compared with buying new customers:
- writing and sending four to six campaigns a year;
- technician time on prompts and leave-behinds;
- the email and text platform;
- any offer cost you choose to absorb.
If those come to $8,000 a year, the middle case nets roughly $28,000 in gross profit. Compare that with what the same $8,000 would buy in paid search for new customers in your market.
Step 7: count the second-order effects
The sum above understates the value, because a household that buys from both trades tends to:
- call you first for the next problem in either trade;
- be a better candidate for a maintenance plan that covers both;
- leave reviews that mention both trades, which helps the brand.
Track the both-trades share from Step 1 every quarter. Moving it from 9.5% to 15% over two years is a realistic, measurable goal.
A second example: an HVAC-heavy shop
The same method works the other way round. Say a shop added plumbing two years ago and has 2,800 HVAC-only households, 1,600 of them contactable by email or text. Plumbing offers to that group might be a water heater age check, a drain inspection in older homes, or a fixture upgrade bundled with a spring maintenance visit.
If 3% book within a year, that's 48 plumbing jobs. With a blended gross profit of $320 per booking (mostly service calls, a few water heater replacements), that's about $15,400. Smaller than the first example, but it also seeds the plumbing side's reviews and gives the new plumbers steady work while their own search visibility builds.
A one-page worksheet
Copy this and fill in your own numbers:
- Total households (3 years): ____
- Plumbing only: ____ · HVAC only: ____ · Both: ____
- Both-trades share: ____ %
- Contactable by email or text (by group): ____
- Assumed booking rate (low / middle / high): ____ / ____ / ____
- Blended gross profit per booking: $____
- Estimated annual gross profit (middle case): $____
- Annual cost of the program: $____
- Net: $____
Common mistakes
- Sending everyone the same message. Relevance is what drives response.
- Ignoring consent. It's a legal issue and a trust issue.
- Measuring opens instead of bookings. Opens don't pay wages.
- Stopping after one campaign. The value builds over a year of well-timed messages.
When you're ready to turn this into a running program, see cross-selling between plumbing and heating customers. For timing across the year, read the 12-month two-trade calendar. All guides are on the guides page.
Frequently asked questions
What response rate should we assume?
Use a cautious range, such as 2% to 5% of contacted households booking something within a year, then replace it with your own results after the first two campaigns. Equipment age and season make a big difference.
How far back should we go in the customer list?
For email and text, consent decides. ISED's CASL guidance describes implied consent from a purchase lasting up to two years, so older customers usually need express consent first. For phone calls and on-site conversations, the full history is useful.
What if our software doesn't track which trade each job was?
Use job types or invoice line items as a proxy. Even a rough split, done once, tells you whether the opportunity is worth building a process around.