Meta Ads Library Scraper - Fast & Reliable avatar

Meta Ads Library Scraper - Fast & Reliable

Pricing

from $0.75 / 1,000 ad rows

Go to Apify Store
Meta Ads Library Scraper - Fast & Reliable

Meta Ads Library Scraper - Fast & Reliable

Scrape public Meta/Facebook ads by keyword, copied Ads Library URL, Facebook Page ID, or Ad Library ID. Extract ad text, CTA, platform, creative-format, advertiser, and metadata signals with proxy controls and delivered-row billing.

Pricing

from $0.75 / 1,000 ad rows

Rating

5.0

(1)

Developer

Techionik

Techionik

Maintained by Community

Actor stats

1

Bookmarked

7

Total users

5

Monthly active users

4 days ago

Last modified

Share

Scrape public Meta ads in seconds by copied Ads Library URL, keyword, Facebook Page ID, or Ad Library ID. Get structured ad copy, advertiser, CTA, ad status, start date, placement signals, creative-format signals, direct ad URL, and change-tracking rows for growth teams, agencies, and competitive research.

Meta Ads Library Scraper hero

Built For

  • Competitor ad research across Facebook, Instagram, Messenger, WhatsApp, Threads, and Audience Network signals.
  • Creative research for hooks, offers, CTAs, landing-page angles, and campaign messaging.
  • Agency lead research by brand, page, niche, product, or keyword.
  • Scheduled checks for new and updated ads without paying for blocked or empty sources.

Search Modes

  • targetUrl: paste the full Meta Ads Library URL copied from your browser. This takes priority over all other filters.
  • searchQuery: search by brand, competitor, product, niche, or offer.
  • searchQueries: run multiple keywords in one job.
  • pageId: collect ads from a specific Facebook Page ID.
  • adId: check one specific Meta Ad Library ID.
  • adLibraryUrls: run multiple advanced Ads Library URLs in one job.

Filters And Controls

  • Country, ad status, ad type, media type, targeted-country mode, content language, sort mode, and sort direction.
  • maxResults controls the maximum delivered ad rows.
  • maxConcurrency controls speed for multiple keywords or URLs.
  • requestHandlerTimeoutSecs and maxRunMinutes stop stalled sessions cleanly.
  • monitorChanges and onlyChanges support scheduled new-ad and updated-ad workflows.

Data Delivered

  • libraryId, pageName, adStatus, startedRunning, platforms, cta, creativeFormat, and adText.
  • Direct adUrl, original sourceUrl, searchQuery, pageId, requested ad ID, and scrape timestamp.
  • dataQualityScore and signalSummary so rows are easier to sort, review, and export.
  • Optional raw ad text for audit/debug workflows.
  • Change rows such as new_ad and updated_ad when change detection is enabled.

Proxy Strategy

Meta can limit direct browser sessions. Proxy quality is often the difference between a thin sample and a useful ad dataset. For serious runs, use proxyUrl with a reliable residential or managed proxy. In the input form, this appears as Your proxy URL - recommended for highest fill rate. The actor also supports Apify proxy modes when no custom proxy URL is provided.

  • none: cheapest mode for quick checks.
  • auto: try direct access first, then retry with Apify datacenter proxy if no rows are captured.
  • datacenter: route through Apify datacenter proxy.
  • residential: route through Apify residential proxy, optionally with proxyCountryCode.
  • proxyUrl: use a full HTTP, HTTPS, or SOCKS proxy URL from Apify Residential, Bright Data, Oxylabs, or another managed provider.

Example Input

{
"searchQuery": "running shoes",
"country": "US",
"activeStatus": "active",
"adType": "all",
"mediaType": "all",
"maxResults": 100,
"maxConcurrency": 1,
"requestHandlerTimeoutSecs": 900,
"proxyMode": "auto"
}

Example Output

{
"resultType": "meta_ad",
"libraryId": "123456789012345",
"pageName": "Example Brand",
"adStatus": "active",
"startedRunning": "Jun 2026",
"platforms": ["Facebook", "Instagram"],
"cta": "Shop now",
"creativeFormat": "image",
"adText": "Visible ad copy from the public Meta Ads Library",
"adUrl": "https://www.facebook.com/ads/library/?id=123456789012345",
"dataQualityScore": 92,
"scrapedAt": "2026-06-24T12:00:00.000Z"
}

Pricing

$10.00 / 1,000 delivered ads

Billing is based on delivered ad rows written to the default dataset. Blocked pages, empty searches, login/captcha pages, timeouts, and no-data sources are stored as notices outside the paid dataset.

maxResults is a cap, not a promise that Meta will expose that many ads. If Meta exposes 37 useful ads from a 100-ad request, the dataset contains 37 delivered rows.

Reliability

  • Browser cleanup after errors.
  • Whole-run and per-source timeout guards.
  • Duplicate ad IDs removed before output.
  • No paid error rows.
  • Change snapshots stored outside the customer dataset.
  • Graceful zero-row handling when Meta blocks or exposes no public ads.