Ad Library Aggregator | Google Ads + Meta Ad Library avatar

Ad Library Aggregator | Google Ads + Meta Ad Library

Pricing

from $2.00 / 1,000 ad founds

Go to Apify Store
Ad Library Aggregator | Google Ads + Meta Ad Library

Ad Library Aggregator | Google Ads + Meta Ad Library

Search Google Ads Transparency Center and Meta Ad Library by advertiser, domain or keyword and get one normalized ad schema. Agent-ready JSON. $0.002/ad + $0.02 start.

Pricing

from $2.00 / 1,000 ad founds

Rating

0.0

(0)

Developer

Andok

Andok

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

6 days ago

Last modified

Share

Ad Library Aggregator (Google Ads Transparency + Meta Ad Library)

Pull public ads for any advertiser, domain or keyword from the Google Ads Transparency Center and the Meta Ad Library and get them back in a single normalized schema. Use it for competitor research, creative swipe files, agency pitch prep, brand monitoring and agent workflows that need "what ads is this company running right now?" as clean JSON.

Sources in v1

SourceHow it worksNotes
Google Ads Transparency CenterPublic RPC used by the Transparency website. Search by advertiser name, domain (nike.com) or advertiser ID (AR...).No login or key required. Region filter supported.
Meta Ad LibraryOfficial Ad Library API when you provide metaAccessToken. Without a token the Actor tries the public HTML as a best effort.Public HTML is normally login gated, so expect a structured error row without a token.
LinkedIn Ad LibraryDeferredNot part of v1.

Input

FieldRequiredDescription
advertisersone ofNames, domains, Google advertiser IDs or numeric Facebook Page IDs
searchTermsone ofKeywords for Meta (also tried as advertiser names on Google)
sourcesnogoogle, meta (default: both)
countrynoTwo-letter code, default US
maxAdsPerQuerynoCap per query and source (1 to 1000, default 50)
metaAccessTokennoMeta Ad Library API token, strongly recommended
metaActiveStatusnoALL, ACTIVE, INACTIVE
{
"sources": ["google", "meta"],
"advertisers": ["nike.com"],
"searchTerms": ["running shoes"],
"country": "US",
"maxAdsPerQuery": 50,
"metaAccessToken": "EAAB..."
}

Normalized output

Every ad has the same fields regardless of platform:

{
"record_type": "ad",
"platform": "google",
"query": "nike.com",
"ad_id": "CR06104121578226712577",
"advertiser": "Nike Retail BV",
"advertiser_id": "AR18378488041124659201",
"creative_text": null,
"creative_format": "image",
"image_url": "https://tpc.googlesyndication.com/archive/simgad/14523556093465143668",
"landing_url": "https://nike.com",
"first_seen": "2025-10-22T15:13:15.000Z",
"last_seen": "2026-10-19T01:35:42.000Z",
"url": "https://adstransparency.google.com/advertiser/AR.../creative/CR...?region=US",
"region": "US"
}

If a source fails, you get a row with record_type: "error" and an error message instead of a crashed run. Error rows are never charged.

Pricing and cost math

  • Actor start: $0.02
  • Ad found: $0.002 per unique ad returned

Example: 200 ads across Google and Meta cost 200 x $0.002 + $0.02 = $0.42. Use maxAdsPerQuery to cap spend, and set a maximum total charge on the run for a hard limit.

Platform specifics and limitations

  • Google: text and video creatives are rendered client side by Google, so creative_text is null for them and a preview URL is placed in extra.preview_url when available. landing_url is the advertiser domain Google reports, not the exact click-through URL.
  • Meta: the Ad Library API returns ads delivered in the EU and UK plus political and issue ads elsewhere. Commercial ads outside those regions are not publicly exposed by Meta. Create a token in a Meta developer account that has completed Ad Library identity verification.
  • Both sources can rate limit. The Actor retries and backs off, but very large runs may need to be split.
  • Only public ad transparency data is collected. Respect each platform's terms.

Reviews

If this Actor helped, leave a short Store review.