
Instagram Reel Scraper
scrape.ly/store/echofield/instagram-reel-scraperSocial mediaVideos
1 monthly user

Extract public reviews from Facebook pages. Returns review text, recommendation, timestamp, likes, comments, and basic reviewer details.
Extract public reviews from Facebook pages without a Facebook account. Paste a page URL and get the review text, whether the reviewer recommends the page, the time posted, like and comment counts, and the reviewer's public name and profile link.
Reviews cost $1.40 per 1,000, and a 10-review run finished in about 9 seconds in our tests.
isRecommended, plus tags such as "Child-friendly" when Facebook shows them.3 months./reviews, including profile.php?id= links.| Field | Type | Description |
|---|---|---|
startUrls | array (required) | Public page URLs, with or without /reviews. One page per URL. A remote text list of URLs is accepted too. |
resultsLimit | integer | Newest reviews to save for each page. Default 10. |
onlyReviewsNewerThan | string | YYYY-MM-DD, an ISO timestamp, or a relative value such as 1 year or 3 months. Times are UTC. |
proxyConfiguration | object | Datacenter by default. Choose residential if a page refuses the datacenter pool. |
{
"startUrls": [
{ "url": "https://www.facebook.com/copperkettleyqr/reviews" }
],
"resultsLimit": 10,
"onlyReviewsNewerThan": "1 year"
}
Each review is one dataset row.
| Field | Description |
|---|---|
text | Review text. |
isRecommended | Whether the reviewer recommends the page. |
date | When the review was posted (UTC). |
likesCount, commentsCount | Public like and comment counts. |
user | Reviewer id, name, profileUrl, profilePic. |
url | Link to the review post. |
tags | Tags shown with the review. |
facebookUrl, pageName, facebookId | The page the review belongs to. |
comments, photos | Present when the review has public comments or photos. |
Example item (trimmed):
{
"facebookUrl": "https://www.facebook.com/copperkettleyqr",
"legacyId": "3433562433615151",
"user": {
"id": "1000000000000002",
"name": "Jane Doe",
"profileUrl": "https://www.facebook.com/jane.doe.example"
},
"date": "2024-09-11T17:57:58.000Z",
"url": "https://www.facebook.com/jane.doe.example/posts/pfbid0ExampleReviewId",
"isRecommended": true,
"text": "They offers a cozy atmosphere, friendly service, and a menu of tasty comfort food at reasonable prices. ...",
"tags": ["Child-friendly", "Fast delivery"],
"likesCount": 0,
"commentsCount": 0,
"facebookId": "100064027242849",
"pageName": "copperkettleyqr",
"inputUrl": "https://www.facebook.com/copperkettleyqr"
}
A page that is missing or not public is returned as one row with error set to not_available.
Each saved review costs $0.0014, which is $1.40 per 1,000 reviews. Platform usage (compute and proxy) is billed on top.
Worked example: a 10-review run with datacenter proxy at the default 2 GB memory costs about $0.017 in total, which is $0.014 in review fees plus about $0.003 of platform usage.
Is it legal to scrape Facebook reviews? The actor reads only publicly visible reviews. You are responsible for using the data in line with applicable law, Facebook's terms and privacy rules.
Do I need a Facebook account or proxy? No account. Proxies are included.
Why are there fewer reviews than the page shows? The count on the page includes reviews that are not public. The actor saves reviews that load without an account.
Which URLs work?
A public page URL, with or without /reviews, including profile.php?id= links. A post URL, a group URL, or a link that is not Facebook is skipped.
What if a field is empty?
comments and photos only appear on reviews that have them, and tags only when Facebook shows tags.
Can I schedule it or use the API? Yes. Use a schedule with the date filter to catch new reviews.
Every field below can be set in the run form, passed through the API, or saved as a task. Unset fields fall back to the defaults shown.
startUrlsarrayRequiredFacebook URLs
Public Facebook page URLs, with or without /reviews. One page per URL.
resultsLimitintegerOptionaldefault 10Maximum reviews
How many reviews to save per page. The newest reviews are saved first.
Limit reviews to a time window.
onlyReviewsNewerThanstringOptionalReviews newer than
Keep reviews posted after this time. Use YYYY-MM-DD, an ISO timestamp, or a relative value such as 1 year or 3 months. Times are UTC.
proxyConfigurationobjectOptionaldefault {"useScrapelyProxy":true,"scrapelyProxyGroups":["DATACENTER…Proxy configuration
Datacenter proxies are the default. Use residential only when Facebook refuses the datacenter pool.
Every run writes its results to a dataset. Preview it in the dashboard, then export it or read it through the API.
| Field | Type | Description |
|---|---|---|
| text | string | null | Text of the review. |
| isRecommended | boolean | null | Whether the reviewer recommends the page. |
| date | string | null | When the review was posted, in UTC. |
| likesCount | integer | null | Like count reported for the review. |
| commentsCount | integer | null | Number of comments on the review. |
| url | string | null | Direct link to the review. |
| facebookUrl | string | null | Facebook page the review belongs to. |
| pageName | string | null | Page username. |
| legacyId | string | null | Numeric id of the review post. |
| facebookId | string | null | Numeric Facebook id of the page. |
| error | string | null | Set when this page did not open a public reviews tab. |
| errorDescription | string | null | Why this page did not return reviews. |
You pay for the events the actor reports, such as each result or page it produces. Platform usage is included in the event prices.
| Event | Charged when | Price |
|---|---|---|
| Review | One public review saved from a Facebook page. | $0.0014 |
Run this actor from your own code. Swap in your API token and the examples work as-is.
import { ScrapelyClient } from 'scrapely-client'
const client = new ScrapelyClient({ token: process.env.SCRAPELY_TOKEN })
// Start the actor and wait for the run to finish.
const run = await client.actor('echofield/facebook-reviews-scraper').call({
"startUrls": [
{
"url": "https://www.facebook.com/copperkettleyqr/reviews"
}
],
"resultsLimit": 10,
"onlyReviewsNewerThan": "2024-01-01",
"proxyConfiguration": {
"useScrapelyProxy": true,
"scrapelyProxyGroups": [
"DATACENTER"
]
}
})
// Read the dataset the run produced.
const { items } = await client.dataset(run.defaultDatasetId).listItems()
console.log(items)Tokens live in your account settings. Keep them server-side: a token carries the full permissions of your account.
Connect the Scrape.ly MCP server once and your agent can run this actor as a tool. Pick your tool:
Fetch scrape.ly/agents.md and run echofield/facebook-reviews-scraperPaste into Claude Code, Codex, Cursor or any AI agent. It signs you in once in the browser.
{
"mcpServers": {
"scrapely": {
"url": "https://api.scrape.ly/mcp?tools=actors,runs,storage,docs&actors=echofield/facebook-reviews-scraper"
}
}
}No key in the file: your client opens the browser to sign you in the first time it connects.
Inputs the developer prepared for common jobs. Open one to see its input, then copy it to your account to run it as-is or adjust it.
Recommendations and reviews of a Facebook business page.
Paste any page link and get its reviews.
Scrape.ly gives you the infrastructure, the tooling, and the team to extract, process, and operationalize web data at any scale. Setup takes minutes. The advantage lasts forever.