Trustpilot Reviews Scraper — Ratings & Company Replies
Pricing
from $0.50 / 1,000 review extracteds
Trustpilot Reviews Scraper — Ratings & Company Replies
Public Trustpilot review export. Collection is currently under maintenance because source access is restricted. Review history and successful collection are not currently confirmed. $0.50 per 1,000 delivered reviews plus a small start event.
Pricing
from $0.50 / 1,000 review extracteds
Rating
0.0
(0)
Developer
Apivault Labs
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Trustpilot Reviews Scraper — Ratings, Replies & Filters
Export public Trustpilot review text, ratings, publication and experience dates, reviewer details, and company replies. Paste company domains or Trustpilot company URLs, select limits, and download reviews as JSON, CSV or Excel from Apify.
Source availability: this reader collects accessible public review pages. Access can change or be refused. Start small, inspect SUMMARY and ERRORS, and check the current maintenance notice. A successful sample does not establish complete historical coverage.
Trustpilot review research for support and analytics
Use this Trustpilot reviews scraper for a bounded public feedback sample about companies you already know. It collects observations for analysis; it does not independently verify reviewers, transactions or the truth of complaints. The source's company score and review verification flag remain source statements.
| Research workflow | Fields or records | Interpretation |
|---|---|---|
| Inspect recent customer feedback | reviewId, rating, text, publishedAt | State the collection date, limits and filters |
| Review low-star themes | filterStars plus title/text | A selected complaint sample is not overall sentiment |
| Examine company replies | replyText and replyPublishedAt | Missing replies remain unavailable; no response is sent |
| Compare known company samples | companyDomain, companyTrustScore, sourceUrl | Use comparable windows; samples can differ in coverage |
| Maintain your own review observations | reviewId and INCREMENTAL_STATE | Deduplicate in your destination across runs |
For a first test, use one company and a handful of reviews before requesting more pages. A review can have valid identity, text and rating while optional reviewer or reply fields remain null. Do not replace missing values with invented reviewer attributes.
Start with one company
{"companyUrls": ["wise.com"],"maxReviews": 25,"maxPages": 2}
Company input accepts wise.com or https://www.trustpilot.com/review/wise.com. Duplicate companies are removed. The default limit is 50 matching reviews and three pages per company. A source restriction produces diagnostics, not an invented empty result.
Focus the collection
{"companyUrls": ["wise.com", "apify.com"],"maxReviews": 50,"maxPages": 5,"filterStars": [1, 2],"filterLanguages": ["en"],"filterCountries": ["GB", "US"],"startDate": "2026-10-01","repliesOnly": true}
Filters compose: a review must match every selected condition. Star, language and reviewer-country filters use the values observed on the review. verifiedOnly requires an explicit verified flag; an unknown flag never counts as verified. repliesOnly requires nonempty reply text.
startDate is inclusive and applies to publication date. Rolling windows use 30, 90, 180 or 365 days. Combining a rolling window with startDate uses the later cutoff. sortBy accepts recency or relevance and preserves source order. Filters are evaluated across requested pages; a page with no matching reviews does not stop the next page.
Results and coverage
The default dataset contains review rows only. Each row has a genuine reviewId and reviewUrl, integer rating, title/text, dates, reviewer fields, verification and reply fields, company context, sourceUrl and collection time. Missing optional fields remain null.
Use the Reviews table for export. The legacy datePublished, dateOfExperience, reviewerLocation, verified and ownerReply fields remain available alongside normalized fields. Field switches control normalized output; includeRaw independently adds the original review object.
Free key-value records accompany each run:
| Record | Purpose |
|---|---|
SUMMARY | Delivered counts, company states, pages, stop reasons and coverage |
ERRORS | Invalid input, source denial/unavailability and partial collection |
COMPANIES | Observed company profiles when includeCompanyDetails is enabled |
INCREMENTAL_STATE | Newest publication timestamp among delivered reviews per company |
maxReviews: 0 removes only the review-count limit. maxPages and the collection time budget still apply. Public visibility may cover only a subset of a brand's history. coverageComplete concerns the accessible public list within the requested filters; it never proves access to private, removed or otherwise unavailable reviews. A page/review/time limit is recorded explicitly.
EMPTY means valid pages were read and no reviews matched. FAILED means collection or delivery failed. PARTIAL keeps useful delivered reviews and records incomplete collection. A source denial is never presented as a review-free company.
For repeat runs, manually pass the date portion of a prior delivered timestamp to startDate. The date is inclusive; deduplicate reviewId in your own destination across runs. This Actor does not automatically accumulate history or reuse another run's storage.
MCP and AI agents
Check the current maintenance notice and input schema before using this Actor through MCP. Use small limits and inspect source diagnostics before increasing collection size.
Select apivault_labs/trustpilot-reviews-scraper in the Actor's API → MCP tab, or connect an authenticated
MCP client to:
https://mcp.apify.com/?tools=apivault_labs/trustpilot-reviews-scraper
The direct tool is apivault_labs--trustpilot-reviews-scraper. Keep the Apify token in the client's secure
authentication configuration. Public source data does not remove the requirement
for Apify authentication and applicable run charges. Read tools/list before
calling: wrapper fields can differ from the Actor input schema.
Small Actor input:
{"companyUrls": ["wise.com"],"maxPages": 1}
Send this object as the direct tool's arguments. Its current wrapper also accepts
waitSecs: 45. waitSecs controls how long the tool waits; it is not the Actor
run timeout. If the run is still active, poll its returned run ID with
get-actor-run; do not start a duplicate. Once terminal, use
get-dataset-items with the returned dataset ID and a small limit/field selection,
then get-key-value-store-record with the returned store ID and required record
key. Missing IDs/records must be reported, not replaced with another run's storage.
An empty dataset is not evidence that the company has no reviews. Inspect SUMMARY.status, stop reasons and ERRORS: EMPTY requires successfully read source pages; source denial is a collection error. Check tools/list or fetch-actor-details for the current input schema before calling. Do not repeatedly retry a known source denial without an access-state change.
Agent request: “Collect up to five public reviews for wise.com from at most one page. Return the actual review count and explain any source errors or collection limits from SUMMARY.”
Keep the first run small. Increase limits only for the requested scope, check current Pricing and cap runtime/spend using controls actually supported by your run client. Distinguish source errors, filtered emptiness and partial delivery; a completed tool call alone does not establish successful data collection.
The JSON above uses one public company page. A source-denied run is not evidence of a review-free company.
Pricing
Current rate: $0.0005 per delivered review ($0.50 per 1,000) plus $0.00005 per run start at the standard memory size. Profile and diagnostic records do not add paid review rows. Example: 25 delivered reviews cost $0.01255 in event fees; 1,000 cost $0.50005. A failed or empty run can still incur the start event.
Apify platform usage is billed separately to the user under the pricing setting active since 18 October 2026 at 19:32:14 UTC. Check the live Pricing tab for the applicable plan and any platform charges before running a larger collection.
Source errors and working-time budget
A source denial or unavailable layout is FAILED when no verified reviews were collected; a later source failure preserves earlier reviews as PARTIAL. SUMMARY, ERRORS and COMPANIES remain free key-value records. Submission errors, invalid reviews, duplicates and filtered rows are not review-result events; start and platform fees can still apply. runBudgetSecs bounds page requests, redirects, body reads and retries; an earlier platform deadline reserves time for final output. Complete source access, directory coverage and full history are not guaranteed. Check the current maintenance notice before relying on unattended collection.
Public-reader source compatibility
The public-page reader uses the same Googlebot User-Agent header as the portfolio’s separate native Trustpilot reader. This header does not verify crawler identity or grant authenticated access; it is an access-dependent implementation choice. Ordinary browser and default HTTP requests failed in the current checks. Successful samples do not guarantee sustained access or full history; access errors still stop collection and remain explicit. Source availability and page limits must be checked in SUMMARY. No account cookies, external API key or proxy is used.
Small, purpose-specific Trustpilot inputs
These are Actor inputs for the current public-page reader. They are separate from the portfolio's other Trustpilot Actor and its different schema: use companyUrls here, not another product's startUrls/contentMode contract. Source access and the requested filters determine whether matching reviews are available.
Five recent public reviews
{"companyUrls": ["wise.com"],"maxReviews": 5,"maxPages": 1,"sortBy": "recency","maxConcurrency": 1,"maxRetries": 0}
This is a bounded first sample, not five guaranteed reviews. Inspect SUMMARY.companies and ERRORS alongside the delivered rows; one successful page does not prove historical completeness.
A bounded complaint-theme sample
{"companyUrls": ["wise.com"],"maxReviews": 10,"maxPages": 2,"filterStars": [1,2],"filterDateRange": "last30days","maxRetries": 0}
Filters compose and are applied to observed reviews across pages. A page containing no matching low-star reviews is not by itself the end of the source. Save the filters and collection window with your analysis.
Inspect available company replies
{"companyUrls": ["wise.com"],"maxReviews": 5,"maxPages": 2,"repliesOnly": true,"includeCompanyDetails": true,"maxRetries": 0}
This retrieves observed reply text where present; it neither contacts the company nor calculates an audited response rate. COMPANIES is profile context, not an additional paid review dataset.
Keep a manual date-based observation window
{"companyUrls": ["wise.com"],"startDate": "2026-10-01","maxReviews": 10,"maxPages": 2,"includeRaw": false,"maxRetries": 0}
The example cutoff is inclusive and intentionally explicit. Replace it with the date relevant to your workflow. Reusing a prior date can return already observed IDs; deduplicate reviewId yourself rather than treating every row as newly published.
Turn a review export into a reproducible worksheet
Retain reviewId, reviewUrl, companyDomain, sourceUrl, scrapedAt and the date/window settings in your destination. The review publication date, experience date, edit date and collection time answer different questions. An edited review can change after your previous observation. A manual publication-date cutoff is not a change feed and does not guarantee discovery of later edits to old reviews.
Use the Reviews Dataset for individual records and COMPANIES for observed profile context. The company-wide total and trust score can refer to a different population from your filtered sample. If you compute a low-star share or reply rate, label it as a statistic over returned matching records, and disclose the collection limits. A five-review complaint sample cannot establish a whole company's customer satisfaction.
Field switches omit groups of normalized fields; includeRaw independently adds the original review object. If minimizing the export, check the switches and leave includeRaw false so that raw content does not defeat the intended field selection. Source text may contain personal information supplied by reviewers; keep only the fields your research needs and control access to raw exports.
Review SUMMARY status, per-company page history and stopReason. REVIEW_LIMIT, PAGE_LIMIT and TIME_LIMIT describe different bounds. If access fails after earlier pages, keep the delivered sample with its partial-state explanation. Do not relabel a collection failure as evidence that the company has no reviews. Retrying a known denial without an access change is not a coverage strategy.
API and n8n HTTP Request workflow
The Actor can be called through Apify's REST run endpoint or the hosted MCP path described above. In n8n, an HTTP Request workflow can start POST https://api.apify.com/v2/acts/apivault_labs~trustpilot-reviews-scraper/runs, using an Apify token stored in credentials and the Actor JSON as the request body. Configure a small result-fee cap and timeout in the client, save the returned run and storage IDs, and poll that run before reading its Dataset. Do not start a new run every time a polling request says RUNNING.
Download JSON for analysis or request format=csv on the returned dataset items endpoint for a spreadsheet. Keep the returned key-value store ID for SUMMARY and ERRORS. A generic HTTP workflow does not imply a dedicated verified n8n node, a standalone PyPI package or additional source access. This README does not advertise an unconfirmed package for this particular Actor ID.
Trustpilot reviews API questions
Does maxReviews=0 collect the entire company history? It removes the review-count cap only. Page, time, platform and source-access limits remain. Public-page exhaustion is not proof of access to private or removed reviews or a complete historical archive.
Is verifiedOnly an independent authenticity check? No. It requires an explicit true source verification flag. Unknown verification does not match. This Actor does not verify purchases or reviewer identity itself.
Why can a filtered run produce fewer results? Ratings, language, reviewer country, dates and reply filters all compose. Narrow filters can exhaust the requested page budget before enough matches are found. Keep null distinct from a nonmatching known value.
Are company profiles charged as reviews? No. The primary fee is $0.0005 per delivered review, plus the $0.00005 start event at the standard memory size and separately paid platform usage. Five delivered reviews at that memory size create $0.00255 in event fees before usage. Failed/filtered/duplicate entries and diagnostic records do not add review-result events.
Does repeated monitoring reuse another run's state? No automatic cross-run history is maintained. INCREMENTAL_STATE records delivered publication timestamps for your application to use; the next run still needs your explicit input. Retain IDs and dated observations in your own storage.
Can an agent conclude that a green run is complete? It must inspect actual rows and SUMMARY/ERRORS. A successful partial collection is useful but incomplete. Report the requested companies, filters, rows and stop reasons. No review responses or outreach messages are sent by these collection examples.