ServicesPro IntelAI SearchPricingResourcesBlogFree AuditLoginStart Growing
← Back to Blog

Case Study: How a Multi-Location HVAC Company Took the #1 Map Pack Spot in 6 of 8 Service Areas — OnyxRank

Jun 30, 2026 ·OnyxRank Team

**Industry:** HVAC & Plumbing Services (Residential & Light Commercial)

**Plan:** [OnyxRank](https://onyxrank.com) Growth

**Timeline:** 90 days

**Key Result:** Google Map Pack #1 ranking in 6 of 8 service areas (up from 0); phone calls from Google Business Profile up **214%**; organic + local leads now outpacing paid search for the first time in company history

The Challenge

The client (anonymized at their request — we'll call them Coastal Air & Plumbing) operates across eight service areas in a mid-sized metro region, offering HVAC installation, repair, and plumbing services to homeowners and small commercial accounts. They'd been in business for over a decade with a strong local reputation, but their digital presence hadn't kept pace with how people actually search for "AC repair near me" in 2026.

When they came to [OnyxRank](https://onyxrank.com), the numbers told an uncomfortable story:

  • **Zero Map Pack appearances** for their two highest-intent terms — "AC repair [city]" and "emergency plumber [city]" — across any of their 8 service areas
  • **8 separate, inconsistent Google Business Profiles**, several with outdated hours, missing service categories, and duplicate listings from a previous rebrand
  • A single, generic "Service Areas" page that tried to rank for all 8 cities at once and ranked for none of them
  • **74% of lead volume coming from paid ads**, with cost-per-lead climbing every quarter as competitors outbid them on "emergency AC repair" terms
  • No review generation system — their average Google rating (4.1 stars, 38 reviews) was being outpaced by a newer competitor with 4.8 stars and 310+ reviews

Their owner put it bluntly during onboarding: "We show up in the map pack for our own company name. That's it." For a service business where 40-60% of clicks go to the three Map Pack listings before anyone scrolls to organic results, that's effectively invisible.

The Approach

This was a textbook case for [local SEO automation](https://onyxrank.com) rather than a single-location campaign. The strategy had four parts:

**1. Google Business Profile cleanup and standardization.** OnyxRank audited and consolidated all 8 listings, removed 2 duplicate profiles that were splitting review signals, standardized NAP (name, address, phone) data across every directory, and filled out every service category, attribute, and Q&A field Google offers — fields most contractors leave blank.

**2. City-specific service pages, not one generic page.** Instead of a single "Service Areas" page, OnyxRank built 8 individually optimized pages — one per city — each with unique content addressing local climate patterns, neighborhood names, response-time commitments, and city-specific schema markup (LocalBusiness + Service schema). This is the single highest-leverage fix for multi-location local SEO: Google can't rank a generic page for 8 distinct geographic queries.

**3. Automated review generation.** OnyxRank deployed a post-service review request flow that texted customers a direct review link within 2 hours of job completion — when satisfaction is highest. Review volume and recency are now confirmed local ranking factors, and they're also the single biggest driver of click-through once a business *is* in the Map Pack.

**4. Citation building + GEO optimization.** Beyond standard directories (Yelp, Angi, BBB, HomeAdvisor), OnyxRank optimized Coastal's content so AI answer engines (Google AI Overviews, ChatGPT, Perplexity) could accurately cite their service areas and credentials when users asked location-based service questions — a growing share of "find a contractor near me" queries now start in an AI chat interface rather than a traditional search box.

Technical fixes ran in parallel: page speed improvements on mobile (where 80%+ of emergency-service searches happen), fixing crawl errors on old service-area URLs, and consolidating redirect chains left over from a prior site migration.

The Results

After 90 days:

  • **Map Pack #1 ranking in 6 of 8 service areas** for "AC repair [city]" and "emergency plumber [city]" (up from 0 of 8)
  • **Map Pack top-3 in the remaining 2 areas**, both newer market expansions with less review history
  • **Google reviews grew from 38 to 167**, average rating up from 4.1 to 4.7
  • **Phone calls from Google Business Profile up 214%** month-over-month by day 90
  • **Organic + local lead share rose from 26% to 49%** of total lead volume, reducing dependency on paid ads
  • **Cost-per-lead from paid search dropped 31%** as a side effect — branded search volume increased, pulling down Google Ads quality score costs

The owner's read on it: "We used to be the best-kept secret in three of our zip codes. Now we're the first call people make."

Key Takeaways

  • **One generic "service areas" page is worse than no page at all.** If you serve multiple cities, each one needs its own optimized page — Google rewards specificity, not breadth.
  • **Google Business Profile is half the battle for local businesses.** Most contractors set it up once and never touch it again. Complete, current, actively-managed profiles consistently outrank "good enough" ones.
  • **Review velocity matters more than review count.** A steady drip of recent reviews signals an active, trustworthy business — and an automated request flow beats hoping customers remember to leave one.
  • **Local and paid search aren't separate budgets — they interact.** Stronger organic and Map Pack presence lowered this client's paid acquisition costs too, because branded and local-intent searches got cheaper as authority grew.

Want Results Like These?

If your business operates in more than one service area and still has a single generic location page — or if you're not sure where you actually stand in the Map Pack — that's the first thing worth fixing. [Get your free audit](/free-audit) to see exactly where the gaps are, or [see our plans](/pricing) to find the right fit for a multi-location local SEO program.

Related reading
Case Study: How a Financial Planning Firm Went from 2 Page-1 Keywords to 34 — and Started Getting Cited in AI Overviews — OnyxRank
How OnyxRank helped a boutique financial advisory firm 5x organic traffic, dominate local search, and earn AI Overview c
Case Study: How a Cybersecurity SaaS Startup Beat Enterprise Giants with AI-Powered SEO — OnyxRank
How OnyxRank helped a B2B cybersecurity SaaS grow from 400 to 11,200 monthly organic visitors in 5 months — and land in
Case Study: How an E-Learning Platform Grew Organic Traffic 287% in 5 Months with Topic Cluster SEO — OnyxRank
How OnyxRank helped an online education company go from 3,200 to 12,400 monthly organic visitors by building topic clust
Want the deeper analysis?

Pro Intel subscribers get the full picture - proprietary analysis, keyword opportunities, tactical playbooks, and template downloads every week. $49/mo.

See Pro Intel
Free weekly SEO insights

One email per week. Actionable, no fluff.