Meta Ads Library Scraper avatar

Meta Ads Library Scraper

Pricing

from $5.00 / 1,000 ad scrapeds

Go to Apify Store
Meta Ads Library Scraper

Meta Ads Library Scraper

Scrape ads from the Facebook Ads Library by keyword or Facebook Page URL. Extract ad copy, creatives, targeting,CTA, start/end dates & compliance data. Export to JSON, CSV or Excel. $0.005 per ad — pay only for results.

Pricing

from $5.00 / 1,000 ad scrapeds

Rating

5.0

(1)

Developer

Mubeen Ali

Mubeen Ali

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

1

Monthly active users

4 days ago

Last modified

Share

Meta Ads Library Scraper — Scrape Facebook Ads Library at Scale

Extract structured ad data from the Facebook Ads Library (Meta Ads Library) by keyword search or directly from any Facebook Page — no API key required, no manual browsing. Built on Apify, ready to run in seconds.

Pricing: $0.005 per ad · $5.00 per 1,000 ads · Actor start fee: $0.0005 USD (pay-per-event model)


What Is the Meta Ads Library Scraper?

The Meta Ads Library Scraper is an Apify actor that automates data extraction from the Facebook Ads Library — Meta's public transparency database of all ads running across Facebook, Instagram, Messenger, and the Audience Network.

Whether you are doing competitive ad intelligence, market research, brand monitoring, or compliance auditing, this scraper delivers clean, structured JSON data for every ad it finds — at scale, on demand, via the Apify platform or API.


What Data Does It Extract?

Every scraped ad is returned as a structured JSON object. Below is a full breakdown of every field the actor outputs:

🗂️ Ad Identity

FieldDescription
ad_archive_idUnique identifier for the ad in Meta's archive
collation_idGroups related ad variants together
collation_countNumber of variants in the same collation group

📄 Page / Advertiser Info

FieldDescription
page.idFacebook Page ID of the advertiser
page.nameDisplay name of the advertising page
page.profile_urlDirect URL to the Facebook Page
page.picture_urlProfile picture URL of the page
page.like_countTotal likes/followers of the page
page.categoriesBusiness category (e.g., Shopping, Finance)
page.is_deletedWhether the page has been deleted

📝 Ad Content

FieldDescription
content.ad_textPrimary body text / copy of the ad
content.titleAd headline or product title
content.captionDomain caption shown on the ad
content.display_formatFormat type (e.g., DPA, image, video, carousel)
content.cta_textCall-to-action button label (e.g., "Shop Now", "Install now")
content.cta_typeCTA type identifier
content.link_urlDestination URL the ad links to
content.link_descriptionLink description text
content.extra_linksAdditional links associated with the ad

🖼️ Media

FieldDescription
media.media_urlsURLs of image creatives used in the ad
media.video_urlsURLs of video creatives
media.video_detailsDetailed metadata about video content

🎯 Targeting & Schedule

FieldDescription
targeting.countryCountry targeting setting
targeting.platformPlatforms the ad runs on (facebook, instagram, etc.)
targeting.targeted_or_reached_countriesCountries targeted or reached
targeting.start_dateDate the ad started running
targeting.end_dateDate the ad stopped (or expected end)
targeting.is_activeWhether the ad is currently active

📊 Compliance & Safety

FieldDescription
compliance.gated_typeEligibility status (e.g., ELIGIBLE)
compliance.categoriesCompliance category (e.g., UNKNOWN, political)
compliance.contains_sensitive_contentSensitive content flag
compliance.contains_digital_created_mediaAI/digitally created media flag
compliance.is_aaa_eligibleAAA (About Ads) eligibility
compliance.hide_data_statusWhether data is hidden
compliance.has_user_reportedUser-reported flag
compliance.finserv_is_deemedFinancial services compliance flag
compliance.finserv_is_limited_deliveryLimited delivery for financial ads
scrapedAtISO timestamp of when the actor scraped this ad

Sample Output

{
"ad_archive_id": "1555263375851429",
"collation_id": null,
"collation_count": 1,
"page": {
"id": "112727500143177",
"name": "Whatnot",
"profile_url": "https://www.facebook.com/RealWhatnot/",
"picture_url": "https://scontent.fcpq7-1.fna.fbcdn.net/...",
"like_count": 228076,
"categories": ["Shopping"],
"is_deleted": false
},
"content": {
"ad_text": "Vintage and new Pokémon cards starting at $1 ⚡️Live on Whatnot!",
"title": "{{product.name}}",
"caption": "itunes.apple.com",
"display_format": "DPA",
"cta_text": "Install now",
"cta_type": "INSTALL_MOBILE_APP",
"link_url": "http://itunes.apple.com/app/id1488269261"
},
"media": {
"media_urls": [],
"video_urls": [],
"video_details": []
},
"targeting": {
"country": "ALL",
"platform": ["facebook", "instagram"],
"start_date": "2025-09-11T07:00:00.000Z",
"end_date": "2026-05-26T07:00:00.000Z",
"is_active": true
},
"compliance": {
"gated_type": "ELIGIBLE",
"categories": ["UNKNOWN"],
"contains_sensitive_content": false,
"contains_digital_created_media": false,
"is_aaa_eligible": false
},
"scrapedAt": "2026-05-26T08:42:05.226Z"
}

Key Features

✅ Keyword Search & Page Scraping

Accepts two types of input URLs:

  • Ads Library search URLs — any URL from facebook.com/ads/library/ with your keyword, country, and filter parameters already applied
  • Facebook Page URLs — any URL in the format facebook.com/pageName to scrape all ads run by a specific advertiser

✅ Ad Status Filtering

Filter results by ad status using the status parameter:

  • all — active and inactive ads
  • active — only currently running ads
  • inactive — only stopped ads

✅ Configurable Ad Limit

Use maxAds to cap how many ads are scraped per run. Set to 0 for unlimited scraping — the actor will collect every matching ad it can find.

✅ Structured JSON Output

Every ad is returned as a flat, consistent JSON object — ready to export to CSV, Excel, or pipe directly into your database or data warehouse via the Apify API.

✅ Scalable on Apify Infrastructure

Runs on Apify's managed cloud infrastructure. No local setup, no browser management, no proxy headaches. Start a run from the UI or trigger it programmatically via the API.

✅ Pay-Per-Event Pricing

You are only charged for ads that are successfully scraped and pushed to the dataset. No wasted credits on failed runs or empty results.


How to Use — Step by Step

  1. Go to https://www.facebook.com/ads/library/
  2. Select your country, ad category, and type your keyword (e.g., perfume, insurance, sneakers)
  3. Apply any filters you want (active only, by platform, etc.)
  4. Copy the full URL from your browser's address bar
  5. Open this actor on Apify and paste the URL into the Ads Library URLs field
  6. Set your status filter and maxAds limit (optional)
  7. Click Start and wait for results
  8. Export your data as JSON, CSV, or Excel from the Dataset tab

Example input URL:

https://www.facebook.com/ads/library/?active_status=all&ad_type=all&country=PK&q=perfume&search_type=keyword_unordered&media_type=all

Method 2: Scrape Ads from a Facebook Page

  1. Find the Facebook Page of the brand or advertiser you want to research
  2. Copy the page URL (e.g., https://www.facebook.com/nike/)
  3. Paste it into the Ads Library URLs field
  4. Run the actor — it will find and scrape all ads associated with that page

Input Configuration Reference

{
"urls": [
"https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=US&q=insurance&search_type=keyword_unordered&media_type=all"
],
"status": "active",
"maxAds": 500
}
ParameterTypeRequiredDefaultDescription
urlsarray of strings✅ YesOne or more Facebook Ads Library URLs or Facebook Page URLs
statusstringNoallFilter by ad status: all, active, or inactive
maxAdsintegerNo0Maximum number of ads to collect. 0 = unlimited

How to Use via API

You can trigger this actor programmatically and retrieve results without ever opening the Apify console. This is ideal for scheduled competitive research pipelines, automated alerts, or integration with your own application.

Start a Run via API

curl -X POST "https://api.apify.com/v2/acts/YOUR_ACTOR_ID/runs?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"urls": [
"https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=US&q=nike&search_type=keyword_unordered&media_type=all"
],
"status": "active",
"maxAds": 1000
}'

Fetch Results from the Dataset

$curl "https://api.apify.com/v2/actor-runs/RUN_ID/dataset/items?token=YOUR_API_TOKEN&format=json"

JavaScript / Node.js Example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('YOUR_ACTOR_ID').call({
urls: [
'https://www.facebook.com/ads/library/?active_status=all&ad_type=all&country=US&q=fitness&search_type=keyword_unordered&media_type=all'
],
status: 'all',
maxAds: 500,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Python Example

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("YOUR_ACTOR_ID").call(run_input={
"urls": [
"https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=GB&q=skincare&search_type=keyword_unordered&media_type=all"
],
"status": "active",
"maxAds": 1000
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

For full API documentation, visit the Apify API Reference.


Pricing

This actor uses a pay-per-event billing model — you are charged only for ads that are successfully scraped and written to your dataset.

WhatCost
Per successfully scraped ad$0.005 USD
Per 1,000 ads$5.00 USD
Actor start fee (per run)$0.0005 USD

There are no monthly minimums or seat fees. You only pay for results. This model makes the actor ideal for both one-off research tasks and high-volume automated pipelines.

Cost examples:

  • Scraping 200 competitor ads for a quick brand audit → ~$1.00
  • Collecting 10,000 ads for a market research report → ~$50.00
  • Running a daily monitor of 500 ads per day → ~$75/month

You can cap costs precisely using the maxAds parameter.


Use Cases

🔍 Competitive Intelligence

Monitor what ads your competitors are running — their copy, creatives, CTAs, and how long campaigns have been active. Track when they launch new products or promotions.

📊 Market Research

Search any keyword across any country to understand how brands in your industry advertise. Identify messaging patterns, seasonal trends, and underserved niches.

🎯 Ad Creative Inspiration

Build a swipe file of high-performing ad copy and creative formats from top advertisers in your vertical — filtered by platform (Facebook, Instagram) and ad status.

🏷️ Brand Monitoring

Track ads being run by any specific Facebook Page to monitor a brand's advertising activity over time. Useful for agencies managing client accounts and needing to watch competitor brands.

⚖️ Compliance & Transparency Auditing

The Facebook Ads Library is the official source for ad transparency. Researchers, journalists, and compliance teams use this data to audit political advertising, financial services ads, and sensitive content categories.

📈 Agency & Freelancer Reporting

Build client-ready reports on competitor ad activity. Show clients exactly what the competition is doing and use real data to inform creative strategy.

🔗 Data Pipeline Integration

Feed scraped ad data into your data warehouse (BigQuery, Snowflake, Redshift), BI tool (Looker, Tableau, Power BI), or CRM via Apify's native integrations and webhooks.


Integrations

Once your data is in Apify's dataset, you can push it anywhere:

  • Webhooks — trigger downstream actions when a run finishes
  • Apify API — fetch results in JSON, CSV, XML, or Excel
  • Make (formerly Integromat) — connect to thousands of SaaS tools without code
  • Zapier — automate workflows between Apify and your stack
  • Google Sheets — export directly for collaborative analysis
  • Amazon S3 / Google Cloud Storage — archive large datasets

The Facebook Ads Library is a public transparency tool created by Meta specifically to allow public inspection of all active and past ads. Unlike profile scraping, the Ads Library contains no private user data — it is intentionally public by design.

This actor only collects data that Meta has made publicly available through the Ads Library. It does not collect private user information, personal profiles, messages, or any data behind a login wall.

That said, you should always ensure your use of scraped data complies with applicable laws in your jurisdiction, including data protection regulations like GDPR in the EU. If you are unsure whether your intended use is compliant, consult a legal professional.

For broader context on web scraping legality, see Apify's guide on the legality of web scraping.


Frequently Asked Questions

Do I need a Facebook account or API key to use this? No. The Facebook Ads Library is publicly accessible and this actor does not require any Facebook credentials or Meta API keys.

What countries does the Ads Library cover? Meta's Ads Library covers ads running in all countries. You can filter by country directly in the search URL using the country= parameter (e.g., country=US, country=GB, country=PK).

Can I scrape ads from a specific advertiser? Yes. Paste the Facebook Page URL of any advertiser (e.g., https://www.facebook.com/nike/) into the urls field and the actor will scrape all ads associated with that page.

How many ads can I scrape per run? As many as you need. Set maxAds to 0 for unlimited. For large-scale collections, Apify handles scaling automatically.

Can I filter for only active ads? Yes. Set the status parameter to active to return only currently running ads.

Can I schedule the actor to run automatically? Yes. Use Apify's built-in scheduler to run this actor on a daily, weekly, or custom cron schedule — ideal for ongoing competitor monitoring.

What format is the output in? Data is stored in Apify's dataset and can be exported as JSON, CSV, Excel (XLSX), XML, or RSS.


Feedback & Support

Found a bug or have a feature request? Please open an issue on the Issues tab in the Apify Console. We monitor all issues and aim to respond promptly.

We are continuously improving this actor's reliability, speed, and output schema based on user feedback.


Keywords

facebook ads library scraper, meta ads library scraper, scrape facebook ads, facebook ad library data extraction, facebook ads scraper apify, meta ads scraper, scrape meta ads library, facebook advertising data, competitor ad research tool, facebook ads intelligence, ad library api alternative, facebook page ads scraper, scrape facebook page ads, facebook ads monitor, meta transparency library scraper, social media ad scraper, facebook ads data export, apify facebook scraper, facebook ads competitive analysis, extract facebook ads data, facebook ads library api