← All posts
Customer retentionChurn preventionApril 26, 2026Clint Research Team

How to Spot At-Risk Customers in Your CRM Before They Churn

Repeat customers spend 67% more than new customers. Here are the 6 at-risk signals every contractor should be running on Jobber, Housecall Pro, or ServiceTitan to catch churn before it happens.

10 min read

Key takeaways

  • Bain & Company's research shows existing customers spend 67% more than new customers, making churn prevention more profitable than acquisition
  • Hatch reactivation data shows customers contacted within 90 days of a service anniversary close 4-6x higher than cold reactivation
  • Six at-risk signals can be detected directly from CRM data without any new tooling
Contents
  1. 01Why Churn Prevention Beats Acquisition Every Time
  2. 02Signal 1: No Activity in 12 to 24 Months
  3. 03Signal 2: Service Anniversary Approaching
  4. 04Signal 3: Open Quote Sitting Past 14 Days
  5. 05Signal 4: Negative Review or Complaint Logged
  6. 06Signal 5: Repeat Customer Whose Frequency Is Slipping
  7. 07Signal 6: Lead Response Time Failure on a New Inquiry
  8. 08How to Run All 6 Signals on a Schedule
  9. 09What Tommy Mello Runs at A1 Garage Door
  10. 10Closing the Loop With AI
  11. 11Sources
  12. 12Frequently Asked Questions

Repeat customers spend 67% more than new customers per Bain & Company's classic loyalty research, echoed by HubSpot's customer retention statistics roundup.

For a contractor at $3M, the difference between 25% and 35% repeat-revenue share is roughly $300,000 a year. Most of that lift comes not from acquiring more customers but from spotting at-risk customers before they churn and bringing them back.

The signals are already in your Jobber, Housecall Pro, ServiceTitan, Workiz, or GoHighLevel database. You just have to know what to look for.

Why Churn Prevention Beats Acquisition Every Time

The math is unambiguous. Acquiring a new home service customer costs $200 to $600 per booked job from paid sources per LocaliQ's 2025 search advertising benchmarks. Reactivating a dormant customer costs $5 to $20 in SMS, email, and CSR time per Pete & Gabi's reactivation guide numbers.

Hatch's contractor data reports reactivation campaigns close 12 to 14x higher than cold lead campaigns when the segment is properly defined. A roofer in Austin reported on r/roofing that his reactivation campaign on 3,200 dormant customers generated $87,000 in booked work in 60 days. The records had been sitting in his CRM, untouched, for over a year.

The signals below tell you which customers to text first.

Signal 1: No Activity in 12 to 24 Months

The single most reliable churn indicator is silence. Pull every customer with no completed job, quote, scheduled appointment, or inbound call in the last 12 to 24 months.

The threshold depends on the trade. HVAC and plumbing customers should service annually, so 18 months of silence is a strong churn signal. Roofing customers may go 5 to 10 years between major work, so the threshold there is more like 36 months unless you offer maintenance plans.

Tag this segment as at-risk-silent and route into a 3-touch reactivation campaign. The benchmark is 15 to 25% of total customers in this state, with a recovery rate of 8 to 15% on a well-targeted reactivation.

A garage door contractor on Owned and Operated podcast reported that his silent-customer segment was 34% of total records when he first measured it. After a quarterly reactivation cadence, it dropped to 22% inside a year.

Text Clint: "list customers with no activity in 18 months and a completed job over $400 in the prior 36 months"

Signal 2: Service Anniversary Approaching

Annual service contractors (HVAC tune-ups, gutter cleaning, pest control, lawn treatment) have a built-in churn predictor. The customer who got a furnace tune-up last October will need one this October, or they will get one from a competitor.

Pull every customer whose last service of a recurring type was 11 to 13 months ago. That is the proactive outreach window.

Hatch reactivation data shows customers contacted within 90 days of a service anniversary close 4 to 6x higher than cold reactivation. The signal is the calendar.

A pest control contractor in Florida reported on r/pestcontrol that his service-anniversary outreach had a 41% response rate and a 28% rebooking rate when timed correctly. Without the timing, the same outreach pulled 7 to 9% rebooking.

Text Clint: "list customers whose last HVAC tune-up was between 11 and 13 months ago and have not been contacted in the last 60 days"

Signal 3: Open Quote Sitting Past 14 Days

A quote that has not converted in 14 days is at risk of going dead. A quote that has not converted in 30 days is dead unless something specific is done.

Pull every quote with status "open" or "presented" and a sent-date older than 14 days. This is your active follow-up queue, and most contractors run this number at 0 because the data is invisible to them.

Hatch's 5-minute follow-up data shows quote follow-up within 5 minutes converts 21x higher than follow-up after one hour. By day 14, conversion is in the single digits unless a structured follow-up sequence runs.

A contractor on r/hvac reported that putting an automated 5-minute, 24-hour, 5-day, and 14-day SMS follow-up on every open quote lifted his conversion rate from 22% to 31%. The lift came from data that was already in the CRM finally being used.

Hatch and Podium are the most-mentioned tools for this kind of automation in residential trades, but the data layer matters more than the tool.

Text Clint: "show me every open quote sent more than 14 days ago with no follow-up logged"

Signal 4: Negative Review or Complaint Logged

BrightLocal's 2025 Local Consumer Review Survey reports 88% of consumers are influenced by reviews when choosing a contractor, and a single negative review without a response can lose 30 customers downstream.

Pull every customer with a 1, 2, or 3-star review attached to their record, or a logged complaint in the notes. These customers are at high risk of never coming back, and they are also the ones whose reactivation lift is biggest if you do call.

The play is a personal call from the owner inside 48 hours of the review or complaint. Not a CSR, not a survey, the owner. The recovery rate from a personal owner-call inside 48 hours runs 35 to 60%, versus 5 to 15% from a templated apology.

A plumber in San Diego on r/plumbing reported he flipped a 1-star review to a 5-star review on 7 of 10 attempts using the owner-call playbook. The 3 unrecoverable cases at least stopped the customer from leaving additional negative reviews on Yelp and BBB.

Text Clint: "list customers with a review under 4 stars or a logged complaint in the last 90 days who have not been contacted by the owner"

Signal 5: Repeat Customer Whose Frequency Is Slipping

The most expensive churn is the high-LTV customer who used to call every 6 months and is now silent for 12.

Pull every customer with 3+ completed jobs lifetime, calculate their average months between jobs, and flag any whose current silence is 1.5x their typical interval.

A roofer who built the customer lifetime value tracking described in this case study found that his actual LTV per customer was $12,000 not the $8,000 he assumed. The reason was a long tail of 4-job and 5-job customers that his quarterly reports never surfaced.

The customer who is supposed to call every 8 months and is now at month 14 is the one to call. The benchmark is fewer than 10% of high-LTV customers in this state at any given time.

A landscaping contractor in Atlanta described in the three-zipcode case study ran this exact analysis and found 18% of his 3+ job customers were past their typical interval. A targeted outreach pulled 23% back into a booked appointment inside 30 days.

Text Clint: "show me customers with 3+ completed jobs whose last job was more than 1.5x their average months between jobs"

Signal 6: Lead Response Time Failure on a New Inquiry

This signal catches at-risk customers before they are even customers. Invoca's 2025 Home Services Call Conversion Benchmarks report response time under 5 minutes converts 4 to 8x higher than response over an hour.

A new inquiry that did not get a response in 5 minutes is functionally an at-risk customer. The competitor who responded in 90 seconds is who they are talking to now.

Pull every inbound lead from the last 7 days with a first-response time over 30 minutes. The benchmark is under 5 minutes for high-intent calls, under 30 minutes for web forms, under 2 hours for ad form-fills.

A Houston HVAC owner described in the call-tagging case study ran this audit on his GoHighLevel database and found average response time on web leads was 4 hours and 12 minutes. After implementing instant SMS confirmation and a 5-minute callback rule, his web-lead conversion rate doubled inside 60 days.

An AI lead-qualification agent closes the response-time gap automatically by booking the appointment or capturing critical fields the moment the lead arrives, even at 2am.

Text Clint: "list new leads from the last 7 days where first response was over 30 minutes"

How to Run All 6 Signals on a Schedule

A contractor running these signals manually will lose interest in 60 days. The signals only work on a calendar.

The cadence:

  • Daily: Signal 6 (lead response time on new inquiries)
  • Weekly: Signal 3 (open quotes past 14 days), Signal 4 (recent negative reviews)
  • Monthly: Signal 1 (silent customers), Signal 5 (frequency-slip customers)
  • Quarterly: Signal 2 (service anniversary, planned 90 days ahead)

A contractor running all 6 signals on this cadence typically recovers 3 to 8% of revenue that was otherwise leaking out of the CRM. For a $3M contractor, that is $90,000 to $240,000 a year.

ServiceTitan's 2025 AI in the Trades report found 73% of contractors said data quality was the top blocker to using AI in their business. The 6 signals above are the use case that justifies the data work, because they generate measurable revenue inside 90 days of the CRM being clean enough to support them.

What Tommy Mello Runs at A1 Garage Door

Tommy Mello scaled A1 Garage Door past $220M annual revenue on a database where the at-risk segment was monitored by an actual person on the marketing team, every week.

The signals he runs hardest are the service anniversary (Signal 2) and the silent customer (Signal 1), because both feed his maintenance plan upsell engine. Customers who buy maintenance plans churn at roughly half the rate of customers who do not, so the entire churn-prevention program is engineered around getting at-risk customers back into the maintenance plan funnel.

Most $1M to $10M contractors run zero of these signals. The gap between Mello and the median operator is the discipline of running these reports on a calendar, not the tooling.

Closing the Loop With AI

Each signal feeds an automated outreach. The customer who triggers Signal 1 gets a service-anniversary text. The customer who triggers Signal 4 gets a personal call from the owner. The customer who triggers Signal 6 gets an AI agent on the phone within 30 seconds of the form submission.

An AI customer reactivation system wires all 6 signals into outbound SMS and email automatically, with the owner approving any campaign over 100 customers. The signals identify the at-risk segment. The AI does the outreach.

Without the data work, the AI has nothing to act on. Without the AI, the signals stay theoretical because no one has time to manually text 800 dormant customers. The combination is what generates the 3 to 8% revenue lift.

Sources

Frequently Asked Questions

6 questions home service owners actually ask about this.

  • 01How many of the 6 signals should a contractor run if they only have time for one?

    Signal 2 (service anniversary). It is the highest-ROI signal because it has built-in timing, predictable conversion rates, and works for every recurring trade (HVAC, pest, lawn, gutter, pool). Hatch reports 4 to 6x conversion lift versus cold reactivation when the timing is right.

  • 02What is the threshold for "silent customer" in a roofing business?

    Roofing is different from HVAC because customers go 5 to 15 years between major work. Use 36 months for full reactivation, but layer in a separate signal for "no maintenance or repair touch in 18 months" because gutter cleaning, repairs, and inspections happen in between roof replacements.

  • 03Can these signals be run inside Jobber natively?

    Partially. Jobber supports filtering customers by last activity date and tag. For frequency-slip analysis (Signal 5) and quote follow-up tracking (Signal 3), most operators export to CSV or use a tool like Clint that runs the queries automatically.

  • 04What is a healthy at-risk customer percentage?

    Under 25% of total customers should be in the silent segment (Signal 1). Under 5% of active quotes should be over 14 days old (Signal 3). Under 1% of new leads should miss the 30-minute response window (Signal 6).

  • 05Should I delete the at-risk customers who do not respond to reactivation?

    No. Tag them as dormant-non-responsive and try again in 12 months. Pete & Gabi's reactivation data shows 8 to 15% close rate on the first attempt, but the second and third attempts at 12 and 24-month intervals each pull another 3 to 6%.

  • 06What if a customer asks to be removed from outreach?

    Tag them do-not-contact immediately and exclude from all future campaigns. The legal exposure on continued outreach after a request is real. SMS specifically is governed by TCPA, which is detailed in our compliance guide.

See Clint in action

Clint is the pre-built AI for home service shops. Connect your CRM, email, and phone system in minutes and the agents run on your real data.