Google Ads Transparency Center Scraper - Ads by Brand avatar

Google Ads Transparency Center Scraper - Ads by Brand

Pricing

from $1.20 / 1,000 ads

Go to Apify Store
Google Ads Transparency Center Scraper - Ads by Brand

Google Ads Transparency Center Scraper - Ads by Brand

Ads from the Google Ads Transparency Center by advertiser name, domain or id: format, first and last shown, regions, impressions where Google shows them, preview, image, video and ad text. Region, date, format and platform filters. New-ad alerts. No login.

Pricing

from $1.20 / 1,000 ads

Rating

0.0

(0)

Developer

Dottti

Dottti

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Security

Limited permissions

Share

Google Ads Transparency Center Scraper

Get the ads any company runs on Google from the public Google Ads Transparency Center. Type a brand name, a website domain or a Google advertiser id. You get one clean row per ad: format, first and last shown dates, the countries it ran in, impression ranges where Google publishes them, the ad page link, the image or preview, and optionally the ad text and YouTube video link.

No login, no cookies, no browser.

Who it is for

  • Marketers and agencies who track what competitors advertise, where and for how long.
  • Brand and compliance teams who watch for new ads that use their name or domain.
  • Researchers and journalists who build archives of an advertiser's ads by country and date.
  • Sales teams who want to know which companies run Google Ads right now.
InputExampleWhat happens
Domain or website linknoon.com, https://www.nike.com/sa/All advertisers whose ads point to that domain.
Advertiser idAR16735076323512287233That advertiser account only.
Transparency Center linkhttps://adstransparency.google.com/advertiser/AR16735076323512287233Same as the id.
Advertiser nameNikeMatched to Google's advertiser list. You get the closest match with the most ads (Nike, Inc.). Raise Advertisers per name to add regional accounts.

Filters: region (any country code such as US, GB, SA, AE, EG, or anywhere), dates shown, format (text, image, video) and Google platform (Search, YouTube, Shopping, Maps, Play).

Empty input runs a short demo: the 10 latest ads that point to nike.com.

Output

One row per ad. Example from a real run (2026-11-04):

{
"type": "ad",
"input": "nike.com",
"matchedBy": "domain",
"advertiserId": "AR18378488041124659201",
"advertiserName": "Nike Retail BV",
"creativeId": "CR11185976386646966273",
"format": "TEXT",
"targetDomain": "nike.com",
"firstShown": "2026-02-02T11:26:29.371Z",
"lastShown": "2026-11-04T09:44:18.183Z",
"daysShown": 240,
"adUrl": "https://adstransparency.google.com/advertiser/AR18378488041124659201/creative/CR11185976386646966273",
"imageUrl": "https://tpc.googlesyndication.com/archive/simgad/7766845036078850100",
"regions": ["FR", "AT", "SI", "IT"],
"regionCount": 4,
"impressionsMin": 3000,
"impressionsMax": 4000,
"impressionPlatforms": [
{ "platform": "SEARCH", "impressionsMin": 3000, "impressionsMax": 4000 },
{ "platform": "SHOPPING", "impressionsMin": 0, "impressionsMax": 1000 }
],
"regionStats": [
{ "region": "FR", "firstShown": "2026-02-03", "lastShown": "2026-10-11", "impressionsMin": 0, "impressionsMax": 1000,
"platforms": [{ "platform": "SEARCH", "impressionsMin": 0, "impressionsMax": 1000 }] },
{ "region": "IT", "firstShown": "2026-02-02", "lastShown": "2026-11-04", "impressionsMin": 3000, "impressionsMax": 4000,
"platforms": [{ "platform": "SHOPPING", "impressionsMin": 0, "impressionsMax": 1000 }, { "platform": "SEARCH", "impressionsMin": 3000, "impressionsMax": 4000 }] }
],
"variationCount": 2,
"videoUrl": null,
"adText": null
}

With Include ad text and video link on, a search ad also gets its text:

{
"adText": "Nike | www.nike.com/shop/running-shoes | Nike® Official Site - Shop Women's Running Shoes | Put a spring in your step with latest Nike® Downshifter running shoes, now at Nike®. Shop... | Nike® Downshifter Shoes",
"textSnippets": ["Nike", "www.nike.com/shop/running-shoes", "Nike® Official Site - Shop Women's Running Shoes", "..."]
}

and a video ad gets "videoUrl": "https://www.youtube.com/watch?v=RZ1MLoOdWcc".

Field notes:

  • format is TEXT, IMAGE or VIDEO, as Google labels it. Many text ads are stored by Google as an image of the ad; for those imageUrl shows the ad and there is no text to read.
  • impressionsMin / impressionsMax are Google's published ranges. Google publishes them for the EU and a few other regions only. Elsewhere they are empty.
  • regions lists the countries Google shows for the ad. regionStats has dates and impressions per country.
  • previewUrl is Google's own preview script for the ad.

Status rows

Every input that returns no ads gets a free row with "type": "status" and a status of no_ads, no_match, invalid_input, blocked, api_error or skipped_cost_limit, plus a plain-English error. A name with no match lists Google's suggestions so you can pick the right one. Status rows are never charged. The run summary (key-value store record RUN_SUMMARY) lists every input, the advertiser accounts a name matched, the number of ads Google says are available, and the requests used.

Alerts for new ads

Turn on Only new ads (alert mode) and schedule the actor (for example daily). The first run delivers the current ads and saves them. Each later run delivers only ads that were not delivered before for the same advertiser and filters. Give each schedule its own Alert list name so lists stay separate. You pay only for new ads.

To schedule: open the actor in Apify Console, save your input as a task, then add a schedule under Schedules. Connect a webhook, email, Slack or Google Sheets integration to get the new rows.

Pricing

Pay per ad delivered. Platform usage is included in the price. Regions, impressions, variations and ad text are included at no extra charge. Status rows are free. You can set a maximum cost per run in Apify Console; the actor stops cleanly at that limit.

Speed and limits

  • About 1 ad per second with regions and impressions on, faster with them off. Turning on ad text adds one larger download per ad.
  • Google lists an advertiser's ads by last shown date, newest first. Max ads per advertiser takes the newest ones.
  • The actor sends one request at a time with a pause between requests. If Google rate-limits the connection, it waits, retries and moves to Apify datacenter, then residential proxy.
  • Data is what the public Transparency Center shows. Google does not publish spend (except for political ads), targeting for most ads, or click data.
  • Political ads with spend data are not covered by this version.
  • Google keeps some text ads only as an archived image. Those rows have imageUrl set and adText empty.