APIEndpoint 3 of 40SERP / Paid Ads / Local Services Ads

Local Services Ads API

The ad layer of the local SERP.

Google Local Services Ads (LSAs) are the paid ad surface most rank trackers miss. Google Guaranteed and Screened badges sit above the local 3-pack on home-services searches. Your competitors are running LSAs; you're blind to them unless you scrape. This endpoint returns every business with a Google Guaranteed or Screened badge, their rating, phone, and years in business. No login, no dashboard required — call it from your agent. Know who's paying for leads in your market.

POST /v1/serp/lsa · 1 credit / call

POST /v1/serp/local-services-ads3 of 6 LSAs
"plumber austin tx" · ads with Google Guaranteed

ABC Plumbing

GOOGLE GUARANTEED
4.9 (540) · 12 yrs in business

Free estimate

Roto-Rooter Austin

GOOGLE GUARANTEED
4.7 (312) · 25 yrs in business

$89 service call

Smith Legal Group

GOOGLE SCREENED
5 (87) · 8 yrs in business
▌ Ask your agent

These prompts are the new LSA monitoring workflow.

Connect Local SEO Data as an MCP server once (60 seconds, below). Then your agent monitors LSA placements for you. Replace bracketed markets with your own.

LSA presence monitoring

Pull Google Guaranteed and Screened ads for plumber in Austin, TX. Show me business names, ratings, phone numbers, and years in business. Who's paying for leads in my market?

Competitor LSA tracking

For HVAC service in Denver, CO, pull the full LSA results. Extract which of my top 5 competitors are running Google Guaranteed ads. Which ones aren't? That's a gap.

Multi-market LSA audit

Pull LSA results for electrician across all 12 client markets. Flag which markets have fewer than 3 Google Guaranteed ads — that's less competitive and easier to enter.

New entrant detection

Fetch LSA results for roof repair in Houston, TX daily. Compare to last week. Alert me if any new business got the Google Guaranteed badge — that's a new competitor with Google's backing.

Real response

What you get back

Live response from POST /v1/serp/lsa for plumbers in Austin, TX.

response · application/json~2-4s · 1 credit
{
  "status": "success",
  "credits_used": 1,
  "results": [
    {
      "position": 1,
      "business_name": "ABC Plumbing Austin",
      "badge": "Google Guaranteed",
      "rating": 4.9,
      "reviews_count": 287,
      "phone": "(512) 555-0142",
      "years_in_business": 18
    },
    {
      "position": 2,
      "business_name": "Texas Rooter & Plumbing",
      "badge": "Google Screened",
      "rating": 4.7,
      "reviews_count": 152,
      "phone": "(512) 555-0267",
      "years_in_business": 9
    },
    {
      "position": 3,
      "business_name": "Emergency Plumbing Pros",
      "badge": "Google Guaranteed",
      "rating": 4.8,
      "reviews_count": 421,
      "phone": "(512) 555-0354",
      "years_in_business": 14
    }
  ],
  "search_metadata": {
    "keyword": "plumber",
    "location": "Austin, TX",
    "total_results": 8
  }
}
Returns

Everything you need to track LSA competition

Per LSA result

Business name, badge type, rating, reviews, phone, years in business

Every business with Google Guaranteed or Screened status. Badge type tells you which passed Google's stricter screening (Guaranteed) vs basic verification (Screened). Years in business is a confidence signal.

Badge status

Google Guaranteed vs Google Screened distinction

Google Guaranteed means the business passed stricter vetting and offers a money-back guarantee on work (until Nov 2025). Google Screened means basic verification only. The difference signals commitment and competitiveness.

Ranking signals

Position, rating, review count

LSA position is determined by Google's algorithm, not just bid. Higher-rated businesses with more reviews rank higher. This data is pure competitive intelligence.

Contact data

Phone number and historical tenure

Phone is the core call-to-action in LSAs. Years in business tells you which players are established vs new entrants. Use for competitive benchmarking.

Built for

What AI-native operators ship with this

Multi-market LSA competitive analysis

Agencies pull LSA results across all client keywords and markets on a schedule. Agent flags which competitors have Google Guaranteed vs Screened status, identifies markets with low LSA saturation, and surfaces new entrants. No dashboard required.

For agencies

Market-entry feasibility audits

Before expanding into a new market, pull LSA results for target keywords. If only 2 competitors are running Google Guaranteed ads, the market is less competitive than a market with 8. Use this as a real signal for market entry decisions.

For consultants

LSA budget and bid strategy intelligence

Which competitors are running LSAs and which aren't? If your top competitor doesn't have a Google Guaranteed badge but you do, you own a unique trust signal. If they do and you don't, you're at a disadvantage. Use LSA presence as a strategic audit.

Competitive Ads API

Home-services vertical benchmarking

Extract LSA results for 50 home-services keywords across 10 markets. Analyze which service types (plumbing, HVAC, electrical, roofing) have the most LSA saturation. Identify underserved niches where LSA competition is thin.

Local Pack API
vs. the alternatives

Why not just use Google's official LSA dashboard?

Google's Local Services dashboard lets you manage *your own* LSA account. For competitor monitoring and market research, you need a third-party endpoint. Here's how the options compare.

ApproachCompetitor visibilityAPI-readyCostFreshness
Google Local Services dashboard (official)Your account onlyNo, dashboard UI onlyPay-per-lead modelReal-time (live)
Google Ads API (official)Your campaigns onlyYes, but limited reportingNo cost, but requires spendReal-time
Manual Google Search scrapingYes, but unreliableNoFree but labor-intensiveOutdated fast
SerpApi Local Services endpointYesYes, REST only$0.008–0.015 per resultMinutes-hours
DataForSEO LSA dataYesYes, REST only$0.01–0.02 per callHours-days
Local SEO Data LSA APIUnlimited competitor trackingNative MCP + REST, agent-first$0.005 per callMinutes from live SERP
Connect in 60 seconds

Use it from your agent

Two integration surfaces: MCP for clients that speak MCP, REST API for everything else.

Direct MCP integration

Drop-in support in Claude Desktop, OpenClaw, Hermes Agent, and any MCP-aware client.

Add to your client's MCP config (e.g. claude_desktop_config.json):

{
  "mcpServers": {
    "localseodata": {
      "url": "https://mcp.localseodata.com",
      "headers": {
        "Authorization": "Bearer sk_live_..."
      }
    }
  }
}

REST API

For Perplexity Computer, ChatGPT Custom GPTs, custom agents, and any platform that calls REST endpoints directly.

Base URL:

api.localseodata.com

See the docs for endpoint reference and auth.

Quickstart

Your first call in three lines

Same call, three syntaxes. The `keyword` parameter is the service type (e.g., 'plumber', 'hvac', 'electrician'). The `location` is required in 'City, State' format. That's it. One call returns all Google Guaranteed and Screened results for that keyword-location pair.

terminal · curl
POST /v1/serp/lsa
curl -X POST https://api.localseodata.com/v1/serp/lsa \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "keyword": "plumber",
    "location": "Austin, TX"
  }'
Pricing for this endpoint

$0.005 per call

Pay-as-you-go starts at $5. Monthly plans from $19. Funds never expire. No seat fees.

Free tier
10,000
LSA calls on signup (50 credits)
Starter · $19/mo
3,800
calls/mo at this rate
Per-call cost
$0.005
per call, any keyword-location
FAQ

Common questions

What is the Local Services Ads API?+
A REST endpoint that returns all businesses displaying the Google Guaranteed or Google Screened badge for any service keyword and location. One call returns position, business name, badge type, rating, review count, phone number, and years in business. The endpoint is POST /v1/serp/lsa; one call costs 1 credit (~$0.005). This is the data layer underneath competitor monitoring, market-entry analysis, and LSA saturation audits.
What is the difference between Google Guaranteed and Google Screened?+
Google Guaranteed means the business passed stricter vetting and offers a money-back guarantee on work (the Guaranteed guarantee was deprecated in Nov 2025, but the badge distinction remains). Google Screened means the business passed basic background and license verification only. Google Guaranteed is more prestigious and signals a higher confidence threshold. Both badges appear in Local Services Ads results at the top of the SERP for home-services keywords. The badge type tells you which tier of screening each competitor cleared.
Which categories and keywords show LSA results?+
LSAs appear for home-services categories: plumbing, HVAC, electrical, roofing, carpentry, lawn care, house cleaning, handyman, locksmith, and other skilled trades. Google's LSA availability varies by market and category — not every market or service type has LSA results available. When they are available, they appear above the local 3-pack on Google Search results for service keywords like 'plumber near me' or 'emergency plumber Austin'.
How do I authenticate with the LSA API?+
Authentication uses a Bearer token. Generate an API key from your Local SEO Data dashboard (Settings → API Keys), then include it as Authorization: Bearer sk_live_... in your request headers. The same key works for MCP integration (in your claude_desktop_config.json) and direct REST calls. No OAuth flow, no project setup. There are no per-endpoint quotas — your only ceiling is your credit balance, so a daily 12-market sweep uses the same rate-limit pattern as a one-off call. See the authentication docs for key rotation and security best practices.
Where does LSA data come from?+
Local Services Ads data is aggregated from DataForSEO, our upstream provider for most SERP endpoints. DataForSEO operates a large distributed scraping infrastructure and returns results that reflect Google's live SERP at the moment of the call. LSA results refresh within minutes of changes on Google Search. Because we're transparent about provenance — you should know where your data comes from if you're running real client work — we name DataForSEO explicitly.
How fresh is the LSA API data?+
Results reflect the Google SERP at the moment of the call. For competitive monitoring workflows, most operators call daily at a fixed time to build a clean time-series. Weekly calls work for trend analysis and market research. Monthly calls work for reporting baselines. Because pricing is per-call (not per-seat or per-location), there's no penalty for frequency beyond actual usage.
Can I track competitor LSA placements?+
Yes — and this is the core reason third-party LSA APIs exist. Google's official Local Services dashboard only shows *your own* account and campaigns. Our endpoint accepts any keyword and location — your competitors, your prospects, new markets you're considering, any service. No verification, no ownership requirement. This is what makes competitor monitoring, market-entry analysis, and multi-market audits actually work.
Can my AI agent use this directly?+
Yes. Two integration paths. MCP: add Local SEO Data to your claude_desktop_config.json (or any MCP-aware client — OpenClaw, Hermes Agent, etc.) and the agent calls this endpoint from any prompt. REST: any agent that can make HTTPS calls — ChatGPT Custom GPTs, Perplexity Computer, custom Python agents — hits api.localseodata.com directly with your Bearer token. You don't write integration code. You write the prompt.
How does this compare to SerpApi and DataForSEO?+
Both SerpApi and DataForSEO offer LSA data endpoints. SerpApi charges $0.008–0.015 per result returned; DataForSEO charges $0.01–0.02 per call. We charge a flat $0.005 per call, regardless of result count. Neither offers native MCP integration — integration requires REST calls or custom code. We offer MCP as a first-class integration path, which eliminates integration overhead when running agent workflows. For one-off queries, per-result pricing may be cheaper; for batching 50+ calls per week through an agent, flat pricing + MCP wins.
What can I learn from LSA data?+
LSA presence tells you which competitors are investing in pay-per-lead Google ads — a major signal of market competitiveness and investment. If your top competitor has a Google Guaranteed badge and you don't, they're signaling higher confidence and vetting. If a market has only 2 competitors with LSAs, it's less saturated than one with 8. Years in business filters for established operators. Rating and review count are direct quality signals. Use LSA data to inform market-entry decisions, budget allocation, and competitive positioning.
What changed in 2026 that made this category necessary?+
Three things. First, most legacy rank trackers (Local Falcon, BrightLocal, Whitespark) don't track LSAs at all — they focus on the local 3-pack and organic rankings. LSAs are a blind spot for most operators. Second, Google consolidated the Google Guaranteed, Google Screened, and License Verified badges into a single 'Google Verified' badge (Oct 2025), making the surface cleaner but still requiring dedicated monitoring. Third, MCP became standard in late 2024 and mainstream through 2025, making it practical for agents to call specialized endpoints without bespoke integration code. The moment agents became the primary consumer of SEO data, LSA monitoring became a discrete API category — because tracking LSAs manually in Google Search is tedious, and a dashboard login isn't part of an agent's workflow.

Track who's paying for leads in your market.

50 free credits on signup. Your first LSA pull happens through your agent, not Google Search.

▌ MADE FOR THE NEW LOCAL SEO STACK