Google Ads Scraper avatar

Google Ads Scraper

Pricing

Pay per event

Go to Apify Store
Google Ads Scraper

Google Ads Scraper

Scrape Google Ads from the Ads Transparency Center. Search by advertiser name, domain, or ID. Get ad creatives, formats, dates, preview URLs. Pure HTTP, no browser needed. Export to JSON, CSV, Excel.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

1

Bookmarked

80

Total users

51

Monthly active users

13 days ago

Last modified

Share

Scrape ads from the Google Ads Transparency Center at scale. Search by advertiser name, domain, or advertiser ID. Extract ad creatives, formats, date ranges, preview URLs, and images — all via pure HTTP API with no browser overhead. Export to JSON, CSV, Excel, or feed directly into your tools.

🔍 What does Google Ads Scraper do?

This actor searches the Google Ads Transparency Center and extracts structured data from every ad it finds. It uses Google's internal RPC API directly — no browser, no Playwright, no Puppeteer — making it extremely fast and resource-efficient (256 MB memory, ~10–20 seconds per advertiser).

Search for advertisers by name, look up ads by domain, or pass advertiser IDs directly. The actor returns clean, flat records ready for spreadsheets, databases, or any downstream workflow.

👥 Who is Google Ads Scraper for?

  • Digital marketers — Research competitor ad strategies across Google Search, YouTube, and Display Network. See what creatives they run and when.
  • Competitive intelligence teams — Monitor which advertisers are active in your market, track new campaigns, and benchmark ad formats.
  • Brand protection specialists — Detect unauthorized advertisers using your brand name or domain in Google Ads.
  • Media buyers & agencies — Audit competitor ad presence, discover creative inspiration, and report on market activity.
  • Researchers & journalists — Analyze advertising transparency data at scale for reporting and academic research.
  • Ad verification professionals — Verify advertiser identity, check verification status, and track ad history.

⚡ Why use Google Ads Scraper instead of competitors?

FeatureThis actorsilva95gustavo ($30/mo)lexis-solutions ($25/mo)
Pricing$0.001/ad (pay per use)$30/month flat$25/month flat
Search by name
Search by domain
Search by advertiser ID
Region filtering
Memory usage256 MBUnknownUnknown
TechnologyPure HTTP (fastest)Browser-basedBrowser-based
DocumentationFull README + examplesNoneNone

Key advantages:

  • 💰 Pay-per-event pricing — Pay $0.001 per ad scraped instead of $25–30/month. Scrape 100 ads for $0.10. No commitment, no minimums.
  • 🚀 Pure HTTP, no browser — Direct API calls mean 256 MB memory, fast execution, and the cheapest possible compute cost.
  • 🔎 Three search modes — Search by advertiser name, website domain, or direct advertiser ID for maximum flexibility.
  • 🌍 Region filtering — Filter ads shown in a specific country using ISO country codes.
  • 📖 Proper documentation — Competitors have zero documentation. This actor has a full README, code examples, and field descriptions.

📊 What data can you extract?

FieldTypeDescription
advertiserIdstringUnique Google Ads advertiser ID
advertiserNamestringName of the advertiser
isVerifiedbooleanWhether the advertiser is verified by Google
creativeIdstringUnique ID for the specific ad creative
adFormatstringFormat of the ad: Text, Image, or Video
firstShownstringDate the ad was first shown (YYYY-MM-DD)
lastShownstringDate the ad was last shown (YYYY-MM-DD)
previewUrlstringURL to preview the ad on Google Ads Transparency Center
imageUrlstringDirect URL to the ad image (for Image format ads)
regionstringRegion/country where the ad was shown

💰 How much does it cost to scrape Google Ads?

Google Ads Scraper uses pay-per-event pricing. You only pay for what you use — no monthly subscriptions, no minimums.

Charge eventPrice (Bronze)Description
Run started$0.005One-time charge per actor run
Ad scraped$0.001/adPer ad extracted

Volume discounts are available on higher Apify plans:

PlanPer-ad priceDiscount
Free$0.00115
Bronze (Starter)$0.001Baseline
Silver (Scale)$0.0007822% off
Gold (Business)$0.000640% off
Platinum (Enterprise)$0.000460% off
Diamond (Enterprise+)$0.0002872% off

Cost comparison examples:

ScenarioThis actorCompetitors
100 ads/month$0.11$25–30/month
1,000 ads/month$1.01$25–30/month
10,000 ads/month$10.01$25–30/month
25,000 ads/month$25.01$25–30/month

You only break even with subscription scrapers at ~25,000 ads/month. For most use cases, pay-per-event saves 90%+ compared to flat monthly pricing.

🚀 How to scrape Google Ads

  1. Go to Google Ads Scraper on Apify Store.
  2. Click Try for free to open the actor in Apify Console.
  3. Enter advertiser names (e.g., "Nike", "Apple"), domains (e.g., "nike.com"), or advertiser IDs.
  4. Optionally set the region filter and max ads per advertiser.
  5. Click Start and wait for the run to finish.
  6. Download your data as JSON, CSV, Excel, or connect to any integration.

⚙️ Input parameters

ParameterTypeDefaultDescription
searchTermsarray of stringsAdvertiser names to search for (e.g., "Nike", "Apple", "Coca-Cola")
domainsarray of stringsWebsite domains to look up (e.g., "nike.com", "apple.com")
advertiserIdsarray of stringsDirect advertiser IDs (e.g., "AR16735076323512287233")
regionstring"" (all)ISO country code to filter ads by region (e.g., "US", "GB", "DE")
maxAdsinteger100Maximum number of ads to scrape per advertiser (1–1,000)

Tip: You must provide at least one search term, domain, or advertiser ID. You can use all three in a single run — results from all sources are combined into one dataset.

📦 Output example

{
"advertiserId": "AR16735076323512287233",
"advertiserName": "Nike, Inc.",
"isVerified": true,
"creativeId": "CR10938475625184739201",
"adFormat": "Image",
"firstShown": "2026-01-15",
"lastShown": "2026-03-18",
"previewUrl": "https://adstransparency.google.com/advertiser/AR16735076323512287233/creative/CR10938475625184739201",
"imageUrl": "https://tpc.googlesyndication.com/simgad/...",
"region": "US"
}

💡 Tips for best results

  • Use specific names — Searching "Nike" is better than "shoes." Specific advertiser names yield more accurate matches.
  • Search by domain for precision — If you know the advertiser's website, domain search gives exact matches without ambiguity.
  • Use advertiser IDs for repeat monitoring — Once you know the ID, future runs skip the search step and go directly to ad collection.
  • Set region for local insights — Use ISO country codes (US, GB, DE, FR, JP, etc.) to see which ads run in specific markets.
  • Start with low maxAds — Use 20–50 for initial exploration, then increase to 500–1,000 for full audits.
  • Combine search modes — Use names + domains + IDs in one run to cover all angles of a competitive landscape.
  • Schedule regular runs — Set up daily or weekly schedules to track new ad creatives over time.

Use with Claude AI (MCP)

This actor is available as a tool in Claude AI through the Model Context Protocol (MCP). Add it to Claude Desktop, Cursor, Windsurf, or any MCP-compatible client.

Setup for Claude Code

$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/google-ads-scraper"

Setup for Claude Desktop, Cursor, or VS Code

Add this to your MCP config file:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=automation-lab/google-ads-scraper"
}
}
}

Example prompts

  • "Find all Google Ads currently running for Nike in the US and describe their creative formats"
  • "Search the Google Ads Transparency Center for ads by apple.com and show me the most recent ones"
  • "Which advertisers in the fitness industry are running the most ads on Google right now?"

Learn more in the Apify MCP documentation.

🔗 Integrations

Connect Google Ads Scraper to your existing tools:

  • Google Sheets — Automatically export scraped ads to a spreadsheet for team review.
  • Slack — Get notifications when new competitor ads are detected.
  • Airtable — Build a competitive ad library with images and metadata.
  • Zapier / Make / n8n — Trigger downstream workflows when new ads are found.
  • Webhooks — Send results to your own API endpoint for custom processing.
  • Google BigQuery / Snowflake — Load ad data into your data warehouse for trend analysis.

Example workflows

  • Competitor monitoring: Schedule daily runs with competitor advertiser names. Compare new ads against previous runs to spot new campaigns and creative changes.
  • Ad creative research: Search for major brands in your industry to build a library of ad inspiration across Text, Image, and Video formats.
  • Brand protection: Search for your brand name and domain to detect unauthorized advertisers running ads with your trademarks.
  • Market research: Compare the same advertiser's ads across different regions to understand localization strategies.

🤖 Using the Apify API

You can start and retrieve results programmatically using the Apify API.

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('automation-lab/google-ads-scraper').call({
searchTerms: ['Nike'],
region: 'US',
maxAds: 100,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_API_TOKEN')
run = client.actor('automation-lab/google-ads-scraper').call(run_input={
'searchTerms': ['Nike'],
'region': 'US',
'maxAds': 100,
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

cURL

# Start a run
curl -X POST "https://api.apify.com/v2/acts/automation-lab~google-ads-scraper/runs?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchTerms": ["Nike"], "region": "US", "maxAds": 100}'
# Get results (replace DATASET_ID with the actual dataset ID from the run)
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_API_TOKEN"

The Google Ads Transparency Center is a public transparency tool created by Google to provide public access to ads running across Google's advertising platforms. It was launched to meet regulatory requirements and promote ad transparency.

  • The Ads Transparency Center is publicly accessible without any login.
  • All data is intentionally made public by Google for transparency purposes.
  • This actor accesses only publicly available data from the Transparency Center.

Always review and comply with Google's Terms of Service and applicable laws in your jurisdiction before using this actor.

❓ FAQ

Q: How many ads can I scrape per run? Up to 1,000 ads per advertiser (set via maxAds). You can search for multiple advertisers in a single run — each one can return up to your maxAds limit.

Q: What ad formats are supported? The actor extracts Text, Image, and Video ads from the Google Ads Transparency Center.

Q: Can I search by domain? Yes. Enter website domains (e.g., "nike.com") in the domains field. The actor looks up the advertiser associated with that domain and scrapes their ads.

Q: Do I need a Google account? No. The Google Ads Transparency Center is publicly accessible. No login or authentication is needed.

Q: What regions are supported? All countries available in the Google Ads Transparency Center. Use ISO country codes (e.g., "US", "GB", "DE", "FR", "JP", "BR", "IN"). Leave empty to get ads from all regions.

Q: How fast is it? Each advertiser takes approximately 10–20 seconds to process. The actor runs on 256 MB memory with pure HTTP calls — no browser startup overhead.

Q: Why are some fields null? Not all ads have all data. imageUrl is only available for Image format ads. Some newer ads may not yet have lastShown populated.

Q: The actor returned 0 ads. What should I do?

  • Verify the advertiser exists on the Google Ads Transparency Center directly.
  • Try a different search term or check the spelling.
  • If using a domain, make sure the domain is associated with a Google Ads advertiser.

Legality

Scraping publicly available data is generally legal according to the US Court of Appeals ruling (HiQ Labs v. LinkedIn). This actor only accesses publicly available information and does not require authentication. Always review and comply with the target website's Terms of Service before scraping. For personal data, ensure compliance with GDPR, CCPA, and other applicable privacy regulations.

How do I monitor competitor Google Ads campaigns automatically?

To set up ongoing competitive ad intelligence, schedule the scraper to run daily or weekly against your competitor list:

  1. Run the scraper once with competitor names and domains to discover their Google advertiser IDs.
  2. Save those IDs — future runs using advertiserIds skip the search step and go straight to ad collection, making them faster and more reliable.
  3. Schedule daily runs and export results to a database or Google Sheet with a timestamp column.
  4. On each run, compare new creativeId values against your previous dataset to identify new ad creatives.
  5. Track firstShown and lastShown dates to understand campaign cadence — how frequently do competitors rotate creatives? How long do specific ads run?

This workflow reveals competitor ad activity patterns without needing access to their ad accounts. You can detect when a competitor launches a new campaign, tests new messaging, or pulls ads from a region — all from publicly available transparency data.

How can I use Google Ads Transparency data for brand protection?

If competitors or affiliates are running Google Ads using your brand name, trademark, or domain, the Google Ads Transparency Center records those ads publicly. This scraper surfaces them systematically.

Run the scraper with your brand name as a searchTerms entry and your domain in domains. Compare the advertiserName and advertiserId in results against your known authorized partners. Any advertiser not on your approved list that shows ads for your brand terms is a potential trademark violation or unauthorized affiliate.

Set up a weekly scheduled run and configure a Slack or email notification (via Zapier or Make) for any new advertisers that appear in the results. This gives you an automated brand protection monitor without paying for specialized brand safety tools that often charge hundreds of dollars per month.

What is the difference between Google Ads Transparency Center and Google Ads Manager?

The Google Ads Transparency Center is a public-facing tool that shows ads from all advertisers running on Google's network. Anyone can search it without a Google account. It was created for regulatory compliance and public transparency. This is the data source this scraper uses.

Google Ads Manager (formerly Google Ads dashboard) is a private tool for advertisers to manage their own campaigns. It shows your own performance data — impressions, clicks, conversion rates, costs — which is only accessible to the account owner.

Key distinction: the Transparency Center shows you what your competitors' ads look like, but not how they perform. It shows creative content, date ranges, and formats — not click-through rates or spend. For competitor performance data, you would need third-party ad intelligence platforms that estimate metrics from panel data.

How do I research ad creative strategies across an entire industry?

Use the scraper to build a comprehensive ad creative library for your competitive landscape:

  1. Create a list of 10–20 advertisers in your industry (use competitor names and domains).
  2. Run the scraper with maxAds: 500 per advertiser to capture a broad creative sample.
  3. In the output, separate results by adFormat — Text, Image, and Video ads serve different purposes and should be analyzed separately.
  4. For Image ads, download creatives using the imageUrl field to build a visual swipe file.
  5. For Text ads, analyze the previewUrl pages to study headline and description patterns.
  6. Sort by firstShown and lastShown to identify which creatives have run longest — longevity often signals strong performance.

Filter by region to understand how competitors localize their messaging. Running the same advertiser with region: "US" vs. region: "DE" reveals whether they use different creative strategies in different markets, which can inform your own localization decisions.

Can I track Google Ads activity for advertisers in a specific country?

Yes. Use the region parameter with any ISO country code to filter ads shown in that specific market. For example, region: "GB" returns only ads shown to UK audiences, region: "JP" returns Japan-specific ads.

This is particularly useful for:

  • Market entry research — before entering a new country, see which local and global competitors are actively advertising there and what messaging they use.
  • Regulatory compliance research — different regions may have different ad disclosure requirements. Check what disclosures appear in ads from your industry in each target market.
  • Competitive spend signals — an advertiser who recently expanded ad activity in a new country (visible through firstShown dates) may be signaling a market entry or expansion.

Leave the region field empty to get ads from all regions, which gives you a global view of an advertiser's creative portfolio.