Google Ads Transparency Scraper — Competitor Ads by Brand
Pricing
$1.50 / 1,000 ads
Google Ads Transparency Scraper — Competitor Ads by Brand
Scrape the Google Ads Transparency Center: every ad a brand, website or advertiser ID runs on Google Search, YouTube, Display and Shopping. Format, first and last shown, ad images, preview links, countries and impression ranges. Filter by country and format. $1.50 per 1,000 ads.
Pricing
$1.50 / 1,000 ads
Rating
0.0
(0)
Developer
Technical Dost Solutions
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Security
Limited permissionsShare
Google Ads Transparency Scraper gets every ad an advertiser runs on Google (Search, YouTube, Display, Shopping, Maps) from the public Google Ads Transparency Center. Enter a brand name, website domain, advertiser ID or Transparency Center link and get each ad's format (text, image, video), first and last shown dates, ad image or preview link, the advertiser's legal name, and the countries it ran in with impression ranges and dates. Filter by country and format. No login, no API key.
What you get
- Search by brand name (e.g. Booking.com), website domain (e.g. nike.com, finds every advertiser buying ads for that site), advertiser ID (AR...) or a Transparency Center URL.
- Format, first shown and last shown for every ad, so you see what is running now and how long creatives last.
- Ad image URL (archived text and image ads) or interactive preview link (image and video ads) and the Transparency Center link for each ad.
- Per-country reach: the countries each ad ran in, first and last shown dates per country and impression ranges where Google publishes them.
- Advertiser legal name and number of creative variants.
- Filter by country (US, GB, DE, IN ... or anywhere) and by format (text, image, video).
- Handles Google's rate limits by rotating residential IPs automatically.
How to use Google Ads Transparency Scraper
- Add Advertisers: brand names, domains (e.g.
nike.com), advertiser IDs (AR...) or Transparency Center links. - Optionally set Country (e.g.
US) and Ad format. - Set Max ads per advertiser and keep Ad details on for countries and impressions.
- Run and export to JSON, CSV or Excel, or schedule it weekly to catch new creatives.
Input example
{"advertisers": ["nike.com","Booking.com","AR02934798844673654785"],"region": "US","adFormat": "video","maxAdsPerAdvertiser": 200,"includeDetails": true}
All fields are described in the Input tab.
Output example
{"advertiserId": "AR02934798844673654785","advertiserName": "Booking.com","creativeId": "CR14428101641955704833","format": "TEXT","firstShown": "2021-10-25T07:00:00.000Z","lastShown": "2026-11-03T17:57:37.000Z","imageUrl": "https://tpc.googlesyndication.com/archive/simgad/11314906390289214151","previewUrl": null,"adUrl": "https://adstransparency.google.com/advertiser/AR02934798844673654785/creative/CR14428101641955704833","advertiserLegalName": "Booking.com B.V.","variantCount": 1,"variantImageUrls": ["https://tpc.googlesyndication.com/archive/simgad/11314906390289214151"],"regionCount": 9,"regions": [{"country": "AT","firstShown": null,"lastShown": "2026-10-27","impressionsMin": null,"impressionsMax": 1000},{"country": "DE","firstShown": null,"lastShown": "2026-11-03","impressionsMin": 40000,"impressionsMax": 45000},{"country": "BE","firstShown": null,"lastShown": "2026-11-02","impressionsMin": null,"impressionsMax": 1000}],"regionFilter": "anywhere","searchInput": "booking.com","scrapedAt": "2026-11-03T18:23:17.758Z"}
Output fields
| Field | Description |
|---|---|
advertiserId | Advertiser ID (AR...). |
advertiserName | Advertiser name. |
creativeId | Ad (creative) ID (CR...). |
format | TEXT, IMAGE or VIDEO. |
firstShown | First shown (ISO 8601). |
lastShown | Last shown (ISO 8601). |
imageUrl | Archived ad image. |
previewUrl | Interactive preview script URL. |
adUrl | Ad page in the Transparency Center. |
advertiserLegalName | Verified legal name. |
variantCount | Number of creative variants. |
variantImageUrls | Images of all variants. |
regionCount | Countries the ad ran in. |
regions | Countries with firstShown, lastShown, impressionsMin, impressionsMax. |
regionFilter | Country filter used. |
searchInput | Your input that found it. |
scrapedAt | When scraped (ISO 8601). |
Export results as JSON, CSV, Excel, XML or HTML, or read them with the API.
Use cases
- Competitor ad research: see every ad a rival runs, how long they keep them and where.
- Agencies: creative inspiration, pitch decks and client competitor reports.
- Brand protection: find advertisers bidding on your domain or brand.
- Market entry: which countries a competitor advertises in, and how hard (impression ranges).
- AI agents: give an assistant a live view of a company's Google advertising.
How much does Google Ads Transparency Scraper cost?
This Actor uses pay-per-event pricing: $0.0015 per ad ($1.5 per 1,000). Platform usage is included. There is no start fee and no extra charge for details. Advertisers with no ads cost nothing.
Set Maximum cost per run in the run options to cap your spend; the Actor stops when the limit is reached.
Use Google Ads Transparency Scraper with AI agents (MCP)
Give Claude, ChatGPT, Cursor or any MCP client this Actor as a tool through the hosted Apify MCP server:
$claude mcp add --transport http apify "https://mcp.apify.com/?tools=technicaldost/google-ads-transparency-scraper-advertiser-ads" --header "Authorization: Bearer YOUR_APIFY_TOKEN"
Or in a JSON MCP config:
{"mcpServers": {"apify": {"url": "https://mcp.apify.com/?tools=technicaldost/google-ads-transparency-scraper-advertiser-ads","headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }}}}
The tool is named technicaldost--google-ads-transparency-scraper-advertiser-ads. Ask your agent, for example, to "run Google Ads Transparency Scraper with {"advertisers": ["nike.com", "Booking.com", "AR02934798844673654785"], "region": "US", "adFormat": "video", "maxAdsPerAdvertiser": 200, "includeDetails": true}".
Run Google Ads Transparency Scraper via API
curl -X POST "https://api.apify.com/v2/acts/technicaldost~google-ads-transparency-scraper-advertiser-ads/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"advertisers": ["nike.com", "Booking.com", "AR02934798844673654785"], "region": "US", "adFormat": "video", "maxAdsPerAdvertiser": 200, "includeDetails": true}'
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("technicaldost/google-ads-transparency-scraper-advertiser-ads").call(run_input={"advertisers": ["nike.com", "Booking.com", "AR02934798844673654785"], "region": "US", "adFormat": "video", "maxAdsPerAdvertiser": 200, "includeDetails": True})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });const run = await client.actor('technicaldost/google-ads-transparency-scraper-advertiser-ads').call({"advertisers": ["nike.com", "Booking.com", "AR02934798844673654785"], "region": "US", "adFormat": "video", "maxAdsPerAdvertiser": 200, "includeDetails": true});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Integrations
Schedule runs (daily, hourly) in Apify Console and send results to Google Sheets, Slack, Make, Zapier, n8n, Airbyte or your own webhook.
FAQ
Where does the data come from?
From Google's public Ads Transparency Center (adstransparency.google.com), the same data its website shows. No login.
Name, domain or ID: which should I use?
A domain returns ads from every advertiser promoting that site. A name picks the advertiser with the most ads matching that name (turn on All matching advertisers to get up to 10). An advertiser ID (AR..., in the Transparency Center URL) is the most precise.
Does it include the ad text?
Text and many image ads come as an archived image (imageUrl) exactly as Google shows them. Image and video ads that Google renders interactively come as a previewUrl plus the Transparency Center link (adUrl).
What are impressions?
For some countries (notably the EU, under the DSA), Google publishes impression ranges per ad. Other countries show dates only, so impressions are null there.
How is it priced?
$1.50 per 1,000 ads, details included. No start fee.
Is it legal to scrape this data?
The Actor collects publicly available information only and does not log in or bypass access controls. Use the data in line with the website's terms and the laws that apply to you, especially when processing personal data.
Related Actors
More tools from the same developer that work well together with this one:
- Facebook Ads Library | No Login: Scrape public ads from the Meta Ad Library by keyword, country and ad type.
- Google Search Results Scraper: Get organic search results for any keyword: title, URL, snippet and position.
- Google Trends Scraper — Interest, Regions & Related Queries: Google Trends data as JSON: interest over time, interest by country/state/city and related queries (top and rising) for any keywords.