Trustpilot Reviews Scraper
Pricing
from $0.40 / 1,000 reviews
Trustpilot Reviews Scraper
Extract Trustpilot reviews and company details — ratings, text, reviewer info, dates, replies, TrustScore — with filters, new-review monitoring, and an instant API mode. From $0.50 per 1,000 reviews; company profiles free.
Pricing
from $0.40 / 1,000 reviews
Rating
0.0
(0)
Developer
Tapaswai Ashok Choudhary
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
Extract customer reviews and full company details from any Trustpilot company profile into clean, structured data — ratings, review text, reviewer info, dates, verification, company replies, TrustScore, and more. Fast, reliable, and pay-per-result.
What it does
Give it one or more companies (a domain like apify.com, or a full Trustpilot
review URL) and it returns their reviews plus a company-details record
(TrustScore, total reviews, reply metrics, contact info, categories) as
structured records you can export to JSON, CSV, or Excel, push to your database,
or feed into another Actor.
Features
- 🔎 Multiple companies in a single run
- 🏢 Company details — TrustScore, review counts, reply rate, contact info, categories
- ⭐ Star / language / date / verified filters and free-text search
- ↕️ Sort by most recent or most relevant
- 👤 Rich reviewer data — name, country, review count, profile image, verified
- 💬 Company replies — text and date
- 🧹 Deduplication — no repeated reviews
- 🔔 New-review monitoring — schedule it and get only reviews you haven't seen
- 🔌 Instant API mode — get reviews straight back from a web request
- ⚡ Fast & low cost — quick runs, low pay-per-result pricing, and no proxy needed by default
Why this scraper
- Gets past bot protection on its own. Trustpilot guards its pages against bots; this Actor handles that itself — no proxy or extra setup needed for normal runs.
- Low platform cost. Built as a small native program with a slim, purpose-built browser engine, so it needs far less memory and time than typical browser-based scrapers. You pay mostly for reviews, not machine time.
- Handles rate limits for you. When Trustpilot says “slow down” (HTTP 429) the Actor waits as long as asked and continues; errors, timeouts and dropped downloads are retried automatically.
- Never loses or double-bills work. Reviews are saved as each company finishes; if the platform moves your run to another server it resumes without charging twice, and it stops cleanly at your maximum charge.
- Ready-to-analyze data. Every review comes with sentiment, reviewer country, reply time in days and text length — no post-processing needed.
Input
| Field | Type | Default | Description |
|---|---|---|---|
companies | array (required) | — | Company domains or Trustpilot review URLs. |
maxReviews | integer | 100 | Maximum total reviews across all companies. |
maxReviewsPerCompany | integer | — | Optional cap per company. |
stars | integer 1–5 | all | Only reviews with this star rating. |
starRatings | array | all | Several ratings at once, e.g. ["1","2"] for negative reviews. |
language | string | all | Language code, e.g. en. |
sort | string | relevance | recency (newest) or relevance. |
verified | boolean | false | Only verified reviews. |
datePeriod | string | any | last30days, last3months, or last6months. |
search | string | — | Only reviews whose content matches this text. |
includeCompanyDetails | boolean | true | Also output a company record per company. |
dedupe | boolean | true | Drop duplicate reviews. |
onlyNew | boolean | false | Emit only reviews no earlier run has delivered (sorts newest-first). |
monitorName | string | auto | Name of the onlyNew history (defaults to one per companies + filters). |
proxyConfiguration | object | off | Optional proxy settings (see below). |
Example input:
{"companies": ["apify.com", "https://www.trustpilot.com/review/github.com"],"maxReviews": 200,"stars": 5,"language": "en"}
Monitor new reviews
Turn on onlyNew and schedule the Actor (e.g. hourly or daily): each run returns only reviews posted since the previous runs, and you pay only for those. Great for alerting on new negative reviews (starRatings: ["1","2"] + onlyNew) — connect an Apify integration (Slack, email, Google Sheets, webhooks) to get them delivered automatically.
Use it as an instant API
The Actor also runs in Standby mode: an always-ready web endpoint that returns reviews directly in the response — handy for apps, dashboards, and AI agents. Find the endpoint URL on the Actor's Standby tab and call it with your Apify API token:
curl "https://<standby-url>/?company=apify.com&maxReviews=20&sort=recency" \-H "Authorization: Bearer <YOUR_APIFY_TOKEN>"
Any input field works as a query parameter (or POST the input as JSON). The response looks like {"success": true, "count": 21, "items": [ … ]} — the company record plus its reviews. Pricing is the same per review.
Output
The dataset holds two record types, distinguished by a type field.
Review (type: "review"):
| Field | Description |
|---|---|
reviewId | Unique review id |
company | Company domain |
url | Review permalink |
rating | 1–5 |
title / text | Review title and body |
language | Review language code |
author / authorId | Reviewer name and id |
authorCountry / authorReviewCount | Reviewer country, total reviews written |
authorImageUrl / authorVerified | Reviewer profile image, verification |
verified | Whether the review is verified |
reply / replyPublishedAt | Company reply text and date |
likes | "Useful" votes |
reported | Whether it has unhandled reports |
publishedAt / experiencedAt / updatedAt | Dates |
sentiment | positive (4–5★), neutral (3★) or negative (1–2★) |
authorCountryName | Reviewer country name (alongside the code) |
hasReply / replyDelayDays | Whether the company replied, and how many days it took |
textLength | Review length in characters |
scrapedAt | When it was scraped |
Company (type: "company", one per company when includeCompanyDetails):
| Field | Description |
|---|---|
name / domain / websiteUrl | Company identity |
trustScore / stars | Trustpilot TrustScore and star category |
totalReviews / reviewsLast12Months | Review counts |
categories | Industry categories |
replyPercentage / averageDaysToReply | Reply metrics |
isClaimed / isClosed | Business status |
logoUrl | Company logo |
address / city / country / email / phone | Contact info |
verifiedByGoogle / verifiedPaymentMethod / verifiedUserIdentity | Verifications |
Example review item:
{"type": "review","reviewId": "abc123","company": "apify.com","rating": 5,"title": "The tool I was always looking for","text": "Great platform for automation…","language": "en","author": "Jason S.","authorVerified": true,"verified": true,"publishedAt": "2026-01-14T09:12:00Z","scrapedAt": "2026-07-05T05:32:01Z"}
How to use
- Add the companies you want reviews for.
- Set optional filters (
maxReviews,stars,language). - Run the Actor, then download the results as JSON / CSV / Excel, or use the dataset API.
A proxy is not required — the Actor works out of the box. You can optionally enable an Apify proxy under Proxy if you want to route traffic through specific regions.
Pricing
Pay per result: you're charged per review delivered. Company-details records are free. See the Pricing tab for the current rate, and set a maximum charge on the run to cap spend — the Actor stops cleanly at your limit and keeps everything collected so far.
On Apify's free plan each run returns up to 500 reviews — plenty to try everything. Any paid Apify plan removes the limit.
Notes & tips
- Provide either a bare domain (
apify.com) or a full review URL — both work. - Higher
maxReviewsvalues take longer and cost more; start small to preview. - If a company has few or no reviews, the run simply returns fewer items.
- Use
maxReviewsPerCompanywhen scraping many companies so each gets its share. - Listing the same company twice is fine — it's fetched once.
Support & requests
- Report a problem — use the Issues tab on this Actor's page. Include the company you ran and what you expected, and it's much quicker to fix.
- Request a feature — need another filter, sort order, or field in the output? Open an issue describing it. Requests are prioritised by demand.
- Want another review site? Say which one — new sources are chosen based on what people actually ask for.
Feedback is actively monitored — if something's broken or missing, please say so.