Meta | Facebook Ads Library Scraper + Ad Details avatar

Meta | Facebook Ads Library Scraper + Ad Details

Pricing

from $8.00 / 1,000 ad results

Go to Apify Store
Meta | Facebook Ads Library Scraper + Ad Details

Meta | Facebook Ads Library Scraper + Ad Details

Collect public ads, advertiser information, creatives, and changes from Meta (Facebook) Ads Library.

Pricing

from $8.00 / 1,000 ad results

Rating

0.0

(0)

Developer

Md Saif Ahmed

Md Saif Ahmed

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

18 hours ago

Last modified

Categories

Share

Meta | Facebook Ads Library Scraper

Collect public ads from the Meta Ads Library without login cookies. Search by keyword or advertiser Page ID, or paste an existing Ads Library URL. The Actor returns one structured record per ad with its creative, advertiser, delivery status, platforms, landing page, and media.

Use the optional Open ad details enrichment when you also need the transparency and audience fields that Meta makes available for a particular ad and country.

What can you use it for?

  • Research competitors and the ads they are currently running
  • Find advertising angles, copy, calls to action, images, and videos
  • Compare advertisers, landing pages, and offers across countries
  • Build a searchable archive of ads from selected brands or keywords
  • Monitor when ads appear, change, or stop running
  • Export ad data to CSV, Excel, JSON, XML, or your own integration

What data does it collect?

Standard mode is optimized for speed and collects data visible on each Ads Library result card:

  • Meta Library ID and source URL
  • Advertiser name, Page ID, and Page URL
  • Active or inactive status and start/end dates
  • Publisher platforms shown by Meta
  • Primary ad text, headline, description, and call to action
  • Destination and display URLs
  • Image and video URLs, creative variants, and structured media records
  • Disclaimer, funding entity, and public delivery metrics when present
  • First-seen, last-seen, and change-tracking metadata

When Open ad details is enabled, the Actor opens each ad's details panel and also attempts to collect:

  • Transparency by location
  • Targeted location, age, and gender information
  • Advertiser information
  • Advertiser, payer, and beneficiary information
  • Spend, impressions, reach, and delivery data

Meta only publishes some transparency fields for certain ad categories and countries. A field may therefore be empty even when detail enrichment completed successfully.

Quick start

  1. Open the Actor's Input tab.
  2. Choose one input method: paste an Ads Library URL, add search terms, or add advertiser Page IDs.
  3. Set the maximum number of ads and any filters you need.
  4. Leave Open ad details off for a faster standard run, or enable it for additional public transparency data.
  5. Click Start.
  6. Open the Dataset to preview, filter, download, or access the results through the Apify API.

No Facebook account or cookies are required.

Choose an input method

1. Paste an Ads Library URL

Use this when you have already configured a search on Facebook. Copy the full URL from the Ads Library and add it to Ads Library URLs.

{
"startUrls": [
{
"url": "https://www.facebook.com/ads/library/?active_status=active&ad_type=all&country=US&q=running%20shoes&search_type=keyword_unordered"
}
],
"maxAds": 100
}

The Actor preserves the filters contained in a pasted URL. The separate country, status, category, media, platform, and date fields are used to build searches from keywords or Page IDs; they do not replace parameters in a pasted URL.

2. Search by keyword

Enter one or more search terms. The Actor creates a search for every term and selected country.

{
"searchQueries": ["running shoes", "sportswear"],
"countries": ["US", "GB"],
"activeStatus": "active",
"mediaType": "video",
"maxAds": 100
}

3. Search by advertiser Page ID

Use Page IDs to collect ads from specific advertisers.

{
"pageIds": ["123456789012345"],
"countries": ["US"],
"activeStatus": "all",
"maxAds": 100
}

You can provide multiple URLs, keywords, or Page IDs in one run. Duplicate Library IDs are saved only once.

Input options

OptionWhat it does
Ads Library URLsUses complete search or advertiser URLs copied from Meta Ads Library.
Search termsBuilds a search for each keyword and country.
Advertiser Page IDsCollects ads associated with selected Meta Pages.
CountriesSets two-letter country codes for generated keyword and Page ID searches.
Ad statusSelects all, active, or inactive ads.
Ad categorySelects all ads, political/issue, housing, employment, or credit ads.
Media typeSelects all media, images, videos, memes, or ads without image/video.
PlatformsFilters generated searches by Meta publisher platform.
Started after/beforeLimits generated searches by the ad start date.
Maximum adsSets the maximum number of unique records saved in the run.
Open ad detailsOpens every ad's detail panel for additional paid enrichment.
Download creative mediaStores public image and video files in the run's key-value store.
Save only new or changed adsOmits records that have not changed since a previous run.
Monitoring keyIdentifies the persistent watchlist shared by scheduled runs.
Maximum concurrencyControls how many browser pages are processed at once.
Proxy configurationEnables Apify residential or external proxies for greater reliability.

Standard collection or detail enrichment?

Standard collectionOpen ad details
DefaultYesNo
Result-card data and creativesYesYes
Landing page, CTA, images, and videosYesYes
Opens every details panelNoYes
Location, age, gender, advertiser/payer transparencyNoWhen Meta publishes it
SpeedFasterSlower
Price per saved ad$0.008$0.020 total

Detail enrichment adds $0.012 per saved ad to the standard result price. It is charged when the Actor processes the detail panel, including cases where Meta does not publish optional country-restricted fields.

Price examples

Saved adsStandardWith ad details
100$0.80$2.00
1,000$8.00$20.00

Your Apify run may also incur normal platform compute and proxy usage. The Actor respects the maximum charge set for the run and stops before starting a result that the remaining budget cannot cover.

Output example

Every Dataset item represents one unique Meta Library ad. Empty values mean Meta did not display that information for the ad.

{
"adArchiveId": "123456789012345",
"advertiserName": "Example Brand",
"advertiserPageId": "987654321098765",
"advertiserPageUrl": "https://www.facebook.com/example",
"activeStatus": "active",
"startedAt": "2026-09-01",
"endedAt": "",
"platforms": ["facebook", "instagram"],
"body": "Discover our new collection.",
"headline": "Shop the latest styles",
"description": "Free delivery this week",
"cta": "Shop Now",
"destinationUrl": "https://example.com/collection",
"displayUrl": "EXAMPLE.COM",
"imageUrls": ["https://.../creative.jpg"],
"videoUrls": [],
"variantCount": 1,
"transparencyByLocation": {},
"aboutAdvertiser": "Example Brand creates performance footwear.",
"advertiserAndPayer": {},
"firstSeenAt": "2026-09-16T10:00:00.000Z",
"lastSeenAt": "2026-09-16T10:00:00.000Z",
"changeType": "new",
"detailEnrichmentIncluded": false,
"sourceUrl": "https://www.facebook.com/ads/library/?id=123456789012345"
}

The media array provides structured creative records for integrations, while the flat image and video fields are convenient for CSV and Excel exports. If media download is enabled, the downloaded files are stored separately in the run's key-value store.

Monitor new and changed ads

Use this workflow to track an advertiser or search over time:

  1. Choose a stable Monitoring key, such as competitor-nike-us.
  2. Enable Save only new or changed ads.
  3. Save the Actor input as an Apify task.
  4. Schedule the task to run daily or at your preferred interval.

Runs with the same monitoring key share saved state. The first run returns all matched ads. Later runs return ads that are new or whose status, copy, destination, dates, creative URLs, or variant count changed. firstSeenAt, lastSeenAt, and changeType make the changes easy to track.

Use a different monitoring key for each independent advertiser, country, or watchlist.

Do I need a proxy?

No proxy is required for small tests, and the default example can run without one. For larger runs, repeated schedules, or more consistent coverage, enable an Apify residential proxy and choose a country that matches the search market.

Proxy rotation improves access reliability but does not guarantee that Meta will return every possible result. Coverage can vary with country, query, current Meta behavior, and public availability.

Frequently asked questions

Why are headline or CTA fields sometimes empty?

Some ad formats do not display a separate headline, description, or CTA. The Actor keeps those fields empty rather than copying unrelated text into them.

Why are age, gender, location, spend, or reach empty?

Meta restricts these fields by country and ad category. Enable Open ad details to attempt collection; values remain empty when the details panel does not publish them.

Why are several ads visually identical?

Meta can assign separate Library IDs to different deliveries or variants of the same creative. Each unique Library ID is a separate Dataset record.

Does the maximum ads value guarantee that many results?

It is an upper limit. A run can return fewer records if Meta exposes fewer matching ads, blocks additional loading, or the run reaches its time or charge limit.

Can the Actor download images and videos?

Yes. Enable Download creative media to save accessible public files in the key-value store. Media URLs are included in Dataset records even when downloads are disabled.

Limitations

  • The Actor collects only information publicly displayed by Meta Ads Library.
  • Detail fields vary by country, ad type, and Meta's disclosure rules.
  • Meta can change its interface, limit results, or temporarily challenge automated access.
  • Deleted ads and expired media URLs may no longer be accessible.
  • Results represent the data Meta returned during the run and are not a guarantee of complete platform coverage.

Use the Actor responsibly and follow applicable laws, Meta's terms, and Apify's platform policies.