Decision guide
Choose an ad-library API for competitor research
Ten advertisers sent through every third-party ad-library route reachable on one day, across Meta, Google, TikTok and LinkedIn: what each returned, what it cost, how long it took, and which one fits a weekly monitoring agent.
Written for people asking: What are the best APIs for researching competitors across Meta and Google ad libraries?What is the cheapest way to collect competitor ad creatives without a monthly subscription?How do I give my growth agent ad library access without maintaining scrapers?Apify vs ScrapeCreators, which is better for a weekly competitor ad research agent?
For a growth agent that checks what competitors are running each week, the cheapest complete coverage on 15 September 2026 was ScrapeCreators through one credential: Meta by page name (30 ads a page, $0.0019, 4 s), Google by domain (40 a page, $0.0019, 1 s), LinkedIn by company (24 a page, $0.0019, 7 s) and TikTok by advertiser (12 a page, $0.0019, 3 s, but no US coverage because TikTok's library has none). SerpApi returned exactly the same Google ads as ScrapeCreators at eight times the price. Apify's Meta scraper returned the same Meta ads at 50 times the price per page and 28 seconds a call, and adds nothing for commercial advertisers. No route on any platform returns spend for ordinary commercial ads, and only LinkedIn and TikTok return impression ranges, for a fifth of ads and for EU audiences respectively. If you want the four platforms behind one credential with a receipt per call, Treg routes these same ScrapeCreators, Apify and SerpApi endpoints at their list prices; that is our own product and the trade is one key and a bill you can audit, not different data.
What was measured
Ten advertisers, eight B2B software brands and two consumer controls, sent through every ad-library route reachable through Treg on one afternoon: three Meta routes, three Google routes, three TikTok routes and one LinkedIn route. One call per advertiser per route, first page only, one worker per provider. Every raw response is on the evidence page. The platforms’ own APIs are covered on the Meta and Google pages; this page is about the third-party routes an agent can call today with one API key.
Results by route
| Route | Returned | Zero ads | Median ads per call | Ads returned | p50 | p95 | Cost per call |
|---|---|---|---|---|---|---|---|
| ScrapeCreators · Google ads by domain | 10 | 0 | 40 | 377 | 1,123 ms | 1,425 ms | $0.0019 |
| ScrapeCreators · Google advertiser lookup | 10 | 1 | 7 | 62 | 960 ms | 1,961 ms | $0.0019 |
| SerpApi · Google Ads Transparency | 10 | 0 | 40 | 377 | 1,691 ms | 2,996 ms | $0.015 |
| ScrapeCreators · LinkedIn ad library | 10 | 0 | 24 | 240 | 7,422 ms | 11,026 ms | $0.0019 |
| Apify · Meta Ads Scraper | 10 | 0 | 20 | 200 | 28,177 ms | 60,562 ms | $0.100 |
| ScrapeCreators · Meta, by page name | 10 | 0 | 30 | 298 | 4,303 ms | 5,915 ms | $0.0019 |
| ScrapeCreators · Meta, keyword search | 10 | 0 | 30 | 296 | 3,831 ms | 4,173 ms | $0.0019 |
| Apify · TikTok Ads Library | 10 | 4 | 11 | 102 | 9,098 ms | 19,156 ms | $0.033 |
| ScrapeCreators · TikTok ad library | 10 | 2 | 12 | 74 | 3,201 ms | 12,073 ms | $0.0019 |
| TikHub · TikTok Creative Center top ads | 10 | 10 | 0 | 0 | 1,478 ms | 1,907 ms | $0.0010 |
Reading the table:
- All 100 calls succeeded. No route errored. Where a route returned zero ads it was the library, not the route: TikTok’s library simply has no ads for monday.com or ClickUp in the regions it covers, and TikHub’s Creative Center search returned nothing for any brand name because it is a top-performing-ads showcase, not an advertiser library.
- Google: two routes, one dataset. ScrapeCreators’ company-ads route and SerpApi’s Transparency Center route returned the same 377 ads with the same fields for the same ten domains. SerpApi is faster to nothing in particular (1.7 s versus 1.1 s) and costs $0.015 against $0.0019. ScrapeCreators’ advertiser lookup is a separate step that resolves a brand name to advertiser IDs; it found nothing for Grammarly by name, which is why searching by domain is the better key.
- Meta: three routes, one dataset. ScrapeCreators by page name and by keyword returned the same 30-ad pages; Apify’s scraper returned the same ads with more fields (page like counts, EU reach where present, categories) at $0.10 for 20 ads and 28 seconds a call, with a p95 over a minute. For commercial advertisers the extra fields were empty: spend null on all 200, EU impressions null on all 200. Apify earns its price when you need the EU transparency fields on EU-targeted ads, or want a whole library paginated in one job; for a weekly check on ten competitors it is 50 times the cost for the same creatives.
- LinkedIn: one route, slow, rich. 24 ads a page at 7 seconds, and the only route here that returned impression ranges (for the 20% of ads with EU delivery), plus headline, description, CTA and destination URL on every ad. Dates were present on only 20% of ads.
- TikTok: coverage is the problem, not the route. TikTok’s ad library covers the EU, UK and a list of other countries but not the United States, so an advertiser that only runs US campaigns returns nothing from any route. ScrapeCreators found ads for 7 of 10 advertisers; Apify for 6; both agree on which brands are absent.
What ten weekly checks cost
A weekly job that pulls the first page for each of ten competitors on every platform where they run:
| Route set | Meta | TikTok | Weekly | Notes | ||
|---|---|---|---|---|---|---|
| ScrapeCreators only | $0.02 | $0.02 | $0.02 | $0.02 | $0.08 | One key; ~15 s per advertiser serially |
| Same, via Treg routed calls | $0.02 | $0.02 | $0.02 | $0.02 | $0.08 | Same provider, same price, one Treg credential and receipt per call |
| ScrapeCreators + SerpApi for Google | $0.02 | $0.15 | $0.02 | $0.02 | $0.21 | Identical Google data in this run |
| Apify for Meta and TikTok, ScrapeCreators elsewhere | $1.00 | $0.02 | $0.02 | $0.33 | $1.37 | Adds EU reach fields where they exist; 28 s a Meta call |
At these prices the cost is irrelevant and the decision is about coverage, fields and latency. The whole 100-call benchmark behind this page cost $1.58.
Who each route fits
- Weekly competitor monitoring for an agent: ScrapeCreators across all four platforms, keyed by page name (Meta), domain (Google) and company name (LinkedIn, TikTok). Paginate with the cursor when a competitor has more than a page of active ads; monday.com had 667 and Shopify 4,986 active Meta ads on the run date.
- EU transparency fields on Meta: Apify’s Meta scraper with details per ad, only for advertisers who run EU campaigns. Budget for a minute per call.
- You already pay for SerpApi: its Google Transparency route is fine; it is the same data.
- TikTok: either ScrapeCreators or Apify, and expect gaps for US-only advertisers. TikHub’s Creative Center route is for browsing top ads by keyword, not for looking up an advertiser.
- You need spend: no public library exposes it for ordinary commercial ads. See the data fields guide before promising it to anyone.
What this run cannot tell you
One page per advertiser, one day. Pagination depth, rate limits at volume and how quickly a new ad appears in each route were not exercised. Field presence is measured on the first page of ten advertisers, and EU-only fields will look richer on a cohort of EU advertisers. Creative URLs point at the platforms’ CDNs and expire.
Next step
- Treg exposes every route on this page through one credential with a receipt per call; the docs list the ScrapeCreators, Apify and SerpApi ad-library endpoints and their per-call prices, and pricing has the current rates.
- Provider docs: ScrapeCreators, Apify Facebook Ads Scraper, SerpApi Google Ads Transparency Center.
- The Meta and Google platform pages cover the official access routes and their restrictions.
Spotted an error or a changed price? Email corrections@adapiguide.com with the page URL and a source. Corrections are logged on the corrections page.