{"name":"facebook-ad-lookup","id":"sfoln/facebook-ad-lookup","title":"Facebook Ad Details Scraper (by Ad ID)","description":"Get full details of Facebook and Instagram ads by Ad Library ID or URL: advertiser, dates, platforms, ad text, CTA, landing URL, media, EU reach and targeting, plus an optional video transcript. $5 per 1,000 ads; transcripts $4 per 1,000.","version":"0.1","status":"ready","family":{"id":"ad-intelligence","name":"Ad intelligence","description":"Ads and advertisers from the Meta Ad Library, Google Ads Transparency Center, and the TikTok and LinkedIn ad libraries.","actors":6},"categories":["SOCIAL_MEDIA","LEAD_GENERATION","ECOMMERCE"],"availability":"on_request","seoTitle":"Facebook Ad Library API by Ad ID – $5 per 1,000 Ads","seoDescription":"Facebook ad details scraper: look up Meta Ad Library ads by ID or URL and get text, CTA, landing page, media, EU reach and transcript. $5 per 1,000 ads.","summary":"Facebook Ad Details Scraper (by Ad ID) looks up Facebook and Instagram ads by Ad Library ID or URL and returns one clean record per ad: advertiser page, active status, start/end dates, platforms, ad text, headline, call to action, landing URL, media type, image and video URLs, and – for ads shown in the EU or political/issue ads – reach, targeted age/gender/locations, payer/beneficiary and the reach breakdown by country, age and gender. Optionally add a transcript of the ad's video. Built for ad intelligence tools, agencies, researchers and AI agents that already have ad IDs (for example from the Facebook Ads Library Scraper).","pricing":{"model":"pay-per-event","currency":"USD","billedBy":"Apify","freePlanMaxItemsPerRun":10,"events":[{"name":"facebook-ad-looked-up","title":"Facebook ad record","description":"Charged once per ad whose details were returned from the Meta Ad Library. A not-found ad is not charged unless the provider billed the lookup; invalid inputs and failed requests are not charged.","priceUsd":0.005},{"name":"facebook-ad-transcript","title":"Facebook ad video transcript","description":"Charged once per ad for which a video transcript was requested (includeTranscript, paid plans only) and actually returned. Ads without video or without a transcript are not charged.","priceUsd":0.004}]},"input":{"description":"Paste Meta Ad Library ad IDs or URLs. Each ad produces one dataset record with a `status` field.","required":["adIds"],"fields":[{"name":"adIds","title":"Ad archive IDs or Ad Library URLs","type":"array","required":true,"description":"Ad archive IDs (e.g. 1185617869915074) or Ad Library URLs such as https://www.facebook.com/ads/library/?id=1185617869915074, one per line. Accounts on the Apify free plan can process up to 10 ads per run.","prefill":["1185617869915074"],"editor":"stringList"},{"name":"includeTranscript","title":"Include video transcript","type":"boolean","required":false,"description":"Also return a transcript of the ad's video (native captions, or AI transcription for videos up to 2 minutes). Charged separately only when a transcript is returned.","default":false},{"name":"maxItems","title":"Max ads","type":"integer","required":false,"description":"Safety cap on how many ads are looked up in this run.","default":1000,"minimum":1,"maximum":10000},{"name":"concurrency","title":"Concurrency","type":"integer","required":false,"description":"Ads looked up in parallel (1–8).","default":4,"minimum":1,"maximum":8},{"name":"itemTimeoutSecs","title":"Time limit per ad (seconds)","type":"integer","required":false,"description":"Maximum time for one ad lookup, including the optional transcript (60–900).","default":240,"minimum":60,"maximum":900},{"name":"includeRaw","title":"Include raw upstream response","type":"boolean","required":false,"description":"Attach the unmodified upstream payload to each record under `raw` (larger output).","default":false}]},"exampleInput":{"adIds":["1185617869915074"]},"outputFields":[{"name":"input","type":"string | object","title":"Input","description":"The input query this record belongs to."},{"name":"status","type":"string","title":"Status","description":"ok | not_found | error | skipped_invalid | skipped_budget | skipped_free_plan"},{"name":"charged","type":"boolean","title":"Charged","description":"Whether this record incurred a pay-per-event charge."},{"name":"chargedEvent","type":"string","title":"Charged event","description":"Pay-per-event event charged for this record."},{"name":"source","type":"string","title":"Source","description":"Upstream data source (scrapecreators = ScrapeCreators API over the public ad library)."},{"name":"fetchedAt","type":"string","title":"Fetched at","description":"ISO timestamp."},{"name":"error","type":"object","title":"Error","description":"code / message when status is not ok."},{"name":"warnings","type":"array","title":"Warnings","description":"Non-fatal notes (e.g. stopped early)."},{"name":"adArchiveId","type":"string | null","title":"Ad archive ID","description":"Meta Ad Library ID of the ad."},{"name":"adLibraryUrl","type":"string | null","title":"Ad Library URL","description":"Public Ad Library link to the ad (snapshot)."},{"name":"pageId","type":"string | null","title":"Page ID","description":"Advertiser's Facebook page ID."},{"name":"pageName","type":"string | null","title":"Page name","description":"Advertiser's page name."},{"name":"pageUrl","type":"string | null","title":"Page URL","description":"Advertiser's Facebook page."},{"name":"pageLikeCount","type":"integer | null","title":"Page likes","description":"Page like count at fetch time."},{"name":"pageCategories","type":"array","title":"Page categories","description":"Page categories."},{"name":"isActive","type":"boolean | null","title":"Active","description":"Ad is currently running."},{"name":"startDate","type":"string | null","title":"Start date","description":"ISO date the ad started running."},{"name":"endDate","type":"string | null","title":"End date","description":"ISO date the ad stopped (or last seen) running."},{"name":"totalActiveTimeSecs","type":"integer | null","title":"Active time (s)","description":"Total active time in seconds when reported."},{"name":"platforms","type":"array","title":"Platforms","description":"Publisher platforms: facebook, instagram, audience_network, messenger, threads."},{"name":"adText","type":"string | null","title":"Ad text","description":"Primary text (body) of the ad; first card's body for multi-version ads."},{"name":"headline","type":"string | null","title":"Headline","description":"Link title / headline."},{"name":"linkDescription","type":"string | null","title":"Link description","description":"Text under the headline."},{"name":"linkUrl","type":"string | null","title":"Landing URL","description":"Destination link."},{"name":"displayUrl","type":"string | null","title":"Display URL","description":"Domain shown on the ad (caption)."},{"name":"ctaText","type":"string | null","title":"CTA text","description":"Call-to-action button text."},{"name":"ctaType","type":"string | null","title":"CTA type","description":"Call-to-action code, e.g. SHOP_NOW, LEARN_MORE."},{"name":"mediaType","type":"string | null","title":"Media type","description":"image | video | multi_images | carousel | dco | dpa | text …"},{"name":"imageUrls","type":"array","title":"Image URLs","description":"Creative images (original resolution where available)."},{"name":"videoUrls","type":"array","title":"Video URLs","description":"Creative videos (HD where available)."},{"name":"thumbnailUrl","type":"string | null","title":"Thumbnail","description":"Video preview image or resized first image."},{"name":"cardCount","type":"integer | null","title":"Cards","description":"Number of carousel / version cards."},{"name":"collationCount","type":"integer | null","title":"Versions","description":"Number of ad versions grouped under this ad (search results only; usually null for a lookup)."},{"name":"languages","type":"array","title":"Languages","description":"Ad languages when the library reports them."},{"name":"impressionsText","type":"string | null","title":"Impressions","description":"Impressions range text when Meta discloses it (political / EU ads)."},{"name":"reachEstimate","type":"integer | null","title":"Reach estimate","description":"Estimated reach when disclosed."},{"name":"spendLower","type":"number | null","title":"Spend (lower)","description":"Lower spend bound when disclosed (political ads)."},{"name":"spendUpper","type":"number | null","title":"Spend (upper)","description":"Upper spend bound when disclosed."},{"name":"currency","type":"string | null","title":"Currency","description":"Currency of the spend bounds."},{"name":"targetedCountries","type":"array","title":"Targeted countries","description":"Targeted / reached or political countries when reported."},{"name":"targetsEu","type":"boolean | null","title":"Targets EU","description":"EU transparency data present."},{"name":"euTotalReach","type":"integer | null","title":"EU reach","description":"Total EU reach."},{"name":"audienceAgeMin","type":"integer | null","title":"Audience age min","description":"Targeted minimum age."},{"name":"audienceAgeMax","type":"integer | null","title":"Audience age max","description":"Targeted maximum age."},{"name":"audienceGender","type":"string | null","title":"Audience gender","description":"Targeted gender."},{"name":"audienceLocations","type":"array","title":"Audience locations","description":"Targeted locations."},{"name":"payers","type":"array","title":"Payers","description":"Who paid for the ad (EU transparency; ad details only)."},{"name":"beneficiaries","type":"array","title":"Beneficiaries","description":"Who benefits from the ad (EU transparency; ad details only)."},{"name":"reachBreakdown","type":"array","title":"Reach breakdown","description":"EU reach by country / age range / gender."},{"name":"transcript","type":"string | null","title":"Transcript","description":"Video transcript (only with includeTranscript; null when none)."},{"name":"transcriptCharged","type":"boolean | null","title":"Transcript charged","description":"facebook-ad-transcript was charged for this record."}],"outputExample":{"input":"https://www.facebook.com/ads/library/?id=702369045530963","adArchiveId":"702369045530963","adLibraryUrl":"https://www.facebook.com/ads/library?id=702369045530963","pageId":"166258896830103","pageName":"Porto Montenegro","pageUrl":"https://www.facebook.com/61575286107814/","pageCategories":["Marina"],"isActive":false,"startDate":"2025-05-22T07:00:00.000Z","endDate":"2025-05-23T07:00:00.000Z","totalActiveTimeSecs":41782,"platforms":["facebook","instagram","audience_network"],"adText":"Reflections ripple, light gathers,\nand tomorrow brings a new rhythm to the square.\n\nOne day until the Grand Opening of Boka Place.","headline":null,"linkUrl":"https://www.portomontenegro.com/attractions-events/boka-place-grand-opening/","displayUrl":"www.portomontenegro.com","ctaText":"Learn more","ctaType":"LEARN_MORE","mediaType":"video","videoUrls":["https://video.xx.fbcdn.net/…hd.mp4"],"thumbnailUrl":"https://scontent.xx.fbcdn.net/…jpg","targetsEu":true,"euTotalReach":1657,"audienceAgeMin":18,"audienceAgeMax":65,"audienceGender":"All","audienceLocations":["Dubrovnik, Croatia"],"payers":["Porto Montenegro"],"beneficiaries":["Porto Montenegro"],"reachBreakdown":[{"country":"HR","ageRange":"25-34","male":374,"female":238,"unknown":8}],"transcript":"One day until the grand opening of Boka Place…","transcriptCharged":true,"status":"ok","charged":true,"chargedEvent":"facebook-ad-looked-up","source":"scrapecreators","fetchedAt":"2026-10-14T10:00:00.000Z"},"faq":[],"mcpExamplePrompt":"Look up the Facebook ad with Ad Library ID 1185617869915074 and tell me its advertiser, ad text, call to action, landing page and start date.","related":["ad-library-scraper","facebook-ads-search","google-ads-transparency","linkedin-ads-search","tiktok-ads-search"],"urls":{"site":"https://www.sfoln.com/actors/facebook-ad-lookup/","siteJson":"https://www.sfoln.com/actors/facebook-ad-lookup.json","siteMarkdown":"https://www.sfoln.com/actors/facebook-ad-lookup.md","runSync":"https://api.apify.com/v2/actors/sfoln~facebook-ad-lookup/run-sync-get-dataset-items","runAsync":"https://api.apify.com/v2/actors/sfoln~facebook-ad-lookup/runs","mcp":"https://mcp.apify.com?tools=sfoln/facebook-ad-lookup","requestAccess":"mailto:contact@sfoln.com?subject=Access%20request%3A%20Facebook%20Ad%20Details%20Scraper%20(by%20Ad%20ID)%20(sfoln%2Ffacebook-ad-lookup)&body=Please%20publish%20facebook-ad-lookup.%20What%20we%20plan%20to%20use%20it%20for%3A"},"publisher":{"name":"SFOLN LLC","apifyUsername":"sfoln","url":"https://www.sfoln.com","apifyProfile":"https://apify.com/sfoln","email":"contact@sfoln.com"},"generatedAt":"2026-10-22T04:28:58.477Z"}