Google Ads Transparency Scraper — Domain & Advertiser Ads
Pricing
from $0.70 / 1,000 ads
Google Ads Transparency Scraper — Domain & Advertiser Ads
Get the ads of any domain or advertiser from the Google Ads Transparency Center: advertiser name, format, first and last shown dates, days shown, image or preview, political spend and impressions. Many queries per run, $1 per 1,000 ads.
Pricing
from $0.70 / 1,000 ads
Rating
0.0
(0)
Developer
Flowo
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
Google Ads Transparency Scraper — ads by domain, advertiser or political
This actor returns the ads that a domain or an advertiser runs on Google, taken from the public Google Ads Transparency Center. Each row is one ad with its advertiserName, format (text, image or video), firstShown, lastShown, daysShown, an archived imageUrl or a previewUrl, and the Google Ads ids. Political ads add spendMin, spendMax and impressionsMin/impressionsMax ranges. No login and no browser are needed.
What does it do?
You give the actor a list of domains, advertiser ids, Transparency Center URLs or advertiser names, in any mix. It finds the ads of each one on adstransparency.google.com and returns one flat row per ad. You can filter by country, platform (Search, YouTube, Shopping, Maps, Play), format and dates. It can also list all political ads shown in a country. It suits marketers, agencies, ad-intelligence tools, journalists and AI agents.
How to use
- Open the actor in Apify Console and enter one or more values in Domains, advertisers or Transparency Center URLs.
- Optionally set country, platform, format, dates and Max ads per query.
- Switch on Include details for variations, per-country reach and the advertiser's country.
- Click Start, then download the dataset as JSON, CSV or Excel, or read it through the API. AI agents can call the actor through the Apify API or MCP with the same JSON input.
Pricing
The actor uses pay-per-event pricing: $0.001 per ad (one ad event per saved ad), which is $1.00 per 1,000 ads. Details are included at no extra charge. There is no start fee, and queries with no ads cost nothing. An ad found by two queries in the same run is saved and charged once. Higher Apify subscription tiers get a discount (down to $0.0007 per ad). Example: 500 ads cost $0.50.
Input
| Field | Meaning |
|---|---|
queries | Domains, advertiser ids (AR + 20 digits), Transparency Center advertiser/search URLs or advertiser names |
political | Political ads only; needs country; with queries use advertisers, not domains |
country | Two-letter ISO code (UK is accepted as GB); empty = anywhere |
platform | ALL, SEARCH, YOUTUBE, SHOPPING, MAPS, PLAY |
format | ALL, TEXT, IMAGE, VIDEO |
startDate, endDate | YYYY-MM-DD range of when the ads were shown |
maxItemsPerQuery | Ads per query, default 100, no upper cap |
maxItems | Optional cap on the whole run |
includeDetails | Adds variations, countries, per-country reach, advertiser country |
proxyConfiguration | Apify datacenter proxy by default |
{"queries": ["nike.com", "adidas.com"],"country": "DE","platform": "YOUTUBE","maxItemsPerQuery": 200}
Output
One row is one ad. Main fields:
| Field | Description |
|---|---|
creativeId, advertiserId | Transparency Center ids of the ad and the advertiser |
advertiserName | Verified advertiser name |
format | TEXT, IMAGE or VIDEO |
firstShown, lastShown, daysShown | When and for how long the ad was shown |
imageUrl, previewUrl | Archived image or Google preview script |
spendMin, spendMax, currency, regions | Political ads only |
impressionsMin, impressionsMax | Political ads, and EU-served ads with details |
variations, countries, regionStats, advertiserCountry, advertiserLegalName | With includeDetails |
Example item (shortened):
{"url": "https://adstransparency.google.com/advertiser/AR09595561223982678017/creative/CR09949182245287755777?region=anywhere","creativeId": "CR09949182245287755777","advertiserId": "AR09595561223982678017","advertiserName": "M Media Group Pty Ltd","query": "nike.com","queryType": "domain","political": false,"country": null,"domain": "nike.com","format": "VIDEO","firstShown": "2026-10-04T23:20:32.000Z","lastShown": "2026-10-23T17:06:21.000Z","daysShown": 20,"imageUrl": null,"googleCreativeId": "826665934501","googleCustomerId": "7268451689","adGroupId": "204454935567","scrapedAt": "2026-10-23T17:30:09.830Z"}
Use cases
- Competitor ad research: all YouTube or Search ads of several domains in one country.
- Advertiser library: every ad of given advertiser ids or URLs.
- EU reach analysis: with details, impression ranges per EU country and platform.
- Political ads monitoring: political ads in a country since a date, with spend and impression ranges.
- Brand lookup by name: resolve an advertiser by exact name and list its video ads.
Limitations
- Advertiser names are resolved on a best-effort basis (exact name first, then a matching domain). If nothing matches, the query returns no ads and a warning lists candidates.
- Spend and impression ranges exist only for political ads and, with details, for EU regions; elsewhere they are empty.
impressionsMaxis empty when only a lower bound is published. - Google keeps date-filterable data for about the last 365 days. An
endDateolder than that, a futurestartDate, or anendDatebeforestartDatefails the run. - Single-ad (creative) URLs are not supported; use the advertiser URL or id.
- With
political, domains are not accepted, and a country is required. imageUrlorpreviewUrlcan be empty for some ads. Details make runs slower, as they need one extra request per ad.- Subdomains are searched as given; try the parent domain if you get no ads.
FAQ
Is it legal to scrape the Ads Transparency Center? The data is public and published by Google for transparency. The actor reads only what the site shows, with no login. You are responsible for how you use it and for following applicable laws and Google's terms.
Do I need a login or cookies? No.
How many ads can I get? There is no cap on maxItemsPerQuery; the actor follows pages until the ads end or your limit is reached.
What about a residential proxy? Not needed; the default Apify datacenter proxy is used.
How does it differ from the official BigQuery dataset? This actor needs no Google Cloud project, billing or SQL, and takes domains, ids or URLs directly.
Other actors
Other public data actors from the same author:
- Google Trends Scraper — interest over time, by region and related queries for search terms.
- Apple App Store Reviews API — public App Store reviews and ratings as JSON.
- Firefox Add-ons Reviews Parser — public Firefox add-on ratings and reviews.