Systems Lab

Agent skill

local-business-advertising-guide

This skill should be used when the user asks to \"advertise a local business\", \"run ads for a restaurant or dentist\", \"set up Local Services Ads\", \"target people in my city\", or mentions \"local business ads\", \"small ad budget\", or \"Google Business Profile optimization\".

activeSelf-containedInstructions only3,972 words

Filed under ABM and paid.

From Ad-Superpowers/ad-superpowers-plugin · 120 skills · 5 · pushed 2026-09-10

What it does when it runs

This skill should be used when the user asks to \"advertise a local business\", \"run ads for a restaurant or dentist\", \"set up Local Services Ads\", \"target people in my city\", or mentions \"local business ads\", \"small ad budget\", or \"Google Business Profile optimization\". Do NOT use for: e-commerce businesses selling online (use ecommerce-funnel-optimizer), national/international brands (use channel-selection-framework), or B2B SaaS companies (use platform-specific skills).

Read from the skill and the 0 files bundled beside it. A skill’s own description is written to be selected by an agent, so it describes the job and not the dependencies.

Keys and connectors you must supply
None found.
Hosts it reaches
No third-party host appears in the skill or its bundled files.
Tool permissions it declares
No allowed-tools in the frontmatter. It only issues instructions, so there is nothing to bound.
Actions present in the files
None. Instructions only.

Ask about local-business-advertising-guide

Opens your assistant with this page's verified links already in the prompt.

Is this safe to install?ClaudeChatGPT
Adapt it to my stackClaudeChatGPT
What else do I need for it to workClaudeChatGPT
Rather ask a human? Talk to Cheetah
git clone --depth 1 --filter=blob:none --sparse https://github.com/Ad-Superpowers/ad-superpowers-plugin.git /tmp/ad-superpowers-plugin
git -C /tmp/ad-superpowers-plugin sparse-checkout set "plugin/skills/local-business-advertising-guide"
mkdir -p ~/.claude/skills/local-business-advertising-guide
cp -R "/tmp/ad-superpowers-plugin/plugin/skills/local-business-advertising-guide/." ~/.claude/skills/local-business-advertising-guide/

Picked up without a restart. A project skill of the same name is shadowed by your personal one. For one repository only, swap ~/.claude/skills for .claude/skills. Claude Code docs ↗

Or take the whole library

This repo ships a .claude-plugin manifest, so Claude Code can install all 120 skills at once. Plugin skills are invoked as /<plugin>:<skill>, so they never collide with your own.

/plugin marketplace add Ad-Superpowers/ad-superpowers-plugin
/plugin

The folder is the same in every client that implements the format — 46 of them — so if yours is not above, only the destination changes.

Reproduced in full from Ad-Superpowers/ad-superpowers-plugin/blob/9b6385d2d2d228e4dac096a1d6bc5715c04fa736/plugin/skills/local-business-advertising-guide/SKILL.md, which is licensed MIT (repository). 3,972 words, 47 headings.

Local Business Advertising Guide

Purpose

Provide a clear, actionable advertising guide for local businesses with limited budgets. Local businesses have different constraints than national brands or e-commerce: small geographic areas, limited budgets, and a need for phone calls, foot traffic, or form submissions rather than online purchases. This guide focuses on maximum impact per euro spent.

When to Use This Skill

Invoke when user mentions:

  • Local business: "I'm running ads for a dentist/plumber/restaurant/salon"
  • Small budget: "I only have €500/month for ads"
  • Local targeting: "I want to target people in my city"
  • Google Maps/Local: "How do I show up in Google Maps ads?"
  • Phone calls: "I want more phone calls from ads"
  • Foot traffic: "I want more people to visit my store"
  • Local Services Ads: "What are LSA ads?"
  • Simple setup: "I don't have time for complex ad management"

Part 1: Local Advertising Fundamentals

What Makes Local Different

FactorNational/E-CommerceLocal Business
GeographyNationwide or global10-50 km radius
Budget€5K-500K+/month€500-2,000/month
Conversion goalOnline purchaseCall, visit, form fill
Buying cycleHours to weeksSame day to 1 week
CompetitionHundreds of advertisers5-20 local competitors
MeasurementOnline conversion trackingCalls, directions, bookings
Time to manage10-20 hours/week30 min-2 hours/week

The Local Business Ad Budget Reality

Budget: €500/month
├── Google Ads: €350/month (70%)
│   ├── Search campaigns: €300 (~€10/day)
│   └── Performance Max (local): €50 (Google Maps, Display)
└── Meta Ads: €150/month (30%)
    └── Local awareness + lead gen: €150 (~€5/day)

Budget: €1,000/month
├── Google Ads: €700/month (70%)
│   ├── Search campaigns: €550 (~€18/day)
│   └── Performance Max (local): €150
└── Meta Ads: €300/month (30%)
    ├── Local awareness: €150
    └── Retargeting: €150

Budget: €2,000/month
├── Google Ads: €1,200/month (60%)
│   ├── Search campaigns: €800 (~€27/day)
│   ├── Performance Max (local): €200
│   └── Display remarketing: €200
└── Meta Ads: €800/month (40%)
    ├── Local awareness: €400
    ├── Lead generation: €250
    └── Retargeting: €150

Note: Google deprecated standalone "Local campaigns" in 2022. Local inventory ads, Maps promotions, and local objectives are now managed through Performance Max campaigns with store goals enabled.

Why 70/30 Google/Meta for Most Local Businesses

ChannelWhy It Works for Local
Google Search (70%)People searching "plumber near me" or "dentist Amsterdam" have immediate intent. They need your service NOW. Highest conversion rate.
Meta/Instagram (30%)Builds awareness in your area. People aren't searching for you, but they live nearby and might need you soon. Good for staying top-of-mind.

Exceptions where Meta gets more budget:

  • Restaurants, bars, events (visual, impulse-driven)
  • Beauty salons, wellness (visual, aspirational)
  • New businesses needing awareness (nobody knows you exist yet)
  • Businesses with strong visual content (before/after photos)

Part 2: Google Ads for Local Businesses

Campaign Types for Local

Campaign TypeWhat It DoesBest ForMinimum Budget
Search (keyword-based)Shows text ads when people searchServices with search intent€10/day
Local Services Ads (LSA)Google Guaranteed badge, pay per leadHome services, legal, medical€5-10/day
Performance Max (local)Automated across Search, Maps, Display, YouTubeBusinesses with physical locations€15/day
Call-only campaignsAds that directly call your businessUrgent services (locksmith, plumber)€5/day

Local Services Ads (LSA) — The Best Option for Many Local Businesses

What LSA offers:

  • Pay per lead (not per click) — only pay when someone actually contacts you
  • Google Guaranteed badge (builds trust)
  • Shows at the very top of search results (above regular ads)
  • Simpler setup than regular Google Ads

Eligible categories (partial list): Plumber, Electrician, Locksmith, HVAC, Roofer, House Cleaner, Mover, Painter, Pest Control, Carpet Cleaner, Garage Door, Auto Repair, Lawyer, Real Estate Agent, Financial Planner, Tax Preparer, Dentist, Chiropractor, Veterinarian, Personal Trainer

LSA Cost Benchmarks (approximate, varies by region):

CategoryCost per LeadTypical Close Rate
Plumber€15-4030-50%
Electrician€15-3530-45%
Locksmith€10-2540-60%
House cleaner€10-2035-50%
Dentist€20-5020-35%
Lawyer€40-10015-25%
Real estate agent€20-5010-20%
HVAC€20-4525-40%

Search Campaign Setup (Simplified)

Campaign structure for a local business (keep it simple):

Account
└── Campaign: [Service] — [City]
    ├── Ad Group 1: Core Service
    │   ├── Keywords: "plumber amsterdam", "loodgieter amsterdam"
    │   ├── Keywords: "plumber near me", "loodgieter bij mij in de buurt"
    │   └── 2-3 Responsive Search Ads
    ├── Ad Group 2: Specific Service
    │   ├── Keywords: "emergency plumber amsterdam"
    │   ├── Keywords: "drain cleaning amsterdam"
    │   └── 2-3 Responsive Search Ads
    └── Ad Group 3: Brand Terms
        ├── Keywords: "[your business name]"
        └── 1-2 Responsive Search Ads

Why simple works: With €10-30/day budget, you don't need 20 ad groups. 2-3 focused ad groups with tight keywords will outperform a complex setup that spreads budget too thin.

Local Keyword Strategy

Keyword formula for local:

[Service] + [City/Area]
[Service] + "near me"
[Service] + [Neighborhood]
[Urgent modifier] + [Service] + [City]

Examples for a plumber in Amsterdam:

KeywordMatch TypeExpected CPCIntent Level
plumber amsterdamPhrase€2-5High
loodgieter amsterdamPhrase€2-4High
emergency plumber amsterdamPhrase€4-8Very high (urgent)
plumber near mePhrase€3-6High
drain cleaning amsterdamPhrase€2-4High
[business name]Exact€0.50-1Highest (brand)

Use google_ads_run_keyword_planner to research:

  • Local search volume for your service + city combinations
  • CPC estimates for budget planning
  • Related keyword ideas you may have missed

Negative Keywords for Local (Essential)

Add these day one to prevent wasted spend:

CategoryNegative KeywordsWhy
Jobsjobs, hiring, salary, career, vacaturePeople looking for employment
DIYhow to, tutorial, diy, zelf doenPeople who won't hire you
Freefree, gratis, cheap, goedkoopLow-intent bargain seekers
Other cities[cities you don't serve]Outside your service area
Irrelevant services[services you don't offer]Wrong business match

Location Targeting

Set up correctly — this is where local businesses waste the most money:

SettingRecommendationWhy
Target radius15-30 km (depends on service area)Only show to people you can serve
Location option"Presence: People IN your location"NOT "People interested in" (includes tourists, people researching from afar)
Bid adjustment+20% for your immediate area (5 km)Higher conversion rate for nearby customers
ExclusionsNeighboring cities you don't servePrevents waste

Critical setting: In Google Ads targeting, change from "Presence or interest" (default) to "Presence: People in or regularly in your targeted locations." The default wastes 20-40% of local budgets.

Ad Extensions (Use ALL of These)

ExtensionWhat It AddsImpact
Location extensionYour address + map pin+10-15% CTR
Call extensionClick-to-call phone number+5-10% CTR
SitelinksLinks to key pages (Services, About, Reviews, Contact)+10-20% CTR
CalloutShort selling points ("24/7 Service", "Free Quote")+5-8% CTR
Structured snippetService types, areas served+3-5% CTR
Business nameYour business name in the adBuilds recognition

Combined effect: Using all extensions can improve CTR by 20-30% with no additional cost.


Part 3: Meta Ads for Local Businesses

Campaign Types for Local

ObjectiveUse CaseWhat You Pay For
Awareness (Reach)Brand building in your areaPer 1,000 impressions
TrafficDrive to website or booking pagePer click
Leads (Lead Form)Collect contact info without leaving FacebookPer lead
MessagesStart Messenger/WhatsApp conversationsPer conversation
Store trafficDrive foot traffic to physical locationPer store visit (estimated)

Recommended Setup for Local Business

Campaign 1: Local Awareness (60% of Meta budget)
├── Objective: Awareness or Traffic
├── Targeting: 15-30 km radius, age 25-65, interests related to your service
├── Creative: Before/after photos, customer testimonials, team photos
└── Budget: €3-5/day

Campaign 2: Lead Generation (40% of Meta budget)
├── Objective: Leads (Lead Form) or Messages
├── Targeting: Same geo, narrower interests or website visitors
├── Creative: Special offer, free consultation, seasonal promotion
└── Budget: €2-3/day

Geo-Targeting on Meta

MethodWhen to UseSetup
Radius targetingMost local businessesDrop pin on your location, set 10-25 km radius
Zip code / postal codeSpecific neighborhoodsEnter relevant postal codes
City targetingCity-wide serviceSelect city name
"Recently in this location"Tourists, visitorsUseful for restaurants, attractions

Lead Form Ads (Best for Local)

Why lead forms work for local businesses:

  • User doesn't leave Facebook/Instagram
  • Auto-fills name, email, phone from profile
  • 2-5x lower cost per lead than landing page conversion
  • Works on low budgets (€5/day can generate 1-3 leads)

Lead form setup tips:

  1. Keep it to 3-4 questions maximum (name, phone, email, service needed)
  2. Add a qualifying question ("What service do you need?" dropdown)
  3. Enable instant form (pre-fills data, lower friction)
  4. Set up CRM integration or email notification (leads expire after 90 days!)
  5. Respond within 1 hour for best conversion to customer

Expected cost per lead by business type (Meta):

Business TypeCost per LeadLead-to-Customer Rate
Home services€5-1520-35%
Beauty/wellness€3-1025-40%
Restaurant/bar€2-530-50%
Professional services€10-3015-25%
Fitness/gym€4-1220-35%
Real estate€8-2510-20%
Automotive€8-2015-25%

Creative That Works for Local

Creative TypeFormatWorks Best For
Before/after photosImage carouselHome services, beauty, landscaping
Customer testimonialsVideo (30-60s) or image with quoteAll local businesses
Team/owner photosImage or videoBuilds trust, humanizes business
Special offerImage with clear offer textSeasonal promotions, new customer specials
Behind-the-scenesShort video (15-30s)Restaurants, artisans, manufacturers
Google review screenshotsImageAny business with 4+ star reviews

Local creative rules:

  • Show real photos of your actual business, team, and work (not stock photos)
  • Include your city/area name in the ad copy
  • Lead with your strongest review or testimonial
  • Include a clear next step (Call now, Book online, Get a free quote)

Part 4: Google Business Profile (Free and Essential)

Why GBP Matters More Than Ads for Some Local Businesses

Before spending €1 on ads, optimize your Google Business Profile.

Why:
- Appears in Google Maps and local pack (3-pack) FOR FREE
- 46% of all Google searches have local intent
- GBP listings get 5x more views than your website
- Reviews on GBP directly influence ad quality and trust
- A well-optimized GBP can generate 50-200 calls/month for free

GBP Optimization Checklist

#ItemImpactTime
1Claim and verify your businessCritical5 min + 1-2 weeks verification
2Complete ALL business information fieldsHigh20 min
3Choose correct primary + secondary categoriesHigh5 min
4Add 20+ high-quality photosHigh30 min
5Write a keyword-rich business descriptionMedium15 min
6Add all services with descriptionsMedium15 min
7Set accurate hours (including holiday hours)Medium5 min
8Enable messagingMedium2 min
9Add products/menu (if applicable)Medium20 min
10Post weekly updates (offers, news, events)Medium10 min/week
11Respond to ALL reviews within 24 hoursHigh5 min per review
12Ask happy customers for reviewsHighOngoing

Review Strategy

MetricTargetWhy
Star rating4.5+Below 4.0, you lose significant clicks
Review count50+ (100+ ideal)Volume signals popularity and trust
Review recencyNew reviews every weekStale reviews signal inactive business
Response rate100%Responding shows you care (positive AND negative)
Review keywordsMention services + cityHelps ranking for those terms

How to get more reviews:

  1. Ask at the point of happiness (right after successful service)
  2. Send a follow-up text/email with direct Google review link
  3. Make it easy: "Leave us a Google review" with QR code at register/reception
  4. Respond to every review with a personalized thank you
  5. Never buy fake reviews (Google detects and penalizes)

Part 5: Conversion Tracking for Local

What Counts as a Conversion

Conversion TypeValueHow to Track
Phone callsHighestCall extensions (Google), call tracking number
Form submissionsHighThank-you page conversion event
Direction requestsMediumGoogle Maps directions click tracking
Booking/appointmentHighestBooking confirmation page event
WhatsApp/Messenger clicksMediumClick tracking event
Store visitsMediumGoogle estimated store visits (larger businesses only)

Simple Tracking Setup (Minimum Viable)

If you do nothing else, set up these 3 things:

  1. Google Ads call tracking: Enable call extensions with Google forwarding number. Google tracks calls of 60+ seconds as conversions automatically.

  2. Form submission tracking: Add a Google Ads conversion tag on your "Thank You" page (or use GTM to track form submissions).

  3. GA4 with Google Ads linking: Link GA4 to Google Ads to see which keywords drive form submissions.

Use google_ads_run_gaql to check conversion setup:

SELECT
  conversion_action.name,
  conversion_action.type,
  conversion_action.status,
  metrics.conversions,
  metrics.all_conversions
FROM conversion_action
WHERE conversion_action.status = 'ENABLED'

Part 6: Budget Management

Monthly Budget Planning

Monthly budget: €1,000

Fixed costs:
  Tool/software: €0 (Google Ads + Meta are free to use)
  Domain/hosting: N/A (already paying)

Variable ad spend:
  Google Ads: €700 (€23/day)
  Meta Ads: €300 (€10/day)

Expected results (conservative estimates):
  Google clicks: 200-400/month (€1.75-3.50 CPC)
  Google conversions: 20-40 leads (10% conversion rate)
  Meta reach: 15,000-30,000 people/month
  Meta leads: 15-30 leads (from lead forms)

  Total estimated leads: 35-70/month
  Cost per lead: €14-29

When to Increase Budget

SignalActionHow Much
Impression share < 50% (Google Search)You're losing half of searches to competitorsIncrease 20-30%
All leads converting to customersDemand exceeds capacity? Scale when readyIncrease 10-20%
Seasonal peak approachingRamp up 2-4 weeks before busy seasonIncrease 30-50%
New competitor entering marketDefend your positionIncrease 15-25%
Budget maxes out by 2 PM dailyMissing afternoon/evening searchesIncrease until budget lasts all day

When NOT to Increase Budget

SignalIssueFix First
Leads not converting to customersSales/follow-up problem, not ad problemFix response time, follow-up process
High bounce rate on landing pageWebsite problem, not ad problemImprove landing page
CPC rising but conversions flatTargeting or relevance issueOptimize keywords, improve ad relevance
Competitors undercutting on pricePricing problemAdjust positioning, highlight value

Part 7: DIY vs Hiring an Agency

Decision Framework

DIY if:
  ✓ Budget under €500/month (agency fees eat the budget)
  ✓ Simple service area (1 city, 1-2 services)
  ✓ You have 2-4 hours/month to manage
  ✓ You're willing to learn the basics
  ✓ You can use tools like Ad Superpowers MCP for guidance

Hire an agency if:
  ✓ Budget over €2,000/month (agency fee becomes worthwhile)
  ✓ Multiple locations or service areas
  ✓ Complex service offering (many campaigns needed)
  ✓ No time or interest in learning ad platforms
  ✓ You need multi-platform strategy (Google + Meta + more)

Consider a freelancer if:
  ✓ Budget €500-2,000/month
  ✓ Need help with setup, then can maintain
  ✓ Want monthly check-ins without full management fees

Typical Agency Fee Structures for Local

ModelCostWhat You Get
% of ad spend15-25% of monthly spendFull management, reporting
Flat monthly fee€300-800/monthFixed scope management
Setup + hourly€500-1,500 setup + €50-100/hrInitial build + as-needed
Performance-basedCost per lead markupPay for results only

Part 8: Common Local Advertising Mistakes

The 10 Most Expensive Mistakes

#MistakeCost ImpactFix
1Targeting "Presence or interest" instead of "Presence only"20-40% wasted spendChange Google Ads location setting
2No negative keywords15-30% wasted on irrelevant clicksAdd negatives day one (see list above)
3Too broad an areaPaying for clicks 50+ km awayTighten radius to actual service area
4No call trackingCan't measure #1 conversion typeEnable Google call forwarding
5Not responding to leads quickly50-80% of leads go cold after 1 hourSet up mobile notifications, call back within 15 min
6Ignoring Google Business ProfileMissing free leads from MapsOptimize fully (see checklist)
7Stock photos in Meta adsLow engagement, looks genericUse real photos of your business
8No reviews strategyCompetitors with more reviews winAsk every happy customer
9Running ads to homepageVisitors can't find what they searched forSend to specific service page
10Set and forgetPerformance degrades over time30 min/week management (see below)

Part 9: Monthly Management Checklist (30 Min/Week)

Week 1 (15 minutes)

TaskWhat to DoTool
Check spend pacingIs budget on track for the month?Google Ads dashboard, google_ads_run_gaql
Review conversionsHow many calls/leads this week?Google Ads conversions, meta_get_insights
Check search termsAny irrelevant searches to add as negatives?Google Ads Search Terms report

Week 2 (15 minutes)

TaskWhat to DoTool
Review ad performanceWhich ads have lowest CTR? Pause or replace.google_ads_run_gaql, meta_get_insights
Check Google reviewsRespond to any new reviewsGoogle Business Profile
Post GBP updateShare a photo, offer, or updateGoogle Business Profile

Week 3 (15 minutes)

TaskWhat to DoTool
Check competitor adsAre competitors running new offers?Google Ads Auction Insights, Meta Ad Library
Review geographic performanceAny locations wasting budget?Google Ads Location report
Test one new adWrite a new ad variationGoogle Ads or Meta

Week 4 (30 minutes — Monthly Review)

TaskWhat to DoTool
Monthly performance summarySpend, leads, cost per lead, trendsAll platforms
Compare to last monthImproving or declining?Historical data
Adjust budget if neededShift spend to what's workingPlatform budgets
Plan next monthAny seasonal adjustments? Promotions?Calendar
Refresh creativesNew photos, new offers, new copyMeta Ads, Google Ads

Quick Health Check GAQL

Use google_ads_run_gaql for a fast local account health check:

SELECT
  campaign.name,
  metrics.impressions,
  metrics.clicks,
  metrics.conversions,
  metrics.cost_micros,
  metrics.search_impression_share,
  metrics.average_cpc
FROM campaign
WHERE campaign.status = 'ENABLED'
  AND segments.date DURING LAST_7_DAYS
ORDER BY metrics.cost_micros DESC

Use meta_get_insights for Meta performance:

  • Level: campaign
  • Fields: impressions, reach, clicks, actions (lead, messaging_conversation_started)
  • Date range: last 7 days

Part 10: Seasonal Strategy for Local

Seasonal Calendar Template

MonthMany Local BusinessesAction
JanuaryNew Year resolutions, fresh startPromote new customer specials
FebruaryValentine's Day (restaurants, gifts, beauty)Valentine's promotions 2 weeks before
March-AprilSpring cleaning, garden, home improvementRamp up home services ads
MayMother's Day (beauty, restaurants, gifts)Targeted promotions
June-AugustSummer slowdown for some, peak for othersAdjust budget to your seasonality
SeptemberBack-to-school, fall prepHome maintenance, back-to-routine services
OctoberPre-holiday prepStart mentioning holiday services
NovemberBlack Friday (even for local — offer deals)Run limited-time offers
DecemberHoliday season, end-of-yearGift cards, holiday hours, year-end specials

Budget Adjustment by Season

Busy season: Increase budget 30-50%, maximize impression share
Normal season: Standard budget, steady optimization
Slow season: Reduce budget 20-30%, focus on efficiency and testing
Transition: Ramp up 2-4 weeks before busy season starts

Quick Start: Launch Local Ads in 1 Hour

For the business owner who wants to start TODAY:

Minute 0-15: Google Ads Setup
  1. Create Google Ads account
  2. Link to Google Business Profile
  3. Create 1 Search campaign with your core service + city
  4. Add 5-10 keywords (service + city, service + near me)
  5. Add negative keywords (jobs, free, diy, how to)
  6. Set location to your service radius (Presence only!)
  7. Enable call extension with your phone number
  8. Set budget to €10/day
  9. Launch

Minute 15-30: Meta Ads Setup
  1. Create Meta Business page (or use existing)
  2. Create 1 Lead Generation campaign
  3. Target: 15 km radius, age 25-65
  4. Upload 3-5 real photos of your business/work
  5. Write ad: [Your service] in [City]. [Key benefit]. Book now.
  6. Create lead form: Name, Phone, Service Needed
  7. Set budget to €5/day
  8. Launch

Minute 30-45: Google Business Profile
  1. Claim/verify your listing
  2. Add all business info
  3. Upload 10+ photos
  4. Ask 5 recent customers to leave a review today

Minute 45-60: Tracking
  1. Enable Google Ads call tracking
  2. Set up email notifications for Meta leads
  3. Create a simple spreadsheet to track leads

DONE. Revisit in 1 week to check results.

Other skills for the same job

Different authors, same problem. Matched on the words in the skill name, across every library in the catalogue except this one.

Need help setting it up?

This page tells you what local-business-advertising-guide does and what it needs. Cheetah builds the agent setup it runs inside: data, CRM, sequencing and the guardrails.

Book a call →

The directory stays free. There is nothing gated behind this.