Google Ads Transparency Scraper: Search, YouTube & Display Ads
Pricing
from $1.20 / 1,000 ads
Google Ads Transparency Scraper: Search, YouTube & Display Ads
Every ad an advertiser runs on Google, from the Ads Transparency Center: by name, website or id, in any country. Format, first and last shown, days shown, ad image, preview and Transparency link; YouTube links for video ads.
Pricing
from $1.20 / 1,000 ads
Rating
0.0
(0)
Developer
Zaiq
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
See every ad an advertiser runs on Google (Search, YouTube, Display, Shopping and Maps) from Google's public Ads Transparency Center. Give advertisers by name, website or Transparency Center id, optionally only ads shown in one country, and get each ad's format, when it was first and last shown, how many days it ran, an image of the ad, its preview and its Transparency Center link. For video ads it can also find the YouTube link. No login, no API key.
$1.50 per 1,000 ads. Advertisers that aren't found and failed calls are free.
What you can do with it
- Competitor ad research: everything a rival has advertised on Google, newest first, with images of the ads.
- Creative history:
firstShown,lastShownanddaysShownshow which ads ran longest. - Country checks: only the ads shown in the US, the UK, Germany, South Africa or any of 50 countries.
- Video ads: the YouTube video behind a rival's video ads, to watch or transcribe.
- Agency and compliance checks: confirm which ads an advertiser is running, verified by Google.
Input
{"advertisers": ["example.com", "Competitor Name", "AR17766143077581324289"],"country": "US","format": "any","maxAdsPerAdvertiser": 200,"youtubeLinks": true}
advertisers: one per line: a website (all advertisers whose ads point to it), an advertiser's name (the Transparency Center's own match, preferring advertisers verified in your country), an advertiser id (AR...) or a Transparency Center link.country: only ads shown in that country, orANY.format:any,text(search ads),imageorvideo.maxAdsPerAdvertiser: up to 5,000, newest first.youtubeLinks: open each video ad's preview and return its YouTube link when it has one.
Output
One row per ad. An example (advertiser and ids replaced):
{"adId": "CR00000000000000000000","advertiserId": "AR00000000000000000000","advertiserName": "Example, Inc.","advertiserCountry": "US","format": "video","firstShown": "2026-02-17T21:32:21Z","lastShown": "2026-10-12T12:28:16Z","daysShown": 238,"imageUrl": null,"previewUrl": "https://displayads-formats.googleusercontent.com/ads/preview/content.js?...","youtubeUrl": "https://www.youtube.com/watch?v=...","adUrl": "https://adstransparency.google.com/advertiser/AR.../creative/CR...","region": null,"searchQuery": "example.com","scrapedAt": "2026-10-12T13:05:00Z"}
format:text(Google Search ads, which the Transparency Center keeps as an image:imageUrl),imageorvideo.imageUrl: an image of the ad when Google keeps one;previewUrl: Google's preview script for rich and video ads.daysShown: how many days Google showed the ad.- The key-value store record
SUMMARYgives, per advertiser asked for: the advertiser it resolved to, its verified country, Google's own count of its ads (a range, e.g. 1,000-2,000), other advertisers with a similar name, and notes (for example "no ads shown in ZA").
Pricing
- $0.0015 per ad ($1.50 per 1,000 ads), lower on Apify's Scale and Business plans (Store discounts).
- $0.001 per YouTube link found (only with
youtubeLinks; video ads without one are free). - Free: advertisers not found, ads already returned by another of your advertisers, and failed calls.
Use it from code, automations and AI agents
- API:
POST https://api.apify.com/v2/acts/zaiq~google-ads-transparency-scraper/run-sync-get-dataset-items?token=YOUR_TOKENwith the input as JSON returns the ads in one call. The API tab has Python, JavaScript and cURL examples. - Python (
pip install apify-client):
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("zaiq/google-ads-transparency-scraper").call(run_input={"advertisers": ["example.com"],"country": "US","maxAdsPerAdvertiser": 300,})for ad in client.dataset(run["defaultDatasetId"]).iterate_items():print(ad["format"], ad["firstShown"], ad["daysShown"], ad["adUrl"])
- No code: schedule weekly runs to catch rivals' new ads, send rows to Google Sheets, Zapier, Make or n8n from the Integrations tab, and get a webhook when a run finishes.
- AI agents (MCP):
https://mcp.apify.com?tools=zaiq/google-ads-transparency-scraperadds it as a tool to Claude, Cursor or any MCP client.
Also from Zaiq
- Facebook Ads Library Scraper: the same competitor's ads on Facebook, Instagram, Messenger and Threads.
FAQ
Where does the data come from? Google's public Ads Transparency Center (adstransparency.google.com), the same pages anyone can open. No login, no Google Ads account, no API key.
Name, website or id: which should I use? A website is the most complete: it finds every advertiser whose ads lead
to it. A name uses the Transparency Center's own suggestions; when several advertisers share a name, SUMMARY lists
the others so you can pass the right id.
Can I get the text of search ads? Google keeps search ads as images in the Transparency Center, so each text ad
comes with imageUrl, an image of the ad as shown.
How far back does it go? As far as the Transparency Center shows: Google keeps ads shown in roughly the last year for most advertisers, longer for political ads.
Limits
- 40 ads per page from the Transparency Center; a 1,000-ad advertiser takes under a minute (more with
youtubeLinks). - Up to 5,000 ads per advertiser per run.