A plumber I called at 7pm on a Tuesday let it ring eleven times, then dumped me into a voicemail box that was full. Good reviews, solid map pack position, and he was losing every emergency call that came in after six.
That’s a ten-minute find. It’s also why, when you sell local SEO services to plumbers, HVAC companies, and electricians, you’re not selling a concept. You’re pointing at a leak in a bucket they already know is leaking.
Why home service trades are the best local SEO clients you’re not closing
A dentist has to be convinced that online visibility matters. A plumber already lives it. If the phone doesn’t ring, he doesn’t eat, and he’s known that since his first week on his own.
The ticket sizes make the math obvious. A water heater replacement, an AC compressor, a panel upgrade: a few hundred dollars up to several thousand. Say an HVAC company averages $650 a job. A $500 monthly retainer pays for itself with one extra call, and the owner can do that arithmetic in his head while standing in your driveway.
Most agencies are chasing dentists, lawyers, and med spas, because those niches look better in a case study deck. That leaves local SEO for contractors wide open in most metros. I’ve pulled up map packs in mid-sized metros and found three of the top five HVAC listings with no category beyond “HVAC contractor,” no photos added in two years, and no service areas defined.
Emergency intent is the kicker. Nobody scrolls to page two for “burst pipe” or “AC not cooling.” They tap the first three results, call until somebody answers, and book. Map pack position maps almost directly to revenue in a way it never does for a chiropractor.
Do this first: search “emergency plumber [your city]” on your phone, not desktop, and screenshot the three-pack. Those three businesses are winning. Everyone on page one below them is your prospect list.
Which trades actually answer the phone
Before I pitch anyone, I call them. Three times: around 9am, around noon, and around 7pm. I ask a normal customer question, usually “Do you guys do tankless water heaters?”, and I write down what happened each time.
In my experience, electricians and HVAC companies with an office manager answer more reliably than solo plumbers running the phone from the truck. That’s not a knock on plumbers. It changes your pitch completely.
If nobody picks up and the callback takes a day, you have your opening line before you’ve even looked at their Google listing. More traffic to a phone nobody answers is worthless, and saying that out loud marks you as someone who thinks about the business, not just the rankings.
Target the 2-5 employee range. Below that, the owner is the whole company and often can’t afford a retainer or stay organized enough to keep one. Above ten employees, you’re usually dealing with a marketing coordinator who already has three agency pitches in her inbox and a procurement process. In the 2-5 range, the owner reads his own email and can say yes on a Thursday.
Keep a spreadsheet: business name, trade, employee estimate from the website’s team page, answer time at each of the three call attempts, and the map pack position you saw. Twenty rows is a week of outreach.
Do the audit before you ever pitch
Nobody in the trades responds to “I’d love to chat about your online presence.” They respond to “Your listing says you close at 5pm on Saturday but your website says you’re 24/7, so which one is Google showing people?”

To get to that sentence you have to actually look. For each prospect I check their Google Business Profile, their website on mobile, and their position in the local pack for three to five money keywords. For a plumber that’s usually “emergency plumber [city],” “water heater repair [city],” “drain cleaning near me,” and maybe “plumber [neighborhood].”
What I’m hunting for, in rough order of how often it’s broken:
- Primary category set to something generic when a more specific one exists, or secondary categories left empty entirely
- Fewer than ten photos, or photos uploaded only by customers
- Hours that contradict the website, especially around emergency availability
- Name, address, and phone that don’t match across Yelp, Angi, and BBB
- Reviews that stopped eighteen months ago, or review responses that don’t exist
- A mobile site that takes six seconds to load because of a hero video nobody asked for
- No service area pages, so they’re invisible for every suburb they actually drive to
Here’s the part most people get wrong: find one problem. Not forty. A 40-point audit PDF makes you look thorough to another marketer and makes you look like a time sink to a guy with a van full of copper fittings. Pick the single biggest leak, the one you can screenshot in a way a non-technical person understands in two seconds.
Build your pitch around one finding
Throw away the slide that explains what SEO is. The owner doesn’t care what a citation is and he never will.
Lead with the finding, stated as a consequence. Not “your GBP categories are incomplete” but “you don’t show up at all when someone searches ‘AC repair’ in Brookhaven, and your competitor two miles away does.” Not “your NAP is inconsistent” but “three directories have your old phone number on them.”
Then show the competitor. Same search, same city, same day, screenshots side by side. Competitive pressure moves trade owners faster than any ROI projection, because they know these companies. They see the trucks. “Hodges Heating is taking the calls you’re not showing up for” lands harder than any statistic you could produce.
Close with one line: “Here’s the thing costing you calls right now, and here’s what it takes to fix it.” Then stop talking. The silence after a specific, provable claim does more selling than another five minutes of explanation.
Price anchoring to one extra job a month
Before you name a number, ask what their average job is worth. Most trade owners will tell you straight. “What’s a typical service call run you — ballpark?”
Whatever they say becomes your anchor. If the answer is $650 and your retainer is $500, you say: “So this costs less than one repair. If it brings you one extra job a month you wouldn’t have gotten, you’re ahead. Two, and it’s not a close call.”
That’s the whole pricing conversation. Resist the urge to promise a percentage lift in traffic or quote an industry average conversion rate you read somewhere. You can’t back those up, and most of these owners have been burned by an agency before. They’ll hear it as the same noise they heard last time.
What you can commit to is the work: specific fixes, a specific timeline, a before-and-after you’ll show him at day 30.
The outreach message that doesn’t read like a pitch
Under 100 words. First line is the finding. No agency name in the opening sentence, no list of services, no “I hope this email finds you well.” Something close to this:
“Hi Dave, I was looking at emergency plumber searches in Westfield and your listing doesn’t come up, but your website says you’re 24/7. Looks like your Google hours are set to close at 5. I took a screenshot if you want it. No charge, just thought you’d want to know. Mark”
Give the finding away. Free, no call required, no form to fill out. In a niche where everyone gets four robocall pitches a week, handing over something useful and asking for nothing buys more credibility than a portfolio would.
Then follow up by phone two days later. Trade owners live on their phones between jobs and will often have a real conversation at 4:30pm while waiting on a part. Email alone will get you a reply rate you won’t like.

What to deliver in the first month
Fix the thing you found in the audit first, in week one. It’s usually a GBP correction that takes twenty minutes, it’s visible in a search result, and it proves you do what you say. That single act does more for retention than the next eleven months of technical work.
Then, in rough order:
- Clean up name, address, and phone across the top five to ten directories they’re already listed on. Don’t buy a 300-citation package; fix the ones that actually show up when you search their business name.
- Fill out the profile properly: all applicable categories, service list, service areas by ZIP code or city, at least fifteen real photos of trucks, crews, and finished work.
- Set up a review request system. In the trades, a text sent from the tech’s phone when the job is done outperforms email by a wide margin. Give them the exact message to send.
- Build or fix service area pages for the suburbs they actually drive to, with real content about each area, not the same paragraph with the city name swapped.
At day 30, send a before-and-after screenshot. Same search, two dates. That screenshot is your renewal conversation, and you never have to ask for the renewal directly.
Running this at scale without tab-hopping
Doing the audit by hand for twenty prospects means twenty rounds of pulling up Maps, checking categories, running a mobile speed test, searching four directories, and writing the email. That’s most of a week for a pipeline that might close two.
I built Auditsy because I was doing exactly that and got tired of it. It runs a local visibility audit on any business using real Google Maps data, then writes the cold outreach email based on what that audit found, so the message references their specific problem instead of a template. It also generates service area landing pages, which is the second thing you’ll need once the client signs. It’s for freelancers and agencies selling local SEO who want to pitch twenty businesses a week instead of three.
Take a look at Auditsy here if the audit step is the part slowing you down.
Trade owners are among the most straightforward local SEO agency clients you’ll ever work with, as long as you walk in with something specific instead of a deck.
FAQ
How much should I charge a plumber or HVAC company for local SEO?
Anchor it to their average job value rather than to what other agencies charge. If a typical repair runs $650, a retainer in the $400-$800 range is defensible because one extra booked job covers it. Solo operators often cap out lower, which is another reason to target the 2-5 employee businesses.
What if the contractor says he already has a guy doing his SEO?
Ask what the last report showed and whether his map pack position changed. Then show your screenshot anyway. If his current provider missed something as basic as wrong hours or a missing category, you’ve made the point without criticizing anyone directly, and the owner draws his own conclusion.
Is local SEO for contractors worth it if they’re already fully booked?
Sometimes the honest answer is not yet, and saying so earns you the call six months later when summer ends and the HVAC phone goes quiet. If they are booked, the useful angle is job quality rather than job volume: better visibility for high-ticket searches like system replacement instead of low-margin service calls.
