Facebook Reviews Scraper — Reviews, Emails & Phones
Pricing
from $1.50 / 1,000 review scrapeds
Facebook Reviews Scraper — Reviews, Emails & Phones
Collect source-returned Facebook page reviews and ratings; accessible coverage varies by page. Bulk export: JSON, CSV, Excel and API. PPE: from $1.2/1K review results; start fee, usage extra; mode rates differ. Optional webhook delivery.
Pricing
from $1.50 / 1,000 review scrapeds
Rating
0.0
(0)
Developer
Apivault Labs
Maintained by CommunityActor stats
0
Bookmarked
7
Total users
1
Monthly active users
21 days ago
Last modified
Categories
Features
Share
Facebook Reviews Scraper — Page Summaries & Public Recommendations
Extract public Facebook page rating summaries and contacts, and accept individual reviews only when the source provides explicit review evidence tied to the requested page.
Verified on 11 October 2026: public recommendation texts, positive/negative verdicts, authors, dates and attached photos were accessible on Porto’s Bakery and The Copper Kettle Restaurant without login. Ordinary page posts are rejected. Access varies by page and request; a /reviews URL can also return the ordinary feed. In that case this Actor records REVIEW_SOURCE_UNAVAILABLE rather than inventing reviews.
Facebook recommendation research for local-business teams
Use this Facebook reviews scraper to inspect public page context and the individual recommendations that the source actually exposes. Local-business researchers can compare visible feedback, support teams can examine complaint wording, and analysts can export a bounded sample. Collection evidence does not independently establish the truth of a review, a purchase or a reviewer's identity.
| Workflow | Useful data | Interpretation to retain |
|---|---|---|
| Inspect a known business page | Page identity, recommendation summary, available intro contacts | A page summary is separately paid and can exist without individual reviews |
| Review public recommendations | Evidenced review text, date, author and recommendation signal | Ordinary page posts and comments are not customer-review records |
| Build a complaint worksheet | keywordFilter and available negative recommendation context | A selected sample is not the page's overall sentiment |
| Compare observed page samples | Page ID, collection scope and reviewAvailability | Reported total review count is not collected review count |
| Repeat an authorized observation | Scope-specific saved state and review keys | State retention and crashes prevent an exactly-once guarantee |
Begin with a known page URL and a small review cap. Keyword discovery depends on public search engines and should not be described as complete Facebook business search. Missing review access is different from a genuinely review-free page.
Small first run
{"startUrls": ["https://www.facebook.com/portosbakery"],"maxReviewsPerPage": 5,"maxResults": 5,"maxRetries": 0,"useResidentialProxy": false}
The verified example exposed three individual recommendations (two positive, one negative), plus the page name, recommendation percentage, reported review count, email and website. The negative recommendation kept its text and line breaks; a positive recommendation included an attached photo. The Dataset contains one paid page-summary plus available review rows, up to your review cap. A reported page review count is distinct from the number collected. Source values and availability can change between requests.
Output and limitations
The default Dataset contains only useful page-summary rows and individually verified review rows. Errors and run aggregates are separate, unbilled key-value records: SUMMARY and ERRORS.
- Page summaries: verified page identity, available recommendation percentage/count, category and public intro contacts. Missing values stay null. The Burbank location’s public About page provided an address and map coordinates; these are matched to the verified page ID. Star averages and business status were absent in the verified examples.
- Reviews: explicit recommendation or structured Review evidence, matching target page, independent reviewer, text and date when supplied. Ordinary posts, reactions and comments are excluded.
reviewAvailability: UNVERIFIEDmeans access was not established; it does not mean the page has no reviews.PUBLIC_WINDOWmeans some evidenced reviews were observed.coverageCompleteandfreshnessVerifiedare always false. There is no full-history or pagination guarantee.- Keyword discovery tries public search engines; it is not Facebook search and can fail independently.
SEARCH_SOURCE_UNAVAILABLEremains an unresolved result, rather than a fabricated empty business search. - English sentiment, keywords and topics use simple word heuristics plus explicit rating/recommendation signals. No AI model is used; other languages and sarcasm may be misclassified.
Filters, incremental runs and webhooks
keywordFilter matches review text case-insensitively. sinceDays requires a known publication date; unknown dates are excluded. maxReviewsPerPage and maxResults cap reviews, not separately paid page summaries; zero maxResults disables the review cap. Collection stops scheduling further pages when a review or charge cap is reached, although already running requests can incur resource costs.
For onlyNewSinceLastRun, supply stateStoreName for a key-value store you own. Review keys include the verified page ID and stable story ID, with a full-content fallback for structured Review objects. recommendationId is included when Facebook provides it. State is isolated by URL/search/filter scope and keeps the latest 50,000 keys; older reviews may reappear. State is written only after confirmed Dataset delivery. Do not run the same scope concurrently. A state-write failure is reported and stops further delivery. Exactly-once delivery across crashes is not guaranteed.
notifyWebhookUrl optionally receives each confirmed review as JSON over HTTPS. Delivery failures are recorded without undoing the Dataset row. Review media is included only if explicitly attached to that verified review.
Pricing and budgets
| Event | Free | Bronze | Silver | Gold / Platinum | Diamond |
|---|---|---|---|---|---|
| Verified review saved | $0.0025 | $0.002 | $0.0018 | $0.0015 | $0.0012 |
| Useful page summary saved | $0.005 | $0.004 | $0.0035 | $0.003 | $0.0025 |
Actor start costs $0.00005 per GB of configured memory, minimum one event. Platform and proxy usage are paid separately by the user. Existing rates are unchanged. A page summary can be billed even when its individual reviews are unavailable. Errors and aggregate records have no page/review fee. Explicit SDK events are tied to confirmed Dataset pushes; a capped push is not counted as delivered.
maxCostUsd guards event costs at your actual pricing tier, including one start event for the default 256 MB run; zero disables this local guard. It excludes platform/proxy costs. For larger memory, additional start units are charged by Apify. Use Apify's run charge limit as well. Residential fallback is optional and disabled by default; it cannot restore reviews when an otherwise readable page contains no review evidence.
MCP and AI agents
Call the Actor through Apify MCP with the same inputs, then read the Dataset plus SUMMARY and ERRORS. Treat PARTIAL, UNVERIFIED and REVIEW_SOURCE_UNAVAILABLE as incomplete coverage. Never infer missing reviews from zero collected rows. Input URLs must point to supported Facebook page hosts; credentials, foreign hosts and post/group URLs are rejected.
Feedback about a page where logged-out individual reviews are visible helps identify a reproducible source. Include the page URL and run ID in an Apify Store issue. Existing Tasks are preserved. This README-only update does not create, remove or republish Tasks.
Bounded review-collection examples
The sample page below was used in recorded public checks. Availability can change, and the current source may expose only a page summary or a limited recommendation window. These examples do not guarantee that matching reviews are available today.
Inspect a small public recommendation window
{"startUrls": ["https://www.facebook.com/portosbakery"],"maxReviewsPerPage": 3,"maxResults": 3,"maxConcurrency": 1,"maxRetries": 0,"useResidentialProxy": false,"includeMedia": false}
The review caps do not remove a separately billed page-summary row. Inspect each row type before counting recommendations. Media is omitted here to keep the first export focused on text and identity.
Search within observed recommendation text
{"startUrls": ["https://www.facebook.com/portosbakery"],"maxReviewsPerPage": 5,"maxResults": 5,"keywordFilter": "service","maxConcurrency": 1,"maxRetries": 0,"useResidentialProxy": false}
This is a case-insensitive text filter over available review evidence. No match can mean no matching text in the observed window, not that no customer ever discussed service. It does not search private or inaccessible reviews.
Limit a recent, dated feedback sample
{"startUrls": ["https://www.facebook.com/portosbakery"],"maxReviewsPerPage": 5,"maxResults": 5,"sinceDays": 90,"analyzeSentiment": false,"maxRetries": 0,"useResidentialProxy": false}
Reviews without a known publication date do not satisfy sinceDays. Disabling the English word heuristic can suit an export intended for manual or multilingual analysis. It does not change source access or convert recommendations into a star average.
Keep the first run within a local event budget
{"startUrls": ["https://www.facebook.com/portosbakery"],"maxReviewsPerPage": 2,"maxResults": 2,"maxCostUsd": 0.02,"maxConcurrency": 1,"maxRetries": 0,"useResidentialProxy": false}
maxCostUsd estimates event charges at the active tier. Set the platform run charge limit too. Compute/proxy/storage usage remains separate, and page/start fees can be incurred even if no individual review is available.
Export page context and review rows separately
Filter the Dataset by record type before importing into a dashboard. A page-summary is a business observation with its own fee; it must not become another customer review in a sentiment average. Preserve the verified target page identity and the individual review identity where supplied. A recommendation percentage, a reported page count and an observed positive/negative recommendation answer different questions and must not be merged into a fabricated star score.
Keep the collection time, requested URL, filters and source diagnostics beside each export. PUBLIC_WINDOW describes an observed sample; UNVERIFIED means individual access was not established. Neither proves access to a complete history. coverageComplete=false and freshnessVerified=false should remain visible in downstream reporting, including an AI-generated digest.
Public intro email, phone, address or website fields are source context, not mailbox verification or a guarantee that every business has a usable contact. Missing address/GPS or star averages remain unknown. Attached media belongs only to the evidenced recommendation; an unrelated page image should not be substituted for it.
For repeat collection, use a state store owned by your account and keep the same intended scope. State keeps at most the latest 50,000 keys, and earlier keys can expire. Avoid concurrent runs sharing a scope. A failed state write or webhook delivery must be investigated in ERRORS; it does not undo an already confirmed Dataset delivery. Webhook configuration is optional, and these examples send no webhook or business message.
Facebook reviews API questions
What does verified mean here? The parser requires explicit review/recommendation evidence tied to the target page. It does not independently authenticate the author, verify a transaction or endorse the content of a complaint.
Can I download every Facebook review? No full-history or review-pagination guarantee is made. Facebook may return an ordinary feed at a reviews URL. That is reported as unavailable review evidence instead of being relabelled as reviews.
Why is there a page fee with no reviews? A useful delivered page-summary is a separately priced event. On FREE, one page and three reviews at 256 MB create $0.01255 in event fees; on BRONZE the same output creates $0.01005, before resource usage. If only the page is delivered, review fees are absent but the page/start costs still apply.
Is sentiment an AI assessment of reputation? No. English word heuristics and explicit recommendation/rating signals support a simple annotation. Sarcasm, other languages and a biased collection window can invalidate a broad conclusion. Preserve the original text and review the sample yourself.
Does enabling a proxy restore missing recommendations? Proxy availability is not review evidence. A readable page with no supported review objects remains terminal for that response. The examples keep residential fallback off and do not retry known refusals.
Can I automate a spreadsheet or CRM export? Use the existing community integration below, or call this Actor through Apify API/MCP and read the returned Dataset plus SUMMARY/ERRORS. Keep page/review row types separate and report partial coverage. Existing Tasks are retained; this documentation pass does not create or republish Tasks.
n8n and developer integrations
Use this Actor in your automation or application with the existing community integrations below. An Apify account and API token are required; Actor and platform charges follow the current pricing.
- n8n community node: n8n-nodes-apivault-facebook-reviews. Install package name
n8n-nodes-apivault-facebook-reviewsin a self-hosted n8n instance that permits community packages. - Python client and examples: GitHub.
- n8n source and usage: GitHub.
These are community packages. Publication on npm does not establish n8n verification or availability in n8n Cloud. Review the linked package README for supported inputs and setup.