Google Local Services Ads Scraper
Pricing
Pay per usage
Google Local Services Ads Scraper
Extracts Google Local Services advertisers when displayed and returns clearly labeled, non-sponsored service businesses from Google's local section as a fallback.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Search API
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 days ago
Last modified
Categories
Share
Extracts Google Local Services advertisers when displayed and returns clearly labeled, non-sponsored service businesses from Google's local section as a fallback.
What this Actor collects
The Actor converts displayed Google Local Services advertisers into clean business records and, when no ad unit is present, can return clearly labeled non-sponsored local-section businesses as fallback records.
- Uses the input limits and filters below to control the crawl.
- Stores source-backed fields defined by the 26-field dataset schema.
- Omits optional fields when the source does not expose a value instead of writing nulls or fabricated placeholders.
Use cases
- Local lead research
- Location and category monitoring
- Business-directory enrichment
Input
Provide input in JSON. Fields marked required must be supplied. The Default / example column shows a schema default when one exists; otherwise it shows a documented prefill or fixture value.
| Field | Type | Required | Default / example | Description |
|---|---|---|---|---|
query | string | Yes | "plumber near me" | The local service query (e.g. 'plumber near me', 'electrician London', 'dentist') |
location | string | No | "Austin, TX" | City, region, or postal location used to localize service providers (for example, Austin, TX). |
maxItems | integer | No | 10 | Maximum number of ad results to retrieve |
gl | string | No | "us" | Two-letter country code (e.g. 'us', 'uk', 'in') |
hl | string | No | "en" | Two-letter language code (e.g. 'en', 'es', 'de') |
proxyConfiguration | object | No | {"useApifyProxy":true,"apifyProxyGroups":["GOOGLE_SERP"]} | Proxy settings for the scraper. GOOGLE_SERP is optimized for Google Search HTML; residential proxies remain available for browser-based fallback testing. |
Example input
{"query": "plumber","maxItems": 5,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["GOOGLE_SERP"],"countryCode": "US"},"location": "Austin, TX","gl": "us","hl": "en"}
Output
The default dataset contains one item per Local Services advertiser or explicitly labeled fallback business. The following are the most useful fields; ad, verification, contact, rating, and fallback fields depend on what Google displays.
| Field | Type | Description |
|---|---|---|
position | integer | Ad Position |
businessName | string | Business Name |
category | string | Category |
rating | number | Rating |
reviewCount | integer | Review Count |
phone | string | Phone |
isSponsored | boolean | Sponsored Result |
sourceSection | string | Google Source Section |
location | string | Location |
searchQuery | string | Search Query |
scrapedAt | string | Scraped At |
type | string | Type |
website | string | Website |
adPosition | string | Ad Position |
badge | string | Badge |
isGuaranteed | boolean | Google Guaranteed |
Example dataset item
This compact example is taken from local Actor storage. Long text and nested collections are shortened for documentation only.
{"position": 1,"businessName": "Radiant Plumbing, Air Conditioning, & Electrical","category": "Plumber","rating": 4.8,"reviewCount": 17000,"phone": "(512) 690-4935","isSponsored": false,"sourceSection": "google-local-pack","location": "Austin, TX","searchQuery": "plumber Austin, TX","scrapedAt": "2026-07-25T21:39:01.679Z","type": "local-service-business"}