ParseForge Scrapers

Facebook Reels Scraper

parseforge/facebook-reels-scraper

Social mediaVideosAutomation

Scrapes public Facebook Reels into flat rows with exact play, reaction, comment and share counts, caption, hashtags, creator profile, audio track and direct HD/SD video URLs.

Run this scraper See the API call
Total runs
18
Bookmarked
0
Last modified
8 days ago

This scraper was last updated on .

What does the Facebook Reels Scraper return?

ParseForge Banner

๐ŸŽฌ Facebook Reels Scraper

๐Ÿš€ Export Facebook Reels data in seconds. Paste a reel link, get 41 fields back in under a second, including the exact play count (753,841) instead of the rounded "753K" every other tool reports.

Facebook Reels carry the numbers that matter for short form video strategy, but the platform only ever shows them rounded. This Actor reads the public reel page directly and returns each reel as one flat row: exact plays, reactions, comments and shares, the full caption with structured hashtags and mentions, the creator profile, the audio track, and direct HD and SD video URLs. No login, no API key, no Graph API app review.

Every run returns 41 fields per reel with exact integer counters for plays, reactions, comments and shares. A single reel takes roughly 0.6 seconds to collect. Turn on related reel discovery and each link you supply expands into up to 5 more reels by the same creator, each one fetched individually so it carries the same exact counters as a reel you asked for by name.

๐ŸŽฏ Target Audience ๐Ÿ’ก Primary Use Cases
Social media managers Benchmark reel performance against competitors with real numbers, not rounded ones.
Short form video creators Study which hooks, lengths and audio tracks earn plays in your niche.
Influencer marketing teams Verify a creator's actual reach before signing a deal.
Media researchers and archivists Preserve public reels with their captions, engagement and video files.

๐Ÿ“‹ What the Facebook Reels Scraper does

๐Ÿ’ก Why it matters: Facebook rounds every counter it shows you. "753K plays" could be 753,001 or 753,999. When you are comparing two creators, ranking your own back catalogue, or reporting a campaign result, that rounding hides exactly the differences you are trying to measure.

  • ๐Ÿ”ข Exact counters. Plays, reactions, comments and shares come back as real integers (753841, 179438, 3483, 17843), not as display strings.
  • ๐Ÿ”— Flexible input. Accepts facebook.com/reel/ID links, facebook.com/watch/?v=ID links, and bare numeric reel IDs.
  • ๐Ÿงต Structured captions. Hashtags, mentions and external links are parsed out of the caption into their own arrays, with the profile URL and ID resolved for every mention.
  • ๐ŸŽต Audio intelligence. Track title, original audio flag, soundtrack ID and cover art for the sound behind each reel.
  • ๐ŸŽฅ Direct video access. HD and SD progressive URLs plus the DASH manifest, ready to download or probe.
  • ๐Ÿ” Related reel discovery. Optionally expand each link into more reels by the same creator.
  • ๐Ÿ“ฆ One fixed schema. Every reel lands with the same 41 columns, so your spreadsheet or database mapping never breaks.

๐ŸŽฌ Full Demo (๐Ÿšง Coming soon)

A short walkthrough video is in production and will land here.

๐Ÿ“Š Output

Each reel becomes one flat row. These are the main fields:

Field Type Description
๐Ÿ–ผ imageUrl string Reel thumbnail image.
๐Ÿ†” reelId string Facebook's numeric reel ID.
๐Ÿ”— url string Canonical reel link.
๐Ÿ“ caption string Full caption text as the creator wrote it.
๐Ÿ‘ค authorName string Creator display name.
๐Ÿท authorUsername string Handle, when the reel comes from a linked Instagram account.
๐ŸŒ authorProfileUrl string Creator profile link.
๐Ÿชช authorId string Creator numeric ID.
๐Ÿงญ authorType string FACEBOOK_USER, SHADOW_IG_USER or FACEBOOK_PAGE.
โœ… authorIsVerified string Yes or No.
๐Ÿ–ผ authorProfilePicUrl string Creator avatar.
๐Ÿ•’ publishedAt string Exact publish time in ISO 8601.
โฑ publishedTimestamp integer Publish time as a Unix epoch.
โ–ถ๏ธ viewCount integer Exact play count.
โค๏ธ reactionCount integer Exact total reactions.
๐Ÿ’ฌ commentCount integer Exact comment count.
๐Ÿ” shareCount integer Exact share count.
โณ durationSeconds number Reel length in seconds.
๐Ÿ“ width / height / aspectRatio number Video dimensions.
๐ŸŽฅ videoHdUrl / videoSdUrl string Direct progressive video URLs.
๐Ÿ“ก dashManifestUrl string DASH manifest for adaptive playback.
๐ŸŽต audioTrackTitle string Audio track behind the reel.
๐ŸŽผ isOriginalAudio string Yes when the creator's own audio.
๐Ÿ–ผ audioArtUrl string Audio cover art.
๐Ÿ”€ isRemixable / isReshare string Yes or No.
๐Ÿ”Ž isRelatedReel string No for reels you asked for, Yes for discovered ones.
๐Ÿ“ฎ postId string Underlying post ID.
#๏ธโƒฃ hashtags array Hashtags parsed from the caption.
๐Ÿ‘ฅ mentions array Tagged profiles with name, URL and ID.
๐ŸŒ externalLinks array External URLs found in the caption.
๐Ÿ•’ scrapedAt string Collection timestamp.
โŒ error string Populated only on a failed reel.

Three real records from a live run:

{
  "imageUrl": "https://scontent-iad3-2.xx.fbcdn.net/v/t51.71878-10/497894651_24...",
  "reelId": "1000004045579882",
  "url": "https://www.facebook.com/reel/1000004045579882",
  "caption": "NEXT CONCERT: JUNE 6th  IN HAMBURG! ๐Ÿ‘‰๐Ÿป https://www.ticketlotse.com/event/?id=1535",
  "authorName": "Levi Schechtmann",
  "authorProfileUrl": "https://www.facebook.com/levi.schechtmann.1",
  "authorId": "100006199232258",
  "authorType": "FACEBOOK_USER",
  "authorIsVerified": "No",
  "publishedAt": "2025-05-16T13:16:02.000Z",
  "viewCount": 753841,
  "reactionCount": 179438,
  "commentCount": 3483,
  "shareCount": 17843,
  "durationSeconds": 127.066,
  "width": 1080,
  "height": 1920,
  "audioTrackTitle": "Levi Schechtmann ยท Original audio",
  "isOriginalAudio": "Yes",
  "isRelatedReel": "No",
  "hashtags": [],
  "externalLinks": ["https://www.ticketlotse.com/event/?id=1535"]
}
{
  "reelId": "1000000668639013",
  "url": "https://www.facebook.com/reel/1000000668639013",
  "caption": "APLICAร‡รƒO DE LASTEX NO CROCHE #crochetinspiration #crochet #crochรช #croche",
  "authorName": "croche_art_requinte",
  "authorProfileUrl": "https://www.facebook.com/simonelnascimemto",
  "authorType": "FACEBOOK_USER",
  "publishedAt": "2025-06-12T20:49:45.000Z",
  "viewCount": 6814,
  "reactionCount": 68,
  "commentCount": 3,
  "shareCount": 19,
  "durationSeconds": 30.899,
  "audioTrackTitle": "Brent Bourgeois ยท In The Garden",
  "isOriginalAudio": "Yes",
  "hashtags": ["crochetinspiration", "crochet", "crochรช", "croche"]
}
{
  "reelId": "1000003431344836",
  "url": "https://www.facebook.com/reel/1000003431344836",
  "authorName": "Valerie Lee",
  "authorUsername": "oatslady",
  "authorProfileUrl": "https://www.instagram.com/_u/oatslady",
  "authorType": "SHADOW_IG_USER",
  "publishedAt": "2024-07-04T12:22:35.000Z",
  "viewCount": 13637,
  "reactionCount": 2192,
  "commentCount": 0,
  "shareCount": 206,
  "durationSeconds": 11.366,
  "audioTrackTitle": "Adam Griffith ยท Bliss",
  "hashtags": ["ricekrispytreats", "chocolatepeanutbutter", "ricekrispies", "snacks", "easyrecipes"],
  "mentions": [
    { "name": "oatslady", "url": "https://www.instagram.com/_u/oatslady", "id": "17841400708581687" }
  ]
}

โœจ Why choose this Actor

  • Exact numbers, not rounded ones. Most Facebook Reels tools hand you the same "753K" the page shows. This Actor returns 753,841.
  • Fast and light. It reads the public reel page over plain HTTP. No browser, no 4 GB of RAM, roughly 0.6 seconds per reel.
  • Honest about its limits. The section below tells you exactly what this Actor cannot reach, before you spend anything.
  • Clean, stable schema. 41 columns, identical on every row, with sentinels instead of nulls so CSV and Excel imports stay predictable.
  • No credentials. No Facebook login, no Graph API app review, no page access token.

๐Ÿ“ˆ How it compares to alternatives

This Actor Typical Facebook Reels scrapers
Play count precision Exact integer (753,841) Rounded display string ("753K")
Share count precision Exact integer (17,843) Rounded ("17K")
Input Reel URLs, watch URLs, bare reel IDs Usually page or profile URLs
Whole page or profile catalogue No. See the ceiling below Yes, most competitors do this
Runtime per reel About 0.6 seconds Several seconds, browser based
Memory 512 MB Commonly 4 GB
Login required No No

The ceiling, stated plainly. This Actor works from reel links, not from page or profile links. Facebook serves a page's Reels tab, its hashtag pages and its video search entirely through client side rendering, with no reel data in the page source, so a logged out HTTP client cannot enumerate a creator's full reel catalogue. What Facebook does publish on every reel page is up to 5 more reels by the same creator, and the includeRelatedReels option collects those. That expansion saturates quickly: in testing, following the suggestions from one creator surfaced about 6 to 7 distinct reels before Facebook stopped offering new ones. If you need every reel a page has ever posted, a browser based Actor is the right tool and this one is not.

๐Ÿš€ How to use

  1. Create a free Apify account. New accounts get $5 in free credit. Sign up here.
  2. Open the Actor and go to the Input tab.
  3. Paste your reel links into Facebook Reel URLs. A facebook.com/reel/... link, a facebook.com/watch/?v=... link or a bare numeric reel ID all work.
  4. Set Max Items to the number of reels you want back.
  5. Optionally turn on related reel discovery to expand each link into more reels by the same creator.
  6. Click Start and watch the log.
  7. Download your data from the Storage tab as CSV, JSON, Excel or XML, or pull it from the API.

๐Ÿ’ผ Business use cases

๐Ÿ“Š Competitive benchmarking.

A social media manager at a beverage brand collects the top reels from four competitor accounts each month. Because the play and share counts come back exact, quarter over quarter movement of a few thousand plays is visible instead of being flattened into the same "1.2M" every month.

๐Ÿค Influencer vetting.

An influencer marketing team receives a media kit claiming "over 500K average views per reel". They run the creator's last dozen reel links through the Actor and compare the claimed figure against the exact play counts before signing.

๐ŸŽฏ Creative research.

A short form video studio pulls reels from a niche, then correlates durationSeconds, isOriginalAudio and audioTrackTitle against viewCount to work out which lengths and sounds actually travel in that category.

๐Ÿ—„๏ธ Campaign archival.

An agency closing out a campaign captures every reel it produced, with captions, hashtags, engagement counts and the direct video URLs, so the results are preserved after the client's page changes hands.

๐Ÿ”Œ Automating Facebook Reels Scraper

  • Make: trigger a run when a new reel link lands in a spreadsheet, then route the row into your reporting sheet.
  • Zapier: connect the Actor to thousands of apps and start a run from any trigger.
  • Slack: post a summary of each run into a team channel so performance updates arrive where the team already is.
  • Airbyte: sync the dataset into your warehouse for long term trend analysis.
  • GitHub: schedule runs from an Actions workflow and commit the results alongside your reporting code.
  • Google Drive: drop each run's CSV into a shared folder for the wider team.

๐ŸŒŸ Beyond business use cases

  • Research: media and communications researchers building corpora of short form video and its measured reach.
  • Personal: creators auditing their own back catalogue to find which reels actually performed.
  • Non-profit: advocacy organisations measuring how far a public awareness reel travelled.
  • Experimentation: developers prototyping recommendation or virality models against real engagement numbers.

๐Ÿค– Ask an AI assistant about this scraper

Paste this into ChatGPT, Claude or any assistant to plan your run:

I am using the ParseForge Facebook Reels Scraper on Apify. It takes Facebook reel URLs, watch URLs or bare reel IDs and returns 41 fields per reel, including exact play, reaction, comment and share counts, the caption with parsed hashtags and mentions, the creator profile, the audio track, and direct HD and SD video URLs. It cannot enumerate a whole page or profile catalogue, though it can expand each reel into up to 5 more reels by the same creator. Help me design an input for [describe your goal].

โ“ Frequently Asked Questions

๐Ÿ”‘ Do I need a Facebook login or API key? No. The Actor reads public reel pages. There is no login, no cookie and no Graph API token involved.

โ–ถ๏ธ Why do you say the play counts are exact? Facebook formats its counters server side according to the language you request. In English it rounds to "753K". This Actor requests a locale that never abbreviates, so the same reel returns 753,841. You can switch back to the rounded values with the Counter format option if you prefer them.

๐Ÿ“„ Can I scrape every reel from a Facebook page? No. Facebook renders a page's Reels tab entirely in the browser, so there is no reel data in the page source for a logged out client to read. Turn on related reel discovery to expand a reel into roughly 6 to 7 reels by the same creator, or use a browser based Actor if you need a full catalogue.

๐Ÿ”— What input formats are accepted? https://www.facebook.com/reel/1000004045579882, https://www.facebook.com/watch/?v=1000004045579882, and a bare 1000004045579882 all resolve to the same reel.

๐Ÿ’ฌ Does it return the comments themselves? No. Facebook does not include comment text in the public reel page, only the comment count. Use the Facebook Comments Scraper for comment bodies.

๐ŸŽฅ Are the video URLs permanent? No. Facebook signs its CDN URLs and they expire after a few hours. Download the file during or shortly after the run if you need to keep it.

๐Ÿ“Š Why is viewCount sometimes "Not Disclosed"? Some reels do not publish a play count at all. When Facebook shows no figure, the Actor reports the sentinel rather than inventing one.

๐Ÿท Why is authorUsername often "Not Disclosed"? A handle only exists when the reel was cross posted from a linked Instagram account (authorType is SHADOW_IG_USER). Native Facebook profiles have no username in this payload, so authorProfileUrl is the identifier to use.

๐ŸŒ Do I need a proxy? No. Facebook serves this data to ordinary datacenter traffic and the Actor runs without a proxy by default. Enable Apify Proxy if you are running at high volume.

โšก How fast is it? About 0.6 seconds per reel. A five reel run finishes in roughly six seconds including startup.

๐Ÿ”ข What happens if a reel is deleted or private? The Actor writes a row containing only an error message explaining that the reel is unavailable. Error rows are never billed.

๐Ÿ“ฆ What export formats are available? CSV, JSON, Excel and XML from the Storage tab, or straight from the Apify API.

๐Ÿ”Œ Integrate with any app

Every run's dataset is available through the Apify API, so you can pull results into any language or platform that speaks HTTP. Apify also ships official clients for JavaScript and Python, plus native integrations for Make, Zapier, Airbyte, Slack, GitHub and Google Drive.

๐Ÿ”— Recommended Actors

๐Ÿ’ก Pro Tip: browse the complete ParseForge collection.

๐Ÿ†˜ Need Help? Open our contact form

โš ๏ธ Disclaimer: This is an independent tool, not affiliated with or endorsed by Facebook or Meta. It collects only publicly available data.

What input does the Facebook Reels Scraper accept?

FieldTypeWhat it doesDefault
startUrls required array Facebook Reel links to scrape. Accepts facebook.com/reel/ID, facebook.com/watch/?v=ID, share/r/ links, or a bare numeric reel ID. [{"url":"https://www.facebook.com/reel/1
maxItems integer Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000 10
includeRelatedReels boolean Every reel page also ships up to 5 more reels by the same creator. Turn this on to scrape them too, until Max Items is reached. Each one is fetched individually so it carries the same exact play count as a requested reel. Facebook stops offering new suggestions after roughly 6-7 reels per creator, so this expands a seed, it does not enumerate a full catalogue. false
resultLanguage string (2 options) Facebook formats its counters server-side by language. Exact returns precise play, reaction and share counts (753840). Abbreviated returns Facebook's rounded display values (753K). Exact is recommended and is what the sample output shows. it-IT
maxRequestRetries integer How many times to retry a reel that returns a non-200 response before recording it as an error row. 3
proxyConfiguration object Facebook serves this data to plain datacenter egress, so the Actor runs without a proxy by default. Enable Apify Proxy if you are scraping at high volume or hitting rate limits. {"useApifyProxy":false}

How much does the Facebook Reels Scraper cost?

from $3.38 per 1,000 results

Charged forWhat it isPrice each
Reel scraped Charged once per Facebook Reel returned. Failed or unavailable reels are never charged. $0.00338 to $0.0045

Tiered: the lower figure is the price on a higher Apify plan. Billing and the free credit live on Apify.

How do I call the Facebook Reels Scraper API?

One POST returns the dataset directly. Same shape for every scraper in the library, so swapping the slug is the only change.

POST ยท run and get results
curl -X POST "https://api.apify.com/v2/acts/parseforge~facebook-reels-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "startUrls": [
      {
        "url": "https://www.facebook.com/reel/1000004045579882"
      }
    ],
    "maxItems": 10,
    "includeRelatedReels": false,
    "resultLanguage": "it-IT",
    "maxRequestRetries": 3
  }'

What example inputs can I use?

Use these inputs to see how a run is configured.

input.json
{
  "startUrls": [
    {
      "url": "https://www.facebook.com/reel/1000004045579882"
    }
  ],
  "maxItems": 10,
  "includeRelatedReels": false,
  "resultLanguage": "it-IT",
  "maxRequestRetries": 3
}

What do users say about the Facebook Reels Scraper?

No reviews yet. Be the first.

How do I report an issue with the Facebook Reels Scraper?

We build and maintain this scraper, so a problem with it comes to us. Report it on the Apify listing and the thread stays attached to the scraper where the next person can find it: open an issue.

Broken and urgent, or you would rather not post in public? Write to parseforge@protonmail.com and it reaches the people who wrote it.

What related scrapers can I use?

Run Facebook Reels Scraper on Apify All scrapers