VOOZH about

URL: https://apify.com/alkausari_mujahid/google-ads-transparency-scraper

โ‡ฑ Google Ads Transparency Scraper ยท Apify


Pricing

from $12.00 / 1,000 results

Go to Apify Store

Google Ads Transparency Scraper

Designed for marketers, researchers, and business intelligence teams, this efficient tool scans a provided list of websites to determine which ones have ever run Google Adsโ€”whether in the past or currentlyโ€”by leveraging data from the Google Ads Transparency Center.

Pricing

from $12.00 / 1,000 results

Rating

0.0

(0)

Developer

๐Ÿ‘ Alkausari M

Alkausari M

Maintained by Community

Actor stats

2

Bookmarked

193

Total users

53

Monthly active users

1.1 hours

Issues response

10 days ago

Last modified

Share

Overview

This Apify Actor quickly checks a list of website domains to determine whether they have ever run Google Ads โ€” either currently active or at any point in the past.

It uses publicly available data from the official Google Ads Transparency Center
โ†’ https://adstransparency.google.com/

Primary use cases

  • Competitor advertising intelligence
  • Lead generation for digital marketing agencies
  • Market & trend analysis
  • High-volume domain screening (100,000+ domains possible)

Performance

  • Reliable batches of up to 1,000 domains per run
  • Scales easily to very large lists via multiple executions
  • Built with Playwright for stable browser automation
  • Residential proxy support included (strongly recommended for >200 domains)

Key Features

  • Batch processing of 1,000 domains per run
  • Clear yes/no result + optional metadata per domain
  • Ad count, last shown date, ad format, and direct link per domain
  • Structured output (JSON, CSV, Excel compatible)
  • Automatic retries and error handling
  • Optional Apify residential proxies for high success rate
  • Compliant with public data access guidelines

How to Run the Actor

  1. Go to your Apify Console โ†’ find or open this Actor
  2. Click Try for free or Run
  3. Switch to the Input tab
  4. Paste your JSON configuration (see examples below)
  5. Click Start
  6. Monitor progress in the run log
  7. When finished โ†’ go to Storage โ†’ Dataset โ†’ download results

Input Configuration

Provide input as a JSON object or paste a list of domains.

Minimal working example

{
"domains":[
"apple.com",
"tesla.com",
"shopify.com",
"kars4kids.org",
"columbusfoundation.org"
]
}

Region

By default the Actor reports ads from Anywhere (all regions combined). To check a specific country, set the region field โ€” it's a dropdown of every region Google's Transparency Center supports, selected by name in the Console:

{
"domains":["apple.com"],
"region":"US"
}

Ad counts, the last-shown date, and the ad format can differ from one region to another, so pick the market you care about. Leave it as anywhere for a global view.

adsPageLoadDelay Tuning Guide

If ad details such as last run date or format are missing from the output, the results page may not have finished rendering before the scraper read it. Increase this value until data is consistently extracted.

Connection SpeedRecommended Value
Fast (Less Costly)1500 โ€“ 2000 ms
Slow (Stable)2000 โ€“ 3500 ms
Very Slow (Higher Cost)3500 โ€“ 5000 ms

Domain Input Notes

  • Domains are case-insensitive โ€” Kars4kids.Org and kars4kids.org are treated identically.
  • Leading www. is stripped before matching, so www.example.com and example.com resolve to the same entry.
  • Duplicate domains in the list are processed individually and will produce duplicate rows in the output. Deduplicate your input list beforehand if needed.
  • If Google's autocomplete returns no suggestions for a domain, or no suggestion exactly matches the input domain, the domain is recorded as ads_ever: "No" and processing moves on.

Output

Results are saved to the default Apify Dataset, one record per domain. The dataset can be exported as JSON, CSV, Excel, or XML from the Apify Console.

Output preview (dataset view)

DomainRan Ads?Ad CountLast ShownAd FormatAds PageError
apple.comYes~70KJun 9, 2026Textโ€ฆ/advertiser/AR1836โ€ฆ?region=USnull
tesla.comYes~2KJun 9, 2026Videoโ€ฆ/advertiser/AR1782โ€ฆ?region=USnull
shopify.comYes~10KJun 9, 2026Textโ€ฆ/advertiser/AR0162โ€ฆ?region=USnull
kars4kids.orgYes~500Jun 9, 2026Textโ€ฆ/advertiser/AR1546โ€ฆ?region=USnull
columbusfoundation.orgYes10Jun 9, 2026Textโ€ฆ/advertiser/AR1796โ€ฆ?region=USnull

Ads Page links are shortened here for readability โ€” the dataset stores the full URLs.

Output (JSON view)

[
{
"domain":"apple.com",
"ads_ever":"Yes",
"adsCount":"~300K",
"date_of_last_running":"Apr 24, 2026",
"type_of_ad":"Video",
"ads_link":"https://adstransparency.google.com/advertiser/AR12345678/creative/CR98765432?authuser=0&region=anywhere",
"error":null
},
{
"domain":"unknowndomain.com",
"ads_ever":"No",
"adsCount":null,
"date_of_last_running":null,
"type_of_ad":null,
"ads_link":null,
"error":null
}
]

Data Fields

FieldDescription
domainThe input domain that was checked.
ads_ever"Yes" if the domain has run Google Ads, "No" if confirmed none, null if the run errored.
adsCountAd count as shown on the site (e.g. "~300K", "1,432"). null if none.
date_of_last_runningWhen the most recent ad was last shown (e.g. "Apr 24, 2026").
type_of_adFormat of the most recent ad (e.g. "Video", "Image", "Text").
ads_linkDirect URL to the domain's ad detail on the Transparency Center.
errorError message if the domain could not be scraped, otherwise null.

Processing Large Lists

A single run processes its domains one at a time โ€” this keeps the scraper stable and avoids triggering Google's CAPTCHA. To check a very large list faster, don't put everything in one run; instead split the work across multiple runs that execute in parallel using Apify Tasks. No code required.

How to set it up

  1. Split your list into batches โ€” e.g. 10,000 domains into 10 batches of 1,000 (smaller batches finish sooner and are easier to retry).
  2. Create a Task per batch โ€” on the Actor page click Create task (or Actor โ†’ โ‹ฎ โ†’ Create task). In each task's Input tab, paste that batch's domains, pick the region, and Save.
  3. Start them together โ€” open each task and click Start (or start them via the API/Console). They run as independent, concurrent runs, so 10 tasks of 1,000 finish in roughly the time one batch of 1,000 takes.
  4. Collect the results โ€” each run writes to its own dataset. Download and merge them, or use the API to push all runs into a single named dataset.

Tips

  • Test first. Run one task with a small maxDomainsPerRun to gauge speed and cost before launching all batches.
  • Mind your plan's limits. How many runs execute at once is bounded by your Apify plan's max concurrent runs and available memory. Start with a few parallel tasks and scale up.
  • Schedule recurring work. For an ongoing workload (e.g. 10,000/month), give each task a Schedule (daily/weekly) so batches run automatically without manual starts.
  • Keep batches reliably sized. A few hundred to ~1,000 domains per task is a good balance between throughput and run stability.

Pricing / Cost Estimation

This Actor uses Playwright with residential proxies, which means each domain costs approximately 1โ€“3 compute units depending on page load time. A run of 100 domains typically costs $0.50โ€“$1.50.

Use maxDomainsPerRun to test with a small batch first and estimate costs before processing a large list.


FAQ, Disclaimers, and Support

Is this legal?
This Actor scrapes publicly available data from Google Ads Transparency Center, which is a public accountability tool provided by Google. No authentication is required, and no private data is accessed. Always comply with Google's Terms of Service and applicable laws in your jurisdiction.

Why is a domain showing "No" when I know it runs ads?
The Google Ads Transparency Center only shows ads that meet a minimum impressions threshold, and there can be a delay before new ads appear. Try increasing adsPageLoadDelay or running again later.

Why do I need residential proxies?
Google blocks requests from datacenter IPs on this site. Residential proxies make requests look like they come from real users. Apify Residential proxies are included and pre-configured by default.

Found a bug or need a custom solution?
Open an issue in the ../../issues or contact the author. Custom solutions for large-scale or enterprise use cases are available on request.

You might also like

Google Ads Transparency Scraper

solidcode/ads-transparency-scraper

[๐Ÿ’ฐ $0.8 / 1K] Affordable and effective | Extract ad creatives from Google Ads Transparency Center. Search by keyword, domain, or advertiser ID with filters for format, platform, region, and date range.

734

5.0

Google Ads Scraper

dz_omar/google-ads-scraper

Extract Google Ads creative data including advertiser info, ad text, images, and landing URLs directly from the Google Ads Transparency Center. Ideal for competitor research, ad analysis, and marketing intelligence.

๐Ÿ‘ User avatar

FlowExtract API

690

5.0

Google Ads Transparency Scraper

devilscrapes/google-ads-transparency

Scrape ad creatives from the Google Ads Transparency Center by advertiser domain or advertiser ID โ€” creative, format, regions, first/last shown, landing URL โ€” export to JSON or CSV. A Google Ads Transparency API alternative and data exporter. You pay only for ads that land.

11

Google Ads Transparency Scraper - Competitor Ads

logiover/google-ads-transparency-scraper

Google Ads Transparency Center API alternative: scrape competitor ads to CSV/JSON. Impressions, spend & regions export, no login or API key.

Google Ads Scraper

automation-lab/google-ads-scraper

Scrape Google Ads from the Ads Transparency Center for competitor ad monitoring. Search by advertiser name, domain, or ID. Get creatives, formats, dates, impressions. Export to JSON, CSV, Excel.

๐Ÿ‘ User avatar

Stas Persiianenko

316

Google Ads Scraper

parseforge/google-ads-scraper

Track any advertiserโ€™s campaigns with our Google Ads Transparency Center scraper. Search by name, domain, or URL with region filtering. Get ad creatives, formats, run dates, targeting data, impressions, and more. Perfect for professionals who need structured ad transparency data fast.

Google Ads Scraper

happitap/google-ads-scraper

Google Ads Scraper - Extract Ads from Google Ads Transparency Center, Extract comprehensive data from Google Ads including text, image, and video advertisements directly from the official Google Ads Transparency Center. Perfect for competitive intelligence, ad research, and market analysis.

Google Ads Scraper

silva95gustavo/google-ads-scraper

Extract up to 400 ads per minute along with text, image and video ads from Google Ads, scraped from the ad library provided by the Google Ads Transparency Center. Gain access to ad details, ad copy, locations and more for a faster competitive edge.

๐Ÿ‘ User avatar

Gustavo Silva (Coherent Paradox)

3.4K

4.9

Google Ads Transparency API

experthasan/google-ads-transparency-api

Powerful Google Ads Transparency Center scraper or google ad library API. Search ads by domain or advertiser ID. Features automatic pagination, format filtering (Image, Video, Text), regional support, and detailed creative metadata extraction. perfect for competitive intelligence and ad research.

๐Ÿ‘ User avatar

Mahmudul Hasan

93