VOOZH about

URL: https://apify.com/harshmaur/facebook-ads-library-scraper

โ‡ฑ Facebook Ads Library Scraper: Creative & Reach (No API Key) ยท Apify


๐Ÿ‘ Facebook Ads Library Scraper - Creative & Reach ($0.50/1k) avatar

Facebook Ads Library Scraper - Creative & Reach ($0.50/1k)

Pricing

from $0.40 / 1,000 ad results

Go to Apify Store

Facebook Ads Library Scraper - Creative & Reach ($0.50/1k)

Scrape ads from the Facebook (Meta) Ad Library by keyword or Page - no login, no Meta API key. Full ad creative (text, images, video, CTA, link), advertiser, run dates, ad duration & EU/UK reach. $0.50 per 1,000 ads. 70+ fields per ad. Works with AI Agents, MCP, n8n, Make & Zapier.

Pricing

from $0.40 / 1,000 ad results

Rating

5.0

(2)

Developer

๐Ÿ‘ Harsh Maur

Harsh Maur

Maintained by Community

Actor stats

2

Bookmarked

12

Total users

9

Monthly active users

14 hours ago

Last modified

Share

Facebook Ads Library Scraper โ€” Scrape Meta Ad Library Ads, Creative & Reach (No API Key)

Scrape ads from the Facebook (Meta) Ad Library by keyword or by Page โ€” full ad creative, advertiser, run dates, and EU/UK reach. No login, no Meta API key. $0.50 per 1,000 ads.

๐Ÿ‘ Try on Apify
๐Ÿ‘ Input Schema
๐Ÿ‘ API Docs

What it does โ€ข How to use โ€ข Data fields โ€ข Output โ€ข Pricing โ€ข FAQ


What does the Facebook Ads Library Scraper do? {#what-does-the-facebook-ads-library-scraper-do}

Facebook Ads Library Scraper extracts ads from the Meta Ad Library โ€” the public archive of every ad running across Facebook, Instagram, Messenger, and the Audience Network. Paste an Ad Library search URL or a Facebook Page URL and get clean, structured data in JSON, CSV, or Excel: the ad copy, images and videos, the call-to-action, the advertiser, how long each ad has been running, and (for EU/UK ads) audience reach and demographics. No Meta Graph API token, no login, no Business Manager.

๐Ÿ” Search or Page, your choice

Scrape an Ad Library keyword search or every ad a specific Facebook Page is running โ€” mix both in one run

๐ŸŽจ Full ad creative

Headline, primary text, CTA, landing URL, plus every image and video (including each carousel card)

โฑ๏ธ Ad duration = winning ads

Every ad gets ad_duration_days and is_long_running โ€” sort by it to surface proven, long-running winners instantly

๐Ÿ“Š Reach & spend, parsed

EU/UK total reach, audience age & gender, plus impression/reach/spend ranges parsed into real numbers โ€” not "10Kโ€“15K" text

๐Ÿ”„ Export anywhere

JSON, CSV, Excel, XML, HTML ยท n8n, Zapier, Make, REST API, MCP

๐Ÿ’ฐ $0.50 per 1,000 ads

Pay-per-result, no monthly fee โ€” you're billed only for the ads you actually receive


Why scrape the Facebook Ad Library?

The Meta Ad Library is the single best public source of competitor advertising intelligence โ€” but the website only lets you scroll one ad at a time, with no export, no sorting by ad age, and the creative buried behind clicks. This scraper turns it into a spreadsheet.

Built for:

  • ๐Ÿ›’ Dropshippers & ecommerce finding winning products and proven creatives
  • ๐ŸŽฏ Performance marketers doing competitor ad research and swipe files
  • ๐Ÿข Agencies monitoring every ad their clients' competitors run
  • โœ๏ธ Copywriters & creative teams building ad inspiration libraries
  • ๐Ÿ“Š Market researchers tracking campaigns, messaging, and ad spend over time
  • ๐Ÿ—ณ๏ธ Journalists & analysts auditing political and social-issue ad transparency

What data can you extract from the Facebook Ad Library? {#what-data-can-you-extract}

Each result is one ad with 70+ fields: every native Ad Library field plus computed fields that competing scrapers don't give you. Every record also carries scraped_at, search_term, and input_url, so mixed datasets stay easy to filter.

CategoryFields
Ad identityad_archive_id, ad_id, collation_id, collation_count, ad_library_url
Advertiser / Pagepage_id, page_name, page_url, page_profile_picture_url, page_like_count, page_categories
Status & datesis_active, start_date / end_date (+ _iso and formatted), ad_duration_days, is_long_running
Creative (flattened)ad_text, headline, cta_text, cta_type, link_url, caption, media_type
Mediaimage_urls[], video_urls[], video_preview_image_urls[], image_count, video_count, card_count
Targeting & platformspublisher_platform[], platforms[], targeted_or_reached_countries[]
Reach / spend (parsed)impressions_lower/_upper, reach_lower/_upper, spend_lower/_upper, currency
EU/UK transparency (with Scrape ad details)advertiser, transparency_by_location, audience_total_reach, audience_age_min/_max, audience_gender, audience_countries[]
Compliancecategories[], contains_sensitive_content, is_aaa_eligible, violation_types, is_violating_eu_siep
Other native fieldsurl, position, total, ads_count, page_profile_uri, link_description, display_format, gated_type, hide_data_status, total_active_time, page_is_deleted, contains_digital_created_media, reach_estimate, spend, impressions_with_index, has_user_reported, report_count, state_media_run_label, regional_regulation_data, menu_items, fev_info, verified_voice_context
Rawthe complete native snapshot object is preserved for power users

The fields competitors bury, we surface. ad_text, headline, and media URLs normally live inside a nested snapshot blob โ€” we lift them to the top level so they drop straight into a spreadsheet, and we compute ad_duration_days so you can sort for winners in one click.


How to scrape Facebook ads {#how-to-scrape-facebook-ads}

You can scrape the Ad Library two ways โ€” use either or both in a single run.

Method 1: Scrape ads by keyword (Ad Library search URL)

  1. Open the Facebook Ad Library, pick a country, and search for a keyword, brand, or topic.
  2. Copy the URL from your browser's address bar.
  3. Paste it into the URLs field and run.
{
"urls":[
{"url":"https://www.facebook.com/ads/library/?active_status=all&ad_type=all&country=US&q=skincare&search_type=keyword_unordered&media_type=all"}
],
"count":500
}

The scraper paginates automatically through every matching ad up to your limit.

Method 2: Scrape ads run by a Facebook Page

Paste a Page URL โ€” a vanity handle (facebook.com/nike), a profile.php?id= link, or a numeric page id. The scraper resolves it to the page and pulls every ad that advertiser is running, with optional date, status, country, and sort filters.

{
"urls":[
{"url":"https://www.facebook.com/nike"}
],
"count":0,
"scrapePageAds.activeStatus":"active",
"scrapePageAds.period":"last30d",
"scrapePageAds.sortBy":"most_recent",
"scrapePageAds.countryCode":"US"
}

Input options

FieldWhat it does
urlsAd Library search URLs and/or Facebook Page URLs (mix freely)
countMax ads across all URLs combined. Defaults to 100; set 0 for no limit
limitPerSourceMax ads per input URL (0 = all)
scrapeAdDetailsAlso fetch advertiser + EU/UK transparency (reach, age, gender) per ad
scrapePageAds.periodPage URLs only: last24h, last7d, last14d, last30d, or all time
scrapePageAds.activeStatusPage URLs only: all, active, or inactive
scrapePageAds.sortByPage URLs only: impressions_desc or most_recent
scrapePageAds.countryCodePage URLs only: 2-letter ISO code or ALL
runTagOptional label copied onto every output record

Find winning ads by duration

The single most useful signal in competitor ad research is how long an ad has been running. Advertisers kill ads that don't convert โ€” so an ad live for 90+ days is almost certainly profitable. The Ad Library website makes this nearly impossible to see; this scraper computes it for you:

  • ad_duration_days โ€” exact days the ad has been live (clamped to today for active ads)
  • is_long_running โ€” true once an ad passes 30 days

Pull a competitor's ads, sort by ad_duration_days descending, and the top of the list is their proven winners. That's your swipe file.


Scrape EU & UK ad transparency data

Enable Scrape ad details to fetch Meta's transparency data for ads that ran in the EU or UK, where the Digital Services Act requires disclosure:

  • audience_total_reach โ€” how many people the ad actually reached
  • audience_age_min / audience_age_max and audience_gender โ€” who it targeted
  • audience_countries โ€” where it was delivered
  • advertiser โ€” the page's about text and ad-library spend summary

Reach, spend, and impressions are only published by Meta for ads about social issues, elections, or politics, and for ads delivered in certain regions. Standard commercial ads won't carry them โ€” that's a limit of the Ad Library itself, not the scraper.


Output example {#output-example}

{
"ad_archive_id":"1046730950862281",
"page_name":"Nike",
"page_url":"https://www.facebook.com/15087023444",
"page_like_count":38500000,
"is_active":true,
"start_date_iso":"2025-12-19T08:00:00.000Z",
"end_date_iso":null,
"ad_duration_days":92,
"is_long_running":true,
"ad_text":"Free shipping on the latest drops. Member exclusives all week.",
"headline":"Shop Nike",
"cta_text":"Shop now",
"cta_type":"SHOP_NOW",
"link_url":"https://www.nike.com/",
"media_type":"carousel",
"image_urls":["https://scontent.../a.jpg","https://scontent.../b.jpg"],
"video_urls":[],
"card_count":7,
"publisher_platform":["FACEBOOK","INSTAGRAM"],
"platforms":["facebook","instagram"],
"impressions_lower":10000,
"impressions_upper":15000,
"currency":"USD",
"categories":["UNKNOWN"],
"ad_library_url":"https://www.facebook.com/ads/library/?id=1046730950862281",
"search_term":"nike",
"scraped_at":"2026-06-19T12:00:00.000Z"
}

How much does it cost to scrape Facebook ads? {#pricing}

Pay-per-result model

You pay only for the ads you receive โ€” no monthly subscription, no platform usage fees.

  • Per ad: $0.0005 ($0.50 per 1,000 ads)

Example cost calculation

ScrapeCost
1,000 ads$0.50
10,000 ads$5.00
100,000 ads$50.00

No surprises: set count to cap exactly how much you spend per run (it defaults to 100, never unlimited, so an automated call can't run away with your budget).

Why pay-per-result?

  • Scrape competitor ads occasionally without a standing subscription
  • Cap spend precisely with count and limitPerSource
  • Pay nothing for idle time

Use the Facebook Ads Library Scraper with AI agents and MCP

This scraper works as a tool for AI agents out of the box via the Apify MCP server. Connect it to Claude, ChatGPT, Cursor, or any MCP-compatible client and your agent can pull a competitor's live ads, summarize their messaging, and spot their longest-running creatives on demand โ€” no glue code.

Typical agent workflows:

  • ๐Ÿค– "Show me every active ad [brand] is running and which has been live longest"
  • ๐Ÿ“Š Feed scraped ad copy and creatives into an LLM for messaging and angle analysis
  • ๐Ÿ” Combine with scheduled runs + webhooks for autonomous competitor-ad monitoring

The structured JSON (70+ fields per ad, with the creative already flattened) is ready for RAG pipelines and ML datasets.

Push new ads straight to Slack, Notion, or Sheets (no code)

The other direction: pick an MCP connector in the input (Send results to an app) and every scraped ad is delivered into the app you authorized โ€” Slack, Notion, Airtable, Google Sheets, and more. Your credentials stay in Apify; the actor never sees them.

The killer setup is a new-ad alert: schedule this actor on a competitor's Page URL with the Last 24 hours filter and a Slack connector โ€” you get pinged the moment they launch a new creative. Choose one message per ad or a single run summary, and customize the message with {{field}} placeholders ({{page_name}}, {{ad_text}}, {{ad_library_url}}, โ€ฆ). Delivery is best-effort and never blocks or fails the scrape.


Integrate with n8n, Zapier, and Make

Automate your ad-intelligence pipeline by connecting this scraper to n8n, Zapier, or Make.

Synchronous run (quick scrapes under 5 minutes)

  1. Get your token at Apify Integrations.
  2. Add an HTTP Request node:
    • Method: POST
    • URL: https://api.apify.com/v2/acts/harshmaur~facebook-ads-library-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN
    • Body (JSON):
{
"urls":[{"url":"https://www.facebook.com/ads/library/?active_status=all&ad_type=all&country=US&q=coffee&search_type=keyword_unordered&media_type=all"}],
"count":100
}

โš ๏ธ The synchronous endpoint times out after 300 seconds. For large pulls, start the run asynchronously and poll for completion (a Wait node in n8n is the reliable pattern), then fetch the dataset.


Support

๐Ÿ“ Report an issue โ€” directly in the Run console, so we can reproduce and fix it fast.

๐Ÿ“ง Email โ€” feature requests and detailed questions: harshmaur@gmail.com

โญ Happy with the data? A quick review on the actor page helps other marketers find this scraper and keeps improvements coming.


FAQ {#faq}

Do I need a Facebook account or Meta API key?

No. The Ad Library is a public transparency tool โ€” this scraper needs no login, no Meta Graph API token, no Business Manager, and no app review. Paste a URL and run.

Is it legal to scrape the Facebook Ad Library?

The Ad Library is published by Meta specifically for public transparency and contains no private user data โ€” only what advertisers chose to show. Scraping public data is generally lawful, but your results can still contain personal data (e.g. an advertiser's name), which is protected by the GDPR in the EU and similar laws elsewhere. Only collect what you have a legitimate reason to use, and consult a lawyer if you're unsure. ๐Ÿ“– More on the enforceability of terms of use.

How do I scrape all ads from a specific advertiser?

Paste the advertiser's Facebook Page URL into urls โ€” a vanity handle (facebook.com/nike), a profile.php?id= link, or a numeric page id all work. The scraper resolves it to the page and pulls every ad it's running. Use the scrapePageAds.* filters to narrow by date, status, country, or sort order.

How do I find a competitor's best-performing ads?

Scrape their page, then sort the output by ad_duration_days (highest first). Long-running ads are the ones the advertiser keeps paying for โ€” i.e. the ones that work. is_long_running flags everything past 30 days.

Can I get ad reach, impressions, and spend?

Yes, where Meta publishes it. Reach, impressions, and spend are disclosed for ads about social issues, elections, or politics, and for ads delivered in the EU/UK. Enable Scrape ad details to also pull audience_total_reach, age, and gender for those ads. Standard commercial ads won't have these numbers โ€” that's a limitation of the Ad Library, not the scraper.

How many ads can I scrape?

As many as you want โ€” set count to your target (it defaults to 100; use 0 for no limit) and limitPerSource to cap each URL. The scraper paginates through all available results.

Why are some fields empty?

Meta only publishes certain fields (reach, spend, impressions, transparency) for specific ad types and regions. Empty values mean Meta didn't disclose them for that ad โ€” the scraper returns exactly what the Ad Library exposes.

Can I download images and videos from the ads?

The output includes direct URLs to every image and video in each ad (image_urls, video_urls, including carousel cards). Download them from those URLs with any HTTP client or your automation tool.


Related scrapers

Building a wider competitive-intelligence or data pipeline? Pair this with our other Apify scrapers:


Keywords: facebook ads scraper, meta ads scraper, facebook ad library scraper, scrape facebook ads, facebook ad library api, competitor ad research, ad spy tool, ad creative scraper, meta ad library export.

You might also like

Reddit User Scraper - Profiles, Karma & Post History ($1.5/1k)

harshmaur/reddit-user-scraper

Scrape any Reddit user's profile from a username or URL โ€” karma, account age, and full post and comment history. Built for audience research, moderation vetting, and OSINT on public data. No API key, no login. Export to CSV, Excel, or JSON. From $1.50 per 1,000 results.

17

5.0

Subreddit Scraper - Whole Subreddits, No 1k Post Cap ($1.5/1k)

harshmaur/reddit-subreddit-scraper

Scrape entire subreddits โ€” thousands of posts per community, far beyond Reddit's ~1,000-post listing cap, by combining every sort and time window. Optional comments per post. Archive communities or build ML datasets. No API key. CSV/Excel/JSON. From $1.50 per 1,000 posts.

5

5.0

Reddit Comment Scraper - Export Comments & Replies ($1.5/1k)

harshmaur/reddit-comments-scraper

Scrape Reddit comments without the API โ€” every comment and nested reply from any post URL, 'load more comments' expanded automatically. Export to CSV, Excel, or JSON for sentiment analysis, AI training data, or research. No login, no rate limits. From $1.50 per 1,000 comments.

8

5.0

Reddit Search Scraper - Keyword & Brand Monitoring ($1.5/1k)

harshmaur/reddit-search-scraper

Search Reddit by keyword and scrape every matching post, comment, and subreddit. Monitor brand mentions, track topics, and find leads with sort and time-range filters โ€” all of Reddit or one community. No API key, no login. Export CSV/Excel/JSON. From $1.50 per 1,000 results.

8

5.0

Facebook Ad Library Scraper Monitoring Mode Meta Instagram Ads

scrapesage/facebook-ad-library-scraper

Scrape Facebook, Instagram & Meta ads from the public Meta Ad Library by keyword, Facebook Page, or URL. Get ad copy, creatives, videos, CTA, links, dates & advertiser data โ€” 50+ fields per ad, no login. Monitoring mode returns only NEW ads since your last run. Export JSON, CSV or Excel.

Meta Ads Library Scraper - Facebook & Instagram Ads API

groupoject/meta-ads-library-monitor

Monitor Meta Ad Library ads by keyword or Facebook page ID. Export ad copy, pages, platforms, dates, countries, spend/reach fields when available, and creative links.

Facebook Ads Library Scraper โ€” Meta Ads + Instagram Data

sourabhbgp/facebook-ads-scraper

Scrape Facebook Ads Library (Meta Ad Library) with 57 fields per ad โ€” no login needed. Get ad copy, images, videos, CTAs, run dates, Instagram followers, page verification, AI-content flag, EU transparency. Search by keyword, advertiser, or paste any Ad Library URL.

109

Facebook Ad Library Scraper

prodiger/facebook-ads-library-scraper

Scrape Facebook ads from Ad Library search results and ads run by Facebook pages. Pay per ad at $0.75 per 1,000 ads.

Meta (Facebook & Instagram) Ad Library Scraper

jaybird/meta-ad-library-scraper

Scrape any advertiser's Facebook & Instagram ads from Meta's Ad Library: creatives, copy, CTA, run dates. $3.50 per 1,000 ads โ€” no Meta API approval needed.

๐Ÿ‘ User avatar

Jaybird Technologies

19

Facebook Ads Library Scraper โ€” Meta Ad Spy Tool

dltik/facebook-ads-scraper

Scrape Facebook and Instagram ads from the Meta Ad Library. Search by keyword, page name or country. Get ad copy, creative text, page name, platforms, start dates and duration. Auto-enrichment with CTA detection, ad categorization and hashtag extraction. No API token needed. No proxy needed.