Google Ads Transparency Scraper — Competitor Ads & Creatives
Pricing
from $1.50 / 1,000 ad scrapeds
Google Ads Transparency Scraper — Competitor Ads & Creatives
Scrape Google Ads Transparency Center: all ads of any advertiser or website with format, first/last shown dates, countries, ad text, images and YouTube videos.
Pricing
from $1.50 / 1,000 ad scrapeds
Rating
0.0
(0)
Developer
Trevor Ortega
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
Scrape the public Google Ads Transparency Center (adstransparency.google.com): every ad a competitor runs on Google Search, YouTube, Display, Shopping, Maps and Play. Search by advertiser name, advertiser ID (AR…), website (all advertisers that run ads for a domain) or paste a Transparency Center URL. Filter by country, date range, format (text, image, video) and platform.
You get one row per ad creative: creative and advertiser IDs, advertiser name, country and verification, format, first and last shown, number of days shown, the ad image or preview link, and the ad text of classic text and shopping ads. Turn on Include ad details for the full picture: headline, description, call to action, destination URL, images or the YouTube video, every variant, and every country where the ad ran with first/last shown dates and impression ranges per platform (plus EU targeting and political ad spend where Google publishes them).
No Google account, no login, no API key.
What data does Google Ads Transparency Scraper extract?
| Field | Example | Notes |
|---|---|---|
creativeId | CR01820856573459693569 | Google's ID of the ad creative |
advertiserId, advertiserName | AR16735076323512287233, Nike, Inc. | The verified advertiser |
advertiserCountry, advertiserLegalName, advertiserVerified | US, Nike, Inc., true | "Based in", legal name and identity verification |
format | TEXT, IMAGE, VIDEO | Ad format as Google classifies it |
firstShown, lastShown | 2023-11-17T01:09:13Z, 2026-10-11T22:53:25Z | When Google first and last showed the ad (UTC) |
daysShown | 879 | Number of days the ad was shown |
headline, description, displayUrl, sitelinks | Nike® Official Site - The Latest Jordan 6 | Text ads. Classic text ads: always; others with Include ad details |
productTitle, productPrice, productCurrency, productSeller, merchant | 114.99, GBP | Shopping ads |
imageUrl, imageWidth, imageHeight | https://tpc.googlesyndication.com/archive/simgad/... | Image ads, and text ads Google archived as an image |
previewUrl, previewType | https://displayads-formats.googleusercontent.com/ads/preview/content.js?... | Google's preview of the ad (script / image) |
domain | nike.com | The website matched in website searches |
impressions, spend, politicalRegions | {"lower": 35000, "upper": 40000}, {"currency": "USD", "lower": 700, "upper": 800} | Political ads |
creativeUrl | https://adstransparency.google.com/advertiser/AR.../creative/CR... | The ad's page in the Transparency Center |
searchInput, region | nike.com, US | Which search produced the ad, and the country filter used |
With Include ad details (one extra request per ad, separate details event):
| Field | Notes |
|---|---|
headline, description, callToAction, displayUrl, destinationUrl, adTexts | Text from the ad preview: responsive search, display, local and video ads (adTexts = all texts of the ad in order) |
imageUrls, youtubeVideoId, youtubeUrl | Images of display ads; the YouTube video of video ads |
variations, variationCount | Every variant of the ad (preview link or image; text of classic variants) |
regions | Each country where the ad ran: firstShown, lastShown, impressions range and platforms (Search, YouTube, Shopping, Maps, Play) with their impression ranges, as Google publishes them |
regionCodes | The same countries as a list (["DE", "PL", "TR"]) |
euImpressions, usImpressions | Totals for the EU (Digital Services Act data) and for US political ads |
targeting | Which targeting the advertiser used (demographics, locations, contextual signals, topics, customer lists: included/excluded); for political ads the targeted and excluded locations by name |
payerName, categoryId, containsSyntheticMedia | Who paid (EU ads), Google's ad category, AI-generated media flag |
How to scrape a competitor's Google ads
- Enter the competitor in Advertiser names or websites (
Nikeornike.com), in Advertiser IDs (AR16735076323512287233, from the advertiser's page URL) or paste a Transparency Center URL. - Optionally pick Country, Ad format, Platforms and a date range (Shown from / until, e.g.
30 days). - Set Max ads, turn on Include ad details if you need the ad texts, YouTube videos and per-country data, and run. Download the results as JSON, CSV or Excel, or read them through the API.
A website search returns the ads of every advertiser that runs ads for that domain (for nike.com: Nike, Inc., Nike Retail BV, Nike's agencies and resellers). A name is matched to the advertiser with that exact name that has the most ads ("nike" → Nike, Inc., 9,000-10,000 ads); use the AR ID when you want one specific advertiser account.
Input example
{"searchTerms": ["nike.com"],"advertiserIds": ["AR16735076323512287233"],"startUrls": [{ "url": "https://adstransparency.google.com/advertiser/AR16735076323512287233?region=US&format=VIDEO&platform=YOUTUBE" }],"country": "US","mediaType": "all","dateFrom": "30 days","includeDetails": true,"maxItems": 200,"maxItemsPerQuery": 100}
Output example
A Nike search ad found with "searchTerms": ["nike"], country US and Include ad details on (run JAYQ0IaEcC2jk8d7l; variants and texts shortened):
{"creativeId": "CR08772523512997871617","advertiserId": "AR16735076323512287233","advertiserName": "Nike, Inc.","advertiserVerified": true,"advertiserCountry": "US","advertiserLegalName": "Nike, Inc.","format": "TEXT","firstShown": "2023-11-16T22:45:12Z","lastShown": "2026-10-11T23:18:42Z","daysShown": 900,"imageUrl": "https://tpc.googlesyndication.com/archive/simgad/9947846129517650742","imageWidth": 348,"imageHeight": 322,"previewType": "image","headline": "Nike® Official Site","description": "Shop your style with the latest jumpsuits, rompers & bodysuits from Nike®. Gear up now.","displayUrl": "nike.com","adTexts": ["Nike® Official Site", "Shop your style with the latest jumpsuits, rompers & bodysuits from Nike®. Gear up now.", "Nike Factory Store - Kansas City", "1803 Village West Parkway Space M-125"],"variationCount": 5,"variations": [{ "previewType": "image", "imageUrl": "https://tpc.googlesyndication.com/archive/simgad/9947846129517650742", "imageWidth": 348, "imageHeight": 322 },{ "previewType": "image", "imageUrl": "https://tpc.googlesyndication.com/archive/simgad/3041684539231921355", "imageWidth": 364, "imageHeight": 354 }],"regions": [{ "country": "US", "lastShown": "2026-09-01" }],"regionCodes": ["US"],"payerName": "Nike, Inc.","creativeUrl": "https://adstransparency.google.com/advertiser/AR16735076323512287233/creative/CR08772523512997871617?region=US","searchInput": "nike","region": "US"}
An EU ad with details carries per-country data like this:
"regions": [{"country": "DE", "firstShown": "2024-06-12", "lastShown": "2026-10-11","impressions": { "lower": 45000, "upper": 50000 },"platforms": [{ "platform": "SEARCH", "impressions": { "lower": 25000, "upper": 30000 } },{ "platform": "YOUTUBE", "impressions": { "lower": 15000, "upper": 20000 } }]}],"targeting": { "demographics": { "included": true, "excluded": false }, "locations": { "included": true, "excluded": true } }
Monitor changes on a schedule
Turn on Only new or changed items to track a competitor's new ads: the Actor remembers which ads earlier runs of the same input returned and outputs only ads it has not seen before (with Also report ads shown again, also known ads whose last-shown time moved, i.e. ads still running). Ads already seen are dropped before anything is saved, so they are not charged (nor are their details fetched). Save the input as a task, for example a competitor's advertiser ID with country US and Max ads 200, then add a Schedule to it in Apify Console (Schedules → Create new, daily) and connect a webhook, Slack or Google Sheets integration to get the new ads. Every output ad carries changeType (new or changed); changed ones carry previousValues with the old lastShown. The Transparency Center lists the most recently active ads first, so keep Max ads above the number of ads the advertiser runs at the same time. Use Monitoring key to keep several schedules on the same search separate.
Does it work without login or an API key?
Yes. The Transparency Center is a public site that anyone can browse without an account, and Google offers no API for it. The Actor reads it the same way the site does, through Apify's ordinary datacenter proxy: no cookies, no CAPTCHA solving, no residential proxy. If a request fails, it is retried on another IP.
Can I get the text of every ad?
Classic text ads and shopping ads carry their text in the preview link, so you get headline, description, display URL, sitelinks or product data in every row at no extra cost. Responsive search ads, display, local and video ads are assembled by Google's previewer; turn on Include ad details and the Actor opens the preview once per ad to read headline, description, call to action, destination URL, images and the YouTube video. Many text ads are archived by Google only as a picture of the ad: for those you get the image URL (imageUrl), and details add any variant that has text.
How much does it cost to scrape the Google Ads Transparency Center?
You pay per ad saved ($1.50 per 1,000 ads), plus $2.00 per 1,000 ads when Include ad details is on, plus the Apify platform usage of your run. Usage is small: one request returns 100 ads (15-75 KB), and one tiny lookup per advertiser fills in its country and legal name. In our tests a run of 100 ads used $0.0008 of platform usage and 13 ads with details $0.0007 (mostly the container start). Details add one small request per ad and, for ads whose text is not in the link, one preview download (50-500 KB).
Proxy note: keep the default datacenter proxy. The Unblocker and residential proxies are not needed.
Legal and data notes
The Actor collects what Google publishes in its public Ads Transparency Center: ads, the verified advertisers that ran them (business names, the country they are based in) and the reach and targeting data Google discloses. It does not log in, does not access anything behind a login, and collects nothing about people who saw the ads. Ad images and videos stay on Google's servers; the dataset holds their links. You are responsible for using the data in line with Google's terms and the laws that apply to you.