Running Google Ads for a local business is fundamentally different from running national campaigns. The margins are tighter, the geographic area is smaller, and the goal is almost always the same: get someone to call, visit, or book. If you're setting up Google Ads for a local business client, the default campaign settings will work against you. Here's how to do it right.
Set Location Targeting Before You Do Anything Else
Google's default location targeting is deceptively broad. By default, campaigns target users who are interested in your target location — not just people physically located there. For a local business, that's a problem.
Change this immediately:
- In your campaign settings, go to Location options
- Set targeting to "Presence: People in or regularly in your targeted locations"
- Set exclusions to "Presence: People in your excluded locations"
This single change can cut wasted spend by 20–40% on local campaigns.
For the radius itself, think practically. A plumber in Austin might serve a 15-mile radius. A dentist probably draws from 5 miles. A wedding venue might pull from 50+. Match the radius to how far clients realistically travel for that type of service.
If your client serves specific neighborhoods or zip codes rather than a clean radius, use location lists instead. Upload a list of zip codes or target named locations individually. It's more work to set up, but it gives you cleaner data when you're optimizing.
Use Call Ads for High-Intent Local Traffic
For most local businesses, a phone call is worth more than a website visit. Call ads — formerly called call-only ads — are designed specifically to generate calls rather than clicks to a landing page.
They show on mobile devices and display a click-to-call button as the primary action. There's no website click involved.
When to use them:
- Service businesses where the customer needs to speak with someone before booking (HVAC, plumbers, electricians, law firms)
- Businesses without a strong landing page
- Campaigns where you want to isolate call volume data cleanly
Call ad best practices:
- Use a Google forwarding number so you can track call duration and volume
- Set a minimum call duration (30–60 seconds) to filter out wrong numbers before counting a conversion
- Schedule ads only during business hours — a call at 11pm when no one answers is a wasted click
You can run call ads alongside standard search ads in the same campaign. Google will show whichever format it predicts is more likely to convert for a given user.
Local Extensions That Actually Drive Action
Ad extensions (now called assets in Google Ads) are non-negotiable for local campaigns. They add real estate to your ad, increase click-through rate, and give users the information they need to take action without clicking through.
Here are the ones that matter most for local:
| Asset Type | What It Does | Best For | |---|---|---| | Location asset | Shows address, map pin, distance from user | Any business with a physical location | | Call asset | Adds phone number to standard search ads | All local service businesses | | Callout asset | Short text snippets ("Same-day service", "Free estimates") | Differentiating from competitors | | Promotion asset | Highlights a limited offer or discount | Seasonal campaigns, new client promos | | Structured snippet | Lists services, brands, or categories | Multi-service businesses |
Location assets specifically: To use these, you need to link your Google Business Profile to your Google Ads account. Go to Tools > Business data > Linked accounts and connect the profile. Once linked, location assets can be applied at the account level and will automatically show the nearest location when relevant.
Don't stack every asset type at once when you're launching. Add location and call assets on day one, then layer in others once the campaign is running.
Campaign Structure for Local Search
For a single-location local business, keep the structure tight.
A common mistake is building out elaborate campaign and ad group structures that you don't have the budget to get meaningful data from. If a client is spending $500/month, two or three focused ad groups will outperform ten thin ones.
Practical structure for a service business:
- Campaign: [City] – [Service Category]
- Ad Group 1: High-intent keywords ("emergency plumber Austin", "plumber near me")
- Ad Group 2: Informational/comparison keywords ("best plumber Austin", "plumber cost Austin")
On match types: Use a mix of exact match and broad match with a solid negative keyword list. Phrase match has become less distinct from broad in recent years. Check search term reports weekly in the first month — local campaigns often pick up irrelevant city names or service types fast.
Bidding: For new local campaigns, start with Maximize Clicks to gather data, then switch to Target CPA or Maximize Conversions once you have 30+ conversions recorded. Jumping to Smart Bidding with no conversion history is a fast way to overpay.
Tracking Conversions the Right Way
You can't optimize a local campaign without clean conversion data, and most local business accounts are set up with either no tracking or tracking that's measuring the wrong things.
Set up these conversion actions:
- Phone calls from ads (via Google forwarding number)
- Phone calls from the website (via website call tracking tag)
- Form submissions (thank you page or event-based trigger)
- Direction requests (from location asset clicks — available in Google Ads reporting)
Mark calls under 30 seconds as non-conversions. A 10-second call is almost always a wrong number or someone who immediately hung up when they heard a voicemail.
Import your conversion data into Google Analytics as well, so you have a source-of-truth view that's not solely inside Google's ecosystem.
If you're managing multiple local clients and need a faster way to monitor campaign performance, track calls, and report results without logging into five different accounts, Campaignly's client reporting dashboard pulls Google Ads data alongside calls, forms, and local search metrics into one view — so you can spot problems and show results without the manual work.