Meta Ads Library Scraper | 💵$0.5/1K
Pricing
from $0.40 / 1,000 meta ads library ads
Meta Ads Library Scraper | 💵$0.5/1K
[💵 $0.50 / 1K] Track competitors by Facebook Page ID or discover ads by keyword and optional date range. Export public Meta, Facebook, and Instagram ads.
Pricing
from $0.40 / 1,000 meta ads library ads
Rating
0.0
(0)
Developer
WebData Labs
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
4 hours ago
Last modified
Categories
Share
Scrape public Facebook and Instagram ads from the Meta Ads Library by keyword, Facebook Page ID, or copied search URL.
Track specific competitors' ads by Facebook Page ID, or discover competitors and winning ad ideas by keyword.
Meta Ads Library Scraper returns one clean dataset row per public ad, including copy, creatives, CTAs, landing pages, advertiser details, platforms, and dates. Optionally filter ads by a period in which they were active. No Facebook login or Meta developer token is required.
✅ What you get / ❌ What this isn't
✅ You get:
- Ad copy, headlines, descriptions, CTA, and landing-page URLs
- Image, video, thumbnail, carousel, and dynamic-creative assets
- Advertiser Page ID, name, URL, categories, image, and public like count
- Active status, start/end dates, platforms, and Meta Library IDs
- Spend, impressions, reach, currency, and country fields when Meta publicly exposes them
- Keyword, Page ID, and copied Ads Library URL inputs
- Optional server-side filtering by a period in which ads were active
🔎 Why use this Meta Ads Library scraper
Use a Facebook Page ID when you already know the competitor you want to track. Use a keyword or advertiser name when you want to discover who is advertising in a market, compare offers and CTAs, or collect fresh creative ideas.
Schedule repeat exports for competitor tracking, call the Actor through the API, export datasets, trigger webhooks, or connect results to Make, Zapier, Google Sheets, and other integrations.
📊 What data can it extract?
| Field | Description |
|---|---|
libraryId, adUrl | Stable Meta Library ID and public detail URL |
pageId, pageName, pageUrl | Advertiser identity |
bodyText, headline, description | Cleaned creative copy |
ctaText, landingPageUrl | Call to action and destination |
imageUrls, videoUrls, cards | Creative assets and carousel cards |
isActive, startDate, endDate | Delivery status and dates |
publisherPlatforms | Facebook, Instagram, Messenger, and other exposed placements |
spend, impressions, reachEstimate | Transparency ranges when available |
sourceValue, sourceUrl, observedAt | Search provenance |
⚙️ How to scrape Meta Ads Library
- Enter one or more advertiser names or keywords.
- Optionally add numeric Facebook Page IDs or copied Meta Ads Library URLs.
- Optionally choose the earliest and/or latest ad start date.
- Choose the country, status, media type, and maximum result count.
- Run the Actor.
- Download the dataset as JSON, CSV, Excel, XML, or another Apify-supported format.
No Facebook access token, login, or user-provided cookies are required.
📥 Input
Choose either searchQueries for market discovery or pageIds for exact competitor tracking. You can also provide both.
Discover competitors and ad ideas by keyword:
{"searchQueries": ["shopify"],"pageIds": [],"countryCode": "US","activeStatus": "active","mediaType": "all","maxResults": 100}
Track ads from a specific competitor:
{"searchQueries": [],"pageIds": ["20409006880"],"countryCode": "US","activeStatus": "active","maxResults": 100}
Extract ads that were active during a period:
{"searchQueries": ["shopify"],"pageIds": [],"countryCode": "US","activeStatus": "active","dateFrom": "2026-07-01","dateTo": "2026-07-23","maxResults": 100}
searchQueries- keywords or advertiser names for discovering competitors and ad ideas.pageIds- numeric Facebook Page IDs for tracking specific competitors.startUrls- optional copiedfacebook.com/ads/library/URLs.countryCode- two-letter country filter.activeStatus- active ads or all statuses available for the selected category.mediaType- all, image, video, meme, or no-media ads.dateFrom- optional beginning of the ad-delivery period, inclusive, inYYYY-MM-DDformat.dateTo- optional end of the ad-delivery period, inclusive, inYYYY-MM-DDformat.maxResults- total unique rows across all sources.requestDelayMillisandmaxRetries- advanced reliability controls.proxyConfiguration- advanced reliability settings. Keep the default for larger exports.
The prefilled input returns a non-empty Shopify sample and is suitable for testing the Actor.
🔍 Ready-made Meta Ads Library research tasks
Click any public Task example to start with a ready-made configuration for competitor tracking, ad-library research, lead-generation offer research, or creative inspiration.
| Research task | Search mode | Prefilled value |
|---|---|---|
| Extract Meta ads active in a date range | Keyword + delivery dates | shopify, July 1–23, 2026 |
| Track Shopify Facebook ads | Exact competitor Page ID | 20409006880 |
| Find Facebook competitor ads | Keyword discovery | project management software |
| Export ecommerce Meta ad creatives | Keyword discovery | shopify |
| Research SaaS Facebook and Instagram ad copy | Keyword discovery | ai customer support |
| Find AI tool Facebook ads | Keyword discovery | ai video generator |
| Research real estate Facebook ads | Keyword discovery | homes for sale |
| Research solar lead generation ads | Keyword discovery | solar panels |
| Research roofing company Facebook ads | Keyword discovery | roofing company |
| Research dental implant Facebook ads | Keyword discovery | dental implants |
| Research personal injury lawyer ads | Keyword discovery | personal injury lawyer |
| Research fitness app Instagram ads | Keyword discovery | fitness app |
| Research skincare Facebook ad creatives | Keyword discovery | skincare |
| Research online course Facebook ads | Keyword discovery | online course |
For exact competitor monitoring, replace the Shopify example with any numeric Facebook Page ID. For market discovery, replace a keyword with your niche, product category, service, or customer problem.
The date fields select ads that overlap the chosen delivery period. An ad can therefore have a startDate earlier than dateFrom if it remained active during the selected period. You can use either boundary by itself, use both for a closed range, or leave both empty for no date restriction. When a copied Ads Library URL already contains dates, explicitly entered date fields take precedence.
📤 Output
{"libraryId": "1234567890123456","pageId": "123456789012345","pageName": "Example Store","isActive": true,"startDate": "2026-01-15T00:00:00.000Z","bodyText": "Build your store and start selling today.","headline": "Start your free trial","ctaText": "Sign Up","landingPageUrl": "https://example.com/offer","creativeType": "image","imageUrls": ["https://scontent.example.com/creative.jpg"],"publisherPlatforms": ["FACEBOOK", "INSTAGRAM"],"adUrl": "https://www.facebook.com/ads/library/?id=1234567890123456","sourceValue": "example ecommerce","countryCode": "US","observedAt": "2026-07-23T12:00:00.000Z"}
Every billable dataset row is a successfully parsed ad. Source failures and run counts are stored separately in the OUTPUT summary.
💵 How much does it cost to scrape Meta Ads Library?
The launch price is $0.50 per 1,000 delivered ads on Free and Bronze plans, with volume discounts for higher Apify plans. There is no Actor-start event. A 100-ad export costs about $0.05 before plan discounts.
Apify platform usage is included in the pay-per-event price.
⚡ Tips for reliable runs
- Start with one precise advertiser or keyword before combining searches.
- Use a Facebook Page ID when you need one advertiser rather than keyword matches.
- Keep the default request delay unless you have a specific reason to change it.
- Creative CDN URLs can expire; download assets soon if you need durable copies.
- If a result looks incomplete, report it with a run URL and one non-secret query or Page ID.
⚠️ Limits and responsible use
- The Actor extracts only fields visible in Meta's public Ads Library.
- Spend, reach, impressions, demographics, and inactive history are not available for every ad category or country.
- Search totals and result order can change between runs.
- For ordinary commercial ads, Meta primarily exposes ads that are currently active. A past date range does not guarantee a complete archive of commercial ads that have since stopped.
- Dynamic creative may expose multiple text or media variants; arrays preserve those variants.
Meta Ads Library contains public advertising data, but laws and platform terms still apply. If your use involves personal data or regulated decisions, obtain appropriate legal advice.
❓ FAQ
Does it require a Facebook login or Meta developer token?
No. Enter a keyword, Facebook Page ID, or copied Ads Library URL and run the Actor.
Can it scrape one advertiser?
Yes. Supply the advertiser's numeric Facebook Page ID in pageIds, or paste a filtered Ads Library URL.
Can I schedule competitor-ad exports?
Yes. Save the input as an Apify Task and schedule it, or call the Actor through the Apify API.
Can I scrape ads from a specific date range?
Yes. Set Ads active from, Ads active until, or both. The boundaries are inclusive. An ad can have an earlier startDate if its delivery overlapped the selected period.
🛠️ Support
Open an issue from the Actor page and include the run URL, non-secret input, expected result, and one affected query or Page ID.