Ad Transparency Search: Google, Meta and TikTok Ads by Domain avatar

Ad Transparency Search: Google, Meta and TikTok Ads by Domain

Pricing

Pay per event

Go to Apify Store
Ad Transparency Search: Google, Meta and TikTok Ads by Domain

Ad Transparency Search: Google, Meta and TikTok Ads by Domain

Search the Google Ads Transparency Center, Meta Ad Library and TikTok Ad Library by advertiser domain or name. Every ad comes back in one normalized table: dates, format, text, media, landing page, regions and library link.

Pricing

Pay per event

Rating

0.0

(0)

Developer

Hay Equipos

Hay Equipos

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

20 hours ago

Last modified

Share

Type a brand's website or name once. Get back every ad it runs in the Google Ads Transparency Center, the Meta Ad Library (Facebook, Instagram, Messenger, Audience Network) and the TikTok Ad Library, in one clean table with the same columns for every source.

Built for agencies, DTC brands and competitive intelligence teams who are tired of searching three ad libraries by hand and pasting the results into a spreadsheet.

What it does

  • Takes a list of advertiser domains (nike.com) or names (Spotify).
  • Finds the matching advertiser in each library.
  • Returns each ad as one row: library, advertiser, ad ID, first and last shown dates, format, headline, ad text, media links, landing page, regions, platforms and a direct link to the ad in the public library.
  • Optional filters: one country and a date window.
  • Writes a SUMMARY record to the key value store that shows, for each advertiser, how many ads each library returned and whether a match was found.

Data sources, and how they are used

This actor only reads public transparency libraries, the pages that Google, Meta and TikTok publish so that anyone can see who is advertising. It never logs in, never uses cookies from an account, and never collects personal data about people. Requests are spaced out politely and retried with backoff when a library is busy.

LibraryCoverageHow it is read
Google Ads Transparency CenterSearch, Display, YouTube and Shopping ads, worldwideThe public JSON endpoints behind adstransparency.google.com, no browser needed
Meta Ad LibraryFacebook, Instagram, Messenger and Audience Network ads, worldwideThe public logged out Ad Library page, opened in a normal browser
TikTok Ad LibraryAds shown in the EU, EEA, UK, Switzerland and Turkey only (TikTok does not publish other regions)The public logged out library.tiktok.com page, opened in a normal browser
LinkedIn Ad LibraryNot included.See the FAQ

Input

FieldWhat it means
advertisersRequired. Domains or names, one per line. A Google advertiser ID (AR plus digits) or a Meta page ID (digits only) also works.
sourcesAny of google, meta, tiktok. Empty means all three.
countryOptional two letter code such as US, GB or DE. Empty means all countries.
dateFrom, dateToOptional. Keeps ads whose shown period overlaps this window.
maxAdsPerSourceCap per advertiser per library. Default 50, maximum 1000.
strictMatchOn by default. Keeps only ads whose advertiser name contains your term as a whole word, or, for a domain on Meta, whose link points to that domain.
googleDetailsOff by default. Adds every country a Google ad ran in, plus the YouTube link for video ads. One extra request per Google ad.

Example input:

{
"advertisers": ["nike.com", "Spotify", "canva.com"],
"sources": ["google", "meta", "tiktok"],
"country": "DE",
"dateFrom": "2026-08-01",
"maxAdsPerSource": 20
}

Output

One row per ad. The same fields for every library:

{
"source": "meta",
"advertiserQuery": "shopify.com",
"advertiserName": "Shopify",
"advertiserId": "20409006880",
"adId": "1238141341576372",
"firstShown": "2026-01-13",
"lastShown": "2026-08-09",
"isActive": false,
"formats": ["dco"],
"title": "Get going and keep growing",
"text": "When it's time to start your business, it's time for Shopify.",
"mediaUrls": ["https://scontent.xx.fbcdn.net/..."],
"landingUrl": "https://www.shopify.com/free-trial",
"regions": ["US"],
"platforms": ["facebook", "instagram", "messenger"],
"libraryUrl": "https://www.facebook.com/ads/library/?id=1238141341576372",
"extra": { "pageUrl": "https://www.facebook.com/shopify/", "ctaText": "Sign up", "caption": "shopify.com" },
"scrapedAt": "2026-09-27T05:51:15.669Z"
}

A Google row:

{
"source": "google",
"advertiserQuery": "nike.com",
"advertiserName": "Nike Retail BV",
"advertiserId": "AR18378488041124659201",
"adId": "CR18038581305662242817",
"firstShown": "2021-10-25",
"lastShown": "2026-09-27",
"formats": ["text"],
"mediaUrls": ["https://tpc.googlesyndication.com/archive/simgad/6057781660182448484"],
"regions": ["ES", "PT", "NL"],
"platforms": ["google"],
"libraryUrl": "https://adstransparency.google.com/advertiser/AR18378488041124659201/creative/CR18038581305662242817",
"extra": { "advertiserDomain": "nike.com", "daysShown": 1758 }
}

What each library fills in:

FieldGoogleMetaTikTok
First and last shownyesyesyes
Formattext, image, videoimage, video, carousel, dpa, dcovideo, carousel, image
Headline and ad textshown inside the image snapshot, not as textyesyes (caption)
Media URLsimage snapshot, YouTube link with googleDetailsimages and videosvideo and cover image
Landing URLnot published by Googleyesnot published in the list view
Regionsyour country, or every country with googleDetailscountries when Meta lists them, else your countryyour country
Active flagnoyesno

Pricing

Pay per event, no subscription:

  • $1.50 per 1,000 ads returned ($0.0015 per ad).
  • $0.01 per advertiser resolved, charged once per advertiser that is found in at least one library.

Example: 10 competitors with 50 ads from each of three libraries is 1,500 ads, so $2.25 plus $0.10, which is $2.35. You can cap spend with maxAdsPerSource and with the run's maximum charge setting; the actor stops cleanly when that limit is reached.

Limits

  • TikTok covers Europe, the UK, Switzerland and Turkey only. That is TikTok's own rule for its library. If you set another country, TikTok is skipped and the SUMMARY says so.
  • LinkedIn is not included. Its ad library pages sit behind a bot wall that refuses visitors who are not logged in, and this actor does not log in or try to get around such walls.
  • Google does not publish ad text or landing pages in its transparency data. Text ads come as an image snapshot of the ad.
  • Searching by domain on Google returns every advertiser whose ads point at that domain, which can include resellers and agencies. Check advertiserName.
  • Searching by name on TikTok matches legal entity names, so nike can match several entities. Use a fuller name, such as NIKE Retail B.V., to narrow it.
  • Media links from Meta and TikTok are signed by those platforms and expire after some hours or days. Download what you need soon after the run.
  • Each run opens a browser for Meta and TikTok, so it needs 1 GB of memory. Google alone is light.

FAQ

Is this legal? It reads public transparency libraries that the platforms publish so the public can see ads, while logged out, without an account and without personal data. Courts in the United States have treated logged out collection of public pages differently from collection behind a login (for example Meta v. Bright Data, 2024). This is not legal advice; check the rules that apply to your use.

Why did an advertiser return zero ads in one library? Either it does not advertise there, the country or dates exclude it, or strict matching filtered out ads from other advertisers. Try turning strictMatch off, or search by the exact name the library shows.

Can I give it a Meta page ID or a Google advertiser ID? Yes. A number is treated as a Meta page ID, and AR followed by digits as a Google advertiser ID. That is the most precise way to search.

Do I need a Meta access token or a proxy? No. The actor uses the public logged out pages. A proxy setting exists for special cases but is not needed normally.

How fresh is the data? Every run reads the libraries live.

Something broke. Open an issue on the Issues tab with the input you used. Issues are answered quickly.

This actor is independent and is not affiliated with, endorsed by or sponsored by Google, Meta, TikTok or LinkedIn. Names are used only to describe which public libraries are read.