A plumber in San Antonio told me he spent $1,200 a month on SEO for eight months and got nothing. No new calls, no new customers, no idea what the agency was even doing. He canceled and swore off SEO entirely.

A roofer in the same city spent roughly the same amount. Within five months, he was getting 15-20 new calls per month from Google, enough to stay booked through the slow season. Same city, same price range, completely different outcomes.

So is SEO worth it? The honest answer is: it depends on what you’re buying, who’s doing it, and whether your business is set up to benefit from organic search in the first place.

What SEO actually costs for a local business

Let’s get the numbers out of the way. For a local service business (plumber, roofer, electrician, cleaning company, dentist), SEO typically runs between $500 and $2,500 per month. The national average hovers around $1,500/month based on Ahrefs’ 2025 agency pricing survey.

At the low end, you’re usually getting basic Google Business Profile optimization and maybe some citation cleanup. At the higher end, you’re getting content creation, technical fixes, link building, and ongoing strategy.

One-time SEO audits or setup projects run $1,000 to $5,000. These can make sense if your site has specific technical problems holding it back, but they won’t produce ongoing results without maintenance.

The ROI math that actually matters

Here’s where most business owners get stuck. They think about SEO as a monthly expense and compare it to the monthly cost of Google Ads. But the math works differently.

Say you’re a roofer. Your average job is worth $8,000. If SEO brings in three new customers per month, that’s $24,000 in revenue from a $1,500 investment. That’s a 16x return. Even if SEO only brings in one extra job per month, you’re getting $8,000 from $1,500. Still a solid return.

Now compare that to Google Ads for the same keyword. The average cost per click for “roofer near me” in a mid-size market is $30-50. If 5% of clicks convert to calls, and 30% of calls convert to jobs, you need about 67 clicks to get one job. That’s $2,000-3,350 in ad spend per customer. SEO gets more expensive up front but cheaper per lead over time because you’re not paying per click.

The BrightLocal 2026 Local Consumer Survey found that 87% of consumers used Google to evaluate a local business in the past year. If your business doesn’t show up when people search for what you do in your area, you’re invisible to the largest source of new customers.

When SEO is absolutely worth it

SEO makes the most sense when these conditions are true:

Your customers search for what you do. If people Google “plumber near me” or “roof repair San Antonio” when they need your service, SEO puts you in front of them at the exact moment they’re ready to buy. This is true for virtually every home service, medical practice, legal practice, and local retail business.

Your average job value is high enough. If your average customer is worth $500 or more, the math works quickly. A single new customer per month from organic search can cover your entire SEO investment. For high-ticket services like roofing, HVAC replacement, or legal work, one customer can pay for six months of SEO.

You plan to be in business for more than a year. SEO compounds. The work done in month three still generates leads in month fifteen. Unlike ads, which stop the second you stop paying, the content and authority you build through SEO stick around. But it takes 4-8 months to see meaningful results, so if you need leads tomorrow, SEO alone won’t solve that.

Your competition is investing in it. Look up your top three competitors on Google. If they’re showing up in the Map Pack and you’re not, they’re getting calls that could be yours. The businesses that dominate local search didn’t get there by accident.

When SEO might not be worth it

There are situations where SEO isn’t the right investment:

You’re in a market with almost no search volume. If you serve a very niche B2B market where customers find you through referrals or industry events, there might not be enough people Googling your service to justify the spend. This is rare for local service businesses but common for specialized B2B.

You need leads this week. SEO is a 4-8 month play. If your pipeline is empty and you need jobs immediately, Google Ads or Local Services Ads will get you calls faster. The smart play is running ads for immediate leads while building SEO for long-term, lower-cost lead generation.

Your website is fundamentally broken. If your site loads in 8 seconds, isn’t mobile-friendly, and has no service pages, throwing money at SEO before fixing the foundation is like putting a fresh coat of paint on a house with a cracked foundation. Fix the basics first, then invest in SEO.

The real question: are you buying results or activity?

Here’s where the plumber’s story from the top becomes instructive. He wasn’t getting bad SEO. He was getting no SEO. The agency was sending monthly reports full of graphs and metrics, but nothing was actually changing. No new content, no technical fixes, no citation work. Just reports.

The roofer’s agency, by contrast, was publishing two pieces of content per month, optimizing his Google Business Profile weekly, building citations in local directories, and sending him a simple dashboard showing calls from organic search. Measurable work producing measurable results.

Before you decide whether SEO is “worth it,” ask what you’re actually getting. A good local SEO provider should be able to show you:

If they can’t answer those four questions clearly, the problem isn’t SEO. It’s your provider.

The compounding effect most people miss

The thing that makes SEO genuinely valuable for small businesses is the compounding. A blog post written in January that answers “how much does a roof replacement cost in San Antonio” keeps ranking and generating traffic for years. You paid for it once. It works forever.

After 12 months of consistent SEO, a typical local service business has a library of content, a strong Google Business Profile, dozens of citations, and domain authority that makes every new piece of content rank faster. Month twelve is dramatically more productive than month one, even though you’re paying the same amount.

Google’s own data shows that websites with 50+ indexed pages generate 3x more leads than those with fewer than 10. Each page is a new doorway for customers to find you.

That’s the difference between SEO and ads. Ads are a faucet. Turn them off, leads stop. SEO is an asset. It keeps producing after you stop paying, though maintaining it extends the lifespan significantly.

The bottom line

For most local service businesses, SEO is worth it if you’re working with someone who does actual work and you give it enough time to compound. The typical breakeven point is 4-6 months. After that, SEO becomes your lowest cost-per-lead channel.

The question isn’t really “is SEO worth it?” It’s “am I getting real SEO or am I getting a monthly report?”

Want to see where your business stands right now? I built a free audit tool that checks your Google visibility, review profile, and how you compare to the businesses currently winning in your market. Takes 30 seconds and tells you whether SEO would actually move the needle for your specific situation.