Google Ads Scraper — Live Search Sponsored Ads avatar

Google Ads Scraper — Live Search Sponsored Ads

Pricing

from $5.00 / 1,000 sponsored ads

Go to Apify Store
Google Ads Scraper — Live Search Sponsored Ads

Google Ads Scraper — Live Search Sponsored Ads

Scrape LIVE Google Search sponsored ads by keyword, location, and device. One row per paid ad. Not Transparency Center.

Pricing

from $5.00 / 1,000 sponsored ads

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

3 days ago

Last modified

Share

Scrape the LIVE sponsored (paid) ads that appear on Google Search for any keyword, in any country, on desktop or mobile. You get one row per ad: advertiser, ad position, headline, ad copy, display URL, landing URL, and sitelinks. Built for PPC competitive monitoring — see exactly which advertisers are bidding on your keywords, what copy they run, and where they rank.

This is NOT a Google Ads Transparency Center scraper. It reads the real-time Search results page, not the advertiser creative archive. If you want an advertiser's historical creative library (impressions, run dates), use a Transparency Center scraper instead. This actor answers a different question: "What ads show right now for keyword X in location Y?"

What does Google Ads Scraper do?

It runs your keywords through Google Search using residential proxies, finds the sponsored ad blocks at the top and bottom of the results page, and extracts each ad as a structured record. Because it runs on the Apify platform you get API access, scheduling, proxy rotation, monitoring, and one-click export to JSON, CSV, or Excel.

Typical uses:

  • PPC competitive intelligence — track which competitors bid on your money keywords and how their copy changes.
  • Ad copy research — collect live headlines and descriptions before writing your own.
  • Share-of-voice monitoring — count how often each advertiser appears across a keyword set.
  • Geo / device comparison — see how ads differ between cities or between desktop and mobile.
  • Agency reporting — schedule daily runs and feed ad data into dashboards.

Why use Google Ads Scraper?

BenefitDetail
Ad-first outputEvery row is one ad, not a generic SERP dump you have to filter.
Real-timeReads the live results page — what searchers actually see today.
Geo + device targetingCountry (gl), language (hl), city (uule), desktop or mobile.
Cost controlHard per-keyword ad cap; you see the max cost before the run starts.
MCP-readyDesigned to be called by AI agents (Claude, ChatGPT) via Apify MCP.
ReliableSerpApi-backed engine handles Google's anti-bot for you; honest failure on block (no silent empty runs). Works out of the box — no key required.

How to use Google Ads Scraper

  1. Open the actor and go to the Input tab.
  2. Add your keywords (one per line), e.g. car insurance, crm software.
  3. Pick a country, language, and optionally a city for local ad targeting.
  4. Choose desktop or mobile.
  5. Set Max ads per keyword to cap cost.
  6. Click Start. Download results from the Output tab in JSON, CSV, or Excel.

Input

FieldTypeDescription
queriesarrayKeywords to search (required).
countryCodeenumTwo-letter country code (gl), default us.
languageCodeenumTwo-letter language code (hl), default en.
locationNamestringOptional City,Region,Country for city-level ad targeting.
deviceenumdesktop or mobile.
maxAdsPerQueryintegerCost cap — max ads saved/billed per keyword (default 20).
maxPagesPerQueryintegerResult pages per keyword (default 1).
includeBottomAdsbooleanAlso capture bottom-of-page ads (default true).
engineenumauto (recommended), serpapi, or browser. Leave on auto.
serpApiKeystringOptional — bring your own SerpApi key. Blank = built-in managed key.

Input example

{
"queries": ["car insurance", "project management software"],
"countryCode": "us",
"languageCode": "en",
"locationName": "New York,New York,United States",
"device": "desktop",
"maxAdsPerQuery": 20,
"includeBottomAds": true
}

Output

One record per sponsored ad. You can download the dataset in JSON, HTML, CSV, or Excel.

{
"query": "car insurance",
"advertiser": "progressive.com",
"title": "Progressive® Car Insurance — Get a Free Quote Online",
"description": "Switch & save an average of $750. Get your fast, free quote today.",
"displayUrl": "progressive.com/car-insurance",
"finalUrl": "https://www.progressive.com/auto/",
"position": "top",
"rankInBlock": 1,
"sitelinks": [
{ "title": "Get a Quote", "url": "https://www.progressive.com/auto/quote/" },
{ "title": "Bundle & Save", "url": "https://www.progressive.com/bundle/" }
],
"extensions": [],
"phone": null,
"rating": null,
"countryCode": "us",
"languageCode": "en",
"device": "desktop",
"locationName": "New York,New York,United States",
"page": 1,
"searchUrl": "https://www.google.com/search?q=car+insurance&gl=us&hl=en",
"scrapedAt": "2026-05-30T12:00:00.000Z"
}

Data fields

FieldDescription
queryThe keyword that produced this ad.
advertiserAdvertiser domain.
titleAd headline.
descriptionAd body copy.
displayUrlThe display (vanity) URL shown in the ad.
finalUrlResolved landing-page URL.
positiontop or bottom ad block.
rankInBlock1-based rank within its block.
sitelinksArray of {title, url} ad sitelinks.
extensionsCallout / structured-snippet extensions when present.
phoneCall-extension phone number, if shown.
ratingSeller rating, if shown.
device, countryCode, languageCode, locationNameTargeting context.
scrapedAtISO 8601 timestamp.

How much does it cost to scrape Google ads?

Pricing is pay-per-event:

  • $0.00005 per actor start.
  • $0.008 per sponsored ad extracted (capped per keyword by maxAdsPerQuery).

A typical Google SERP shows 3–7 ads, so one keyword usually costs $0.024–$0.056. Your maximum cost is always keywords × maxAdsPerQuery × $0.008, shown in the run status before billing begins. Both per-event and usage-based billing are available.

Tips

  • Lower maxAdsPerQuery to tighten cost; ads beyond the cap are skipped, not billed.
  • Set locationName for local-intent keywords (plumber near me) — ads are highly geo-specific.
  • Compare device: desktop vs mobile — ad counts and advertisers often differ.
  • Schedule daily runs to track competitor ad-copy changes over time.

FAQ, disclaimer, and support

Does every keyword have ads? No. Informational queries (e.g. "how does rain form") show zero ads, and even commercial keywords serve ads probabilistically — Google may show 6 ads on one scrape and 0 a minute later. The run always completes and reports which keywords had none; you are never billed for ads that did not appear.

How does it stay reliable? Google Search ads are rendered by JavaScript and Google aggressively blocks automated browsers. This actor uses a managed SerpApi engine that handles anti-bot for you, so it works out of the box with no setup. Advanced users can switch engine to browser (tries a stealth browser first, falls back to the API) or supply their own SerpApi key via serpApiKey.

Legal: This actor collects only publicly visible Google Search ad content. You are responsible for complying with Google's Terms of Service and applicable laws in your jurisdiction. Do not use the data for unlawful purposes.

Support: Found a parsing gap or a markup change? Open an issue on the actor's Issues tab. Custom field requests and higher-volume needs welcome.