Trustpilot Reviews Scraper | $0.35/1K + Sentiment
Pricing
from $0.35 / 1,000 results
Trustpilot Reviews Scraper | $0.35/1K + Sentiment
Fast request-based Trustpilot scraper for reviews, replies, ratings, sentiment, company profiles, search discovery, and monitoring changes. Clean datasets for reputation and competitor tracking.
Pricing
from $0.35 / 1,000 results
Rating
0.0
(0)
Developer
Blynx
Maintained by CommunityActor stats
0
Bookmarked
8
Total users
7
Monthly active users
4 days ago
Last modified
Categories
Share
⭐ Trustpilot Reviews Scraper | $0.35/1K + Sentiment
Fast request-based Trustpilot scraper for reviews, ratings, company replies, company profiles, sentiment, topics, and monitoring changes.
No browser sessions. No heavy browser automation. Just clean Trustpilot review data in organized Apify datasets, ready for CSV, Excel, dashboards, support workflows, and reputation monitoring.
Use it to track brand reputation, watch competitors, collect fresh customer feedback, prioritize negative reviews, and build review intelligence pipelines.
🚀 What You Get
- 💬 Reviews: rating, title, full review text, language, published date, experience date, verification status, reviewer metadata, likes, tags, and review URL
- ↩️ Company replies: reply text, reply date, and
hasCompanyReply - 🧠 Review intelligence: sentiment, sentiment score, topics, issue severity, risk signals, and review length
- 🏢 Company profiles: TrustScore, rating, review count, categories, website, logo, public email/phone/address when available, and Trustpilot profile URL
- 🔎 Company discovery: search Trustpilot by company name, brand, category, or keyword
- 🔁 Monitoring changes: detect new, updated, unchanged, and removed reviews between scheduled runs
- 🧼 Clean tables: review output is normalized for easy table preview and export, without
undefinedornullplaceholders in the main review views
⚡ Why This Actor
| Feature | Benefit |
|---|---|
| Request-based scraping | Faster runs and lower compute usage than browser-heavy actors |
| Reviews + companies | Get both individual reviews and company-level context |
| Sentiment + topics | Move from raw text to usable review intelligence |
| Clean output views | Open the right dataset view immediately after the run |
| Monitoring support | Schedule runs and track what changed |
| Flexible input | Use domains, Trustpilot URLs, business unit IDs, or search queries |
🧭 How It Works
flowchart LRA["Input: domains, URLs, IDs, or search queries"] --> B["Trustpilot data"]B --> C["Reviews"]B --> D["Companies"]C --> E["Sentiment and topics"]C --> F["Replies"]C --> G["Monitoring changes"]D --> H["Company profiles"]E --> I["Clean Results output"]F --> IH --> I
⚡ Quick Start
- Open the Actor input.
- Choose Run mode.
- Add company domains, Trustpilot URLs, or search queries.
- Set Reviews per company and Maximum output items.
- Start the run.
- Open Results or Reviews.
Example: scrape 50 recent reviews from 2 companies.
{"mode": "REVIEWS","companyDomains": ["trustpilot.com", "www.amazon.com"],"maxReviewsPerCompany": 50,"maxResults": 100,"sort": "recency","includeCompanyProfile": true}
🧩 Input Modes
| Mode | Best for | Main inputs |
|---|---|---|
AUTO | Let the Actor choose the correct flow from your input | Any supported input |
REVIEWS | Scrape reviews from known companies | companyDomains, startUrls, businessUnitIds |
SEARCH | Discover companies first, then optionally scrape their reviews | searchQueries |
📥 Input Examples
1. Reviews by company domain
{"mode": "REVIEWS","companyDomains": ["shopify.com", "www.amazon.com", "apple.com"],"maxReviewsPerCompany": 25,"maxResults": 75,"maxPagesPerCompany": 3,"sort": "recency","includeCompanyProfile": true}
2. Search companies and collect reviews
{"mode": "SEARCH","searchQueries": ["delivery", "insurance", "travel"],"maxReviewsPerCompany": 5,"maxResults": 50,"includeCompanyProfile": true}
3. Search companies only
Use this when you want a company list first and do not need review rows yet.
{"mode": "SEARCH","searchQueries": ["banks", "hosting", "fitness"],"scrapeReviews": false,"maxResults": 50}
4. Negative verified reviews
{"mode": "REVIEWS","startUrls": [{ "url": "https://www.trustpilot.com/review/www.amazon.com" }],"stars": ["1", "2"],"verified": "true","maxReviewsPerCompany": 100,"maxResults": 100,"includeCompanyProfile": true}
5. Daily monitoring
Use the same monitorKey across scheduled runs to compare fresh results with the previous snapshot.
{"mode": "REVIEWS","companyDomains": ["trustpilot.com"],"sort": "recency","maxReviewsPerCompany": 50,"maxResults": 50,"enableDeltaMonitoring": true,"monitorKey": "trustpilot-daily"}
🎯 How To Get The Right Amount Of Data
Two limits work together:
maxReviewsPerCompanycontrols how many reviews to collect for each company.maxResultscontrols how many rows are saved to the main output.
| Goal | Recommended settings |
|---|---|
| 1 company x 10 reviews | maxReviewsPerCompany: 10, maxResults: 10 |
| 5 companies x 20 reviews | maxReviewsPerCompany: 20, maxResults: 100 |
| 10 companies x 50 reviews | maxReviewsPerCompany: 50, maxResults: 500 |
| 50 discovered companies x 1 review | mode: "SEARCH", maxReviewsPerCompany: 1, maxResults: 50 |
If maxResults is too low, the Actor stops saving rows earlier even if maxReviewsPerCompany is higher.
📊 Output Views
Open Results first for the main output. Specialized views are available for deeper analysis.
| Output | Best for | Key fields |
|---|---|---|
| Results | Main run output | Review rows when scraping reviews, company rows when scrapeReviews is off |
| Reviews | Reading and exporting review data | companyName, companyDomain, rating, title, text, datePublished, isVerified, reviewUrl |
| Review intelligence | Prioritizing issues | sentiment, sentimentScore, topics, riskSignals, issueSeverity, reviewLength |
| Replies | Tracking company responses | hasCompanyReply, companyReplyText, companyReplyDate |
| Companies | Company-level reporting | trustScore, companyRating, companyReviewCount, reviewsScraped, replyRate, verifiedRate |
| Monitoring changes | Scheduled change tracking | changeStatus, changedFields, detectedAt |
| Summary | Run quality checks | scraped, companies, errorItems, missing-field rates, topic summary |
| Errors | Input or unavailable page diagnostics | errorType, sourceUrl, companyDomain, error |
🧾 Review Record Schema
Common review fields:
| Group | Fields |
|---|---|
| Review | reviewId, reviewUrl, sourceUrl, rating, title, text, language |
| Dates | datePublished, dateExperienced, dateUpdated, scrapedAt |
| Verification | isVerified, reviewSource |
| Reviewer | consumerName, consumerId, consumerCountry, consumerReviewCount, consumerImageUrl |
| Company | companyId, companyName, companyDomain, companyUrl, companyWebsite |
| Reputation | trustScore, companyRating, companyReviewCount, companyCategories, companyClaimed |
| Reply | hasCompanyReply, companyReplyText, companyReplyDate |
| Intelligence | sentiment, sentimentScore, topics, issueSeverity, riskSignals, reviewLength |
| Monitoring | changeStatus, changedFields |
Example item:
{"type": "review","reviewId": "example-review-id","companyName": "Example Company","companyDomain": "example.com","rating": 1,"title": "Delivery never arrived","text": "I ordered last week and still have no tracking update.","datePublished": "2026-07-09T12:00:00.000Z","isVerified": true,"hasCompanyReply": false,"sentiment": "negative","sentimentScore": -1,"topics": ["delivery_shipping"],"issueSeverity": "high","riskSignals": ["low_rating", "unanswered_negative_review"],"reviewUrl": "https://www.trustpilot.com/reviews/example-review-id"}
🧠 Review Intelligence
The Actor adds practical labels to help you sort and prioritize reviews.
| Field | Meaning |
|---|---|
sentiment | positive, neutral, or negative |
sentimentScore | Numeric sentiment score |
topics | Detected themes such as delivery, billing, support, product quality, app or website issues |
issueSeverity | Review urgency, from low to high |
riskSignals | Signals like low rating, unanswered negative review, trust or safety issue |
reviewLength | Length of the review text |
🔁 Monitoring Changes
Turn on Monitor changes for scheduled runs. The Actor compares the current review snapshot with the previous one for the same monitorKey.
| Status | Meaning |
|---|---|
new | Review was not seen in the previous run |
updated | Review text, title, rating, date, or reply changed |
unchanged | Review is still present and unchanged |
removed | Review existed before but was not found in the current run |
Good monitoring setup:
{"mode": "REVIEWS","companyDomains": ["example.com"],"sort": "recency","maxReviewsPerCompany": 50,"maxResults": 50,"enableDeltaMonitoring": true,"monitorKey": "example-com-daily"}
💼 Use Cases
- Monitor new negative reviews
- Track company reply rate
- Compare competitors by TrustScore, rating, topics, and review volume
- Build customer support queues from fresh complaints
- Find recurring product, delivery, billing, or support issues
- Feed reviews into BI dashboards, Sheets, CRM workflows, or Slack alerts
- Watch Trustpilot profiles for reputation changes
- Discover companies by keyword and collect sample reviews for market research
✅ Clean Data Notes
- Review rows are flattened into table-friendly fields.
- Main review views are normalized to avoid
undefinedandnullplaceholders. - Optional public fields, such as email, phone, reply text, or reviewer image, are included when Trustpilot exposes them.
- If a discovered search candidate is unavailable, the Actor skips it and fills the requested result count from other discovered companies when possible.
❓ FAQ
Does this Actor use browser automation?
No. It is request-based, which keeps runs lighter and faster than browser-heavy scraping flows.
Can I scrape only 1-star and 2-star reviews?
Yes. Set stars to ["1", "2"].
Can I collect only verified reviews?
Yes. Set verified to "true".
Can I search companies instead of adding exact domains?
Yes. Use mode: "SEARCH" with searchQueries.
Can I scrape company profiles without reviews?
Yes. Use mode: "SEARCH" and set scrapeReviews to false.
Why are some contact fields empty?
Trustpilot does not expose every contact field for every company. Public email, phone, address, or logo fields are included when available.
Where should I look first after a run?
Start with Results. Then open Reviews for raw review data, Review intelligence for sentiment and topics, Replies for company responses, and Companies for company-level metrics.
Can I schedule this Actor?
Yes. Turn on enableDeltaMonitoring, set a stable monitorKey, and schedule the Actor in Apify.
🏷️ Tags
trustpilot scraper · trustpilot reviews · trustpilot monitoring · review intelligence · sentiment analysis · reputation management · company reviews · customer experience · brand monitoring · apify trustpilot