Trustpilot Reviews Scraper – Ratings, Reviews & Replies
Pricing
from $1.75 / 1,000 results
Trustpilot Reviews Scraper – Ratings, Reviews & Replies
Scrape Trustpilot business reviews at scale: rating, title, text, date, reviewer, verification and the company's reply, plus business profile (TrustScore, review count, category, contact). Search by company name or scrape by domain. Export to JSON, CSV or Excel.
Pricing
from $1.75 / 1,000 results
Rating
0.0
(0)
Developer
Haketa
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
2
Monthly active users
19 hours ago
Last modified
Categories
Features
Share
Trustpilot Reviews Scraper — Ratings, Reviews, Replies & TrustScore ⭐
The most reliable, production-grade Trustpilot scraper to extract verified customer reviews, corporate replies, star ratings, and complete business profiles with zero login, zero coding, and 1,000+ deep pagination unlocked.
This high-performance Trustpilot reviews scraper converts public Trustpilot company profiles into structured intelligence: star rating (1–5), review headline, full text body, verification source, date of experience, reviewer demographics, official corporate replies, and comprehensive business profiles (aggregate TrustScore, total reviews, categories, website, and public contact information).
Export every record directly to JSON, CSV, Excel, or API.
Built for brand reputation managers, market researchers, competitive-intelligence analysts, CX/VoC professionals, NLP/LLM data engineers, e-commerce brand aggregators, and B2B lead-generation specialists.
⚡ At a glance
| Feature | Capability | Details |
|---|---|---|
| Target Platform | Trustpilot | World's premier open customer review portal |
| Bypass Architecture | Hybrid Stealth + Fast HTTP | Headed stealth browser solves AWS WAF; fast HTTP paginates |
| Anti-Bot Defense | AWS WAF Proof-of-Work | Automated token resolution with seamless session rotation |
| Pagination Scale | 1,000+ reviews per run | Unlocked deep multi-page pagination (maxReviewsPerBusiness: 0 = auto) |
| Input Methods | Domains, Names & URLs | Exact domain (www.booking.com), company search, or review URLs |
| Company Reply Data | 100% Extracted | Captures corporate response text and timestamp when published |
| Business Profiles | Enriched Rows | TrustScore, categories, website, phone, email, physical address |
| Proxy Requirement | Residential Proxies | Apify Residential Proxy ensures continuous WAF bypass |
| Export Formats | JSON, CSV, Excel, XML | Apify Dataset, REST API, Webhooks, Google Sheets, Make, Zapier |
🔎 Why scrape Trustpilot?
Trustpilot hosts hundreds of millions of candid customer evaluations spanning millions of active businesses worldwide. Every review provides an unfiltered, verified consumer perspective detailing product quality, customer service responsiveness, delivery timelines, and dispute outcomes.
Harvesting this data manually is virtually impossible: reviews are paginated 20 per page, gated behind complex AWS WAF proof-of-work challenges, and rendered dynamically within client-side React bundles.
A dedicated Trustpilot data extractor solves these hurdles and delivers actionable commercial advantages:
- 🛡️ Brand Reputation & Sentinel Monitoring: Track your brand's TrustScore trajectory and detect negative sentiment spikes before they escalate into public relations crises.
- 🔍 Competitor Benchmarking & Gap Analysis: Monitor rival brands side-by-side to identify product shortcomings, pricing complaints, or customer service failures you can capitalize on.
- 📊 Voice-of-Customer (VoC) & CX Analytics: Aggregate authentic customer feedback to identify recurring bugs, feature requests, and delivery bottlenecks.
- 🤖 Sentiment Analysis & LLM Training: Pipe clean, structured review corpora into sentiment classification pipelines, fine-tuned LLMs, and RAG architectures.
- 📣 Social Proof & Marketing Conversion: Harvest genuine 5-star customer testimonials with verification badges for dynamic landing pages, advertisements, and pitch decks.
- 🏢 Supplier & Vendor Due Diligence: Audit software vendors, logistics providers, and marketplace sellers prior to entering enterprise contracts.
- 📈 B2B Lead Generation & Account Intelligence: Identify growing SMBs and enterprise companies with high review volume, capturing verified phone numbers and corporate emails.
✨ Key features & capabilities
- ✅ Three Flexible Targeting Modes: Scrape directly by domain name (
www.booking.com), search company names (e.g.HelloFresh), or paste exact Trustpilot review URLs. - ✅ Deep 1,000+ Review Pagination: Walks through consecutive review pages automatically. Set
maxReviewsPerBusiness: 0to scrape all publicly accessible reviews. - ✅ Hybrid Anti-Bot Bypass Engine: Automatically overcomes AWS WAF challenges using headless-resistant stealth sessions, then fetches subsequent pages via lightweight, cost-effective HTTP endpoints.
- ✅ Comprehensive Reviewer Metadata: Extracts reviewer display name, country code, total review count, and verification source (
invitation,organic). - ✅ Complete Corporate Reply Tracking: Captures the exact corporate response text (
companyReply) and reply timestamp (companyReplyDate). - ✅ Firmographic Enrichment on Every Row: Includes TrustScore, star rating, 12-month review trajectory, business category tags, website, email, phone, and address.
- ✅ Bulk Multi-Company Execution: Scrape multiple competitors in a single run under one unified session for streamlined comparative analysis.
- ✅ Global Geo-Targeting: Select residential proxy countries (US, GB, DE, FR, NL, CA, AU) to capture regional Trustpilot domains and localized review feeds.
🎯 High-impact use cases
1. Reputation Management & Crisis Detection
PR teams and reputation consultancies can continuously monitor customer satisfaction trends, ensuring rapid response when 1-star reviews are posted.
2. Competitive Intelligence & Product Strategy
Product managers can analyze reviews of competing software platforms or consumer goods to uncover missing features, pricing grievances, and common usability hurdles.
3. Voice-of-Customer (VoC) & Customer Success
Customer experience executives can quantify satisfaction drivers, categorizing complaints by theme (e.g., billing, shipping, customer support) to guide organizational priorities.
4. AI & NLP Model Fine-Tuning
Data science teams can generate labeled datasets with text reviews and corresponding 1-to-5 star ratings to train text classification and sentiment prediction models.
📥 Input parameters
The Actor is designed for simplicity. Provide company domains, search keywords, or direct Trustpilot URLs.
| Parameter | Type | Default | Description |
|---|---|---|---|
businesses | array | ["www.booking.com"] | List of company domains as they appear on Trustpilot (e.g. amazon.com, airbnb.com). |
searchQueries | array | [] | Company names to search on Trustpilot. The scraper resolves matching businesses automatically. |
startUrls | array | [] | Direct URLs to Trustpilot review profiles (e.g. https://www.trustpilot.com/review/www.booking.com). |
maxReviewsPerBusiness | integer | 50 | Maximum reviews to collect per company. Set 0 for auto/unlimited extraction. |
country | string | "US" | Residential proxy country code: US, GB, DE, FR, NL, CA, AU. |
proxyConfiguration | object | { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] } | Apify Residential proxy configuration (required for AWS WAF solve). |
Sample Input JSON
{"businesses": ["www.booking.com","www.tripadvisor.com"],"searchQueries": ["Revolut"],"maxReviewsPerBusiness": 250,"country": "US","proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
📤 Output dataset & field structure
Every record represents an individual review enriched with parent business metadata, making each row immediately usable for tabular reporting or database ingestion.
Real Output Example
{"businessName": "Booking.com","businessDomain": "www.booking.com","trustScore": 1.4,"stars": 1.5,"totalReviews": 129724,"reviewsLast12Months": 22092,"categories": ["Hotel", "Travel Aggregator"],"websiteUrl": "https://www.booking.com","countryCode": "NL","isClaimed": true,"isClosed": false,"businessEmail": "customer.service@booking.com","businessPhone": "+31 20 712 5600","businessAddress": "Herengracht 597, Amsterdam, NL","profileUrl": "https://www.trustpilot.com/review/www.booking.com","reviewId": "6ae7b651cb5f089891897403","rating": 1,"title": "Unacceptable refund policy experience","text": "I booked accommodation through the platform. The property was unavailable upon arrival, and support offered only minimal credits instead of a full cash refund.","likes": 2,"language": "en","publishedDate": "2026-11-01T23:59:45.000Z","experiencedDate": "2026-10-30T00:00:00.000Z","updatedDate": null,"isVerified": true,"verificationSource": "invitation","consumerName": "Alex Peterson","consumerCountry": "GB","consumerReviewCount": 14,"companyReply": "Dear Alex, we apologize for this situation. Please reply to our direct message with your reservation number so our team can investigate immediately.","companyReplyDate": "2026-11-02T08:15:00.000Z","reviewUrl": "https://www.trustpilot.com/reviews/6ae7b651cb5f089891897403","scrapedAt": "2026-11-10T15:00:00.000Z"}
📊 Extracted fields & data coverage
⭐ Review Content & Ratings
| Field Name | Type | Coverage | Description |
|---|---|---|---|
reviewId | string | 🟢 High (100%) | Unique hexadecimal Trustpilot review identifier |
rating | number | 🟢 High (100%) | Numerical score awarded by the consumer (1 to 5) |
title | string | 🟢 High (100%) | Subject headline of the review |
text | string | 🟢 High (100%) | Complete narrative text of the review |
likes | number | 🟢 High (100%) | Number of other users who marked the review as helpful |
language | string | 🟢 High (98%) | Two-letter ISO language code of the review text |
publishedDate | string | 🟢 High (100%) | ISO 8601 timestamp when the review was posted |
experiencedDate | string | 🟢 High (95%) | Date when the consumer experienced the service |
updatedDate | string | 🟡 Conditional (~10%) | Timestamp if review was subsequently edited |
reviewUrl | string | 🟢 High (100%) | Direct permalink to the individual review |
💬 Company Feedback & Responses
| Field Name | Type | Coverage | Description |
|---|---|---|---|
companyReply | string | 🟡 Conditional (~40-80%) | Public response message provided by the brand |
companyReplyDate | string | 🟡 Conditional (~40-80%) | Timestamp when the brand published its response |
👤 Reviewer Metadata & Verification
| Field Name | Type | Coverage | Description |
|---|---|---|---|
consumerName | string | 🟢 High (100%) | Display name or alias of the reviewer |
consumerCountry | string | 🟢 High (95%) | Country code of the reviewer's profile |
consumerReviewCount | number | 🟢 High (95%) | Total lifetime reviews authored by this user |
isVerified | boolean | 🟢 High (100%) | True if review passed Trustpilot identity verification |
verificationSource | string | 🟢 High (90%) | Source of collection (invitation, organic, verified) |
🏢 Business Profile & Contact Intelligence
| Field Name | Type | Coverage | Description |
|---|---|---|---|
businessName | string | 🟢 High (100%) | Official brand name on Trustpilot |
businessDomain | string | 🟢 High (100%) | Registered web domain identifier |
trustScore | number | 🟢 High (100%) | Calculated overall TrustScore (1.0 to 5.0) |
stars | number | 🟢 High (100%) | Star rating category |
totalReviews | number | 🟢 High (100%) | Total lifetime review count for the company |
reviewsLast12Months | number | 🟢 High (95%) | Review volume accrued over the preceding 12 months |
categories | array | 🟢 High (95%) | Array of industry tags associated with the business |
websiteUrl | string | 🟢 High (95%) | Official corporate homepage URL |
countryCode | string | 🟢 High (95%) | Country where corporate headquarters is located |
isClaimed | boolean | 🟢 High (100%) | Indicates whether the profile is verified by the business |
isClosed | boolean | 🟢 High (100%) | True if business is officially marked defunct or closed |
businessEmail | string | 🟡 Conditional (~60%) | Publicly registered customer support email |
businessPhone | string | 🟡 Conditional (~55%) | Public customer support phone number |
businessAddress | string | 🟡 Conditional (~50%) | Physical corporate office address |
profileUrl | string | 🟢 High (100%) | Direct URL to company's profile on Trustpilot |
💻 Developer integration examples
Node.js / JavaScript (Apify Client)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({token: 'YOUR_APIFY_TOKEN',});// Run Trustpilot reviews scraper for multiple domainsconst run = await client.actor('haketa/trustpilot-reviews-scraper').call({businesses: ['www.booking.com', 'airbnb.com'],maxReviewsPerBusiness: 200,country: 'US',});// Retrieve dataset itemsconst { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Extracted ${items.length} reviews.`);items.forEach((r) => {console.log(`[${r.rating}★] ${r.businessName} - "${r.title}" by ${r.consumerName}`);});
Python (Apify Client)
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run_input = {"searchQueries": ["Wise", "Revolut"],"maxReviewsPerBusiness": 150,"country": "GB",}run = client.actor("haketa/trustpilot-reviews-scraper").call(run_input=run_input)for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"{item.get('businessName')}: {item.get('rating')} stars - {item.get('title')}")
cURL (Apify REST API)
curl "https://api.apify.com/v2/acts/haketa~trustpilot-reviews-scraper/runs?token=YOUR_APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"businesses": ["www.booking.com"],"maxReviewsPerBusiness": 100,"country": "US"}'
📈 Advanced Sentiment Analysis & CX Workflows
1. Automated VoC Sentiment Tagging
When piping Trustpilot reviews into an AI sentiment analysis pipeline or LLM, combine rating, title, and text into a composite prompt:
Review Title: {title}Rating: {rating}/5Customer Comment: {text}Task: Categorize the primary grievance (e.g. Billing, Customer Support, Product Defect, Delivery Speed) and rate overall customer sentiment (-1.0 to +1.0).
2. TrustScore Trajectory & Churn Prediction
By running this Actor on an automated weekly schedule via Apify Schedules, you can capture historical changes in trustScore and reviewsLast12Months. A sustained drop in TrustScore over two consecutive quarters is often the leading indicator of elevated customer churn and declining Net Promoter Scores (NPS).
3. Competitor Response Rate Auditing
Measure how competitors engage with unhappy customers by calculating:
Response Rate = (Count of reviews where companyReply is not null) / (Total reviews)
Average Response Delay = companyReplyDate - publishedDate
Brands with high response rates and short response delays demonstrate proactive customer service operations.
💡 Pro tips & best practices
- 💡 Exact Domain Formatting: Use the company's full web address (
www.booking.comoramazon.com) for instant 100% precision matching without ambiguity. - 💡 Batch Competitor Audits: Scrape up to 20 competitors in a single run. The Actor solves the AWS WAF token once and reuses that session across all targets.
- 💡 Combine Ratings with Experience Dates: Analyze the time delta between
experiencedDateandpublishedDateto assess customer feedback velocity. - 💡 Filter Responsive Brands: Evaluate customer success engagement by filtering for items where
companyReplyis not null to measure response rates and speed. - 💡 Automated Monitoring via Schedules: Schedule weekly runs to ingest newly published reviews into Airtable or BigQuery to build an archival dataset.
- 💡 Select Matching Proxy Countries: Set
country: "GB"for British brands,country: "DE"for German platforms, orcountry: "US"for North American companies to avoid cross-region redirection. - 💡 Filter Verified Reviews for Clean Training: In machine learning sentiment pipelines, filter rows where
isVerified === trueto remove unverified promotional or bot reviews.
❓ Frequently Asked Questions (FAQ)
Do I need a Trustpilot account or login credentials?
No. This Actor accesses publicly available consumer reviews without requiring accounts, passwords, or authentication.
Why are residential proxies required?
Trustpilot employs sophisticated AWS WAF challenge protection that blocks standard datacenter IP ranges. Residential proxies ensure uninterrupted access.
How many reviews can I scrape per business?
Trustpilot exposes the most recent review pages (typically up to ~200-500 recent reviews per business) on its public web interface. Setting maxReviewsPerBusiness: 0 extracts all currently visible reviews.
Are corporate replies included in the output?
Yes. Whenever a business representative responds to a customer review, the response text and reply timestamp are extracted into companyReply and companyReplyDate.
Can I scrape reviews in languages other than English?
Yes. The scraper extracts all published reviews regardless of language. The language field specifies the ISO language code (e.g., en, de, fr, es), making it easy to filter or translate reviews downstream.
How does the hybrid architecture work?
The Actor boots a headed stealth browser session via xvfb to navigate the initial target domain and solve the AWS WAF proof-of-work challenge. Once solved, it captures the resulting security tokens (aws-waf-token) and performs subsequent pagination using fast, low-overhead HTTP calls.
Can I run this Actor via API or Webhooks?
Yes. Every Apify Actor can be triggered programmatically via REST API, Webhooks, or Apify client libraries in Node.js and Python. You can also configure Webhooks to alert your internal endpoints when a new run completes.
What happens if a review is updated or deleted?
The scraper captures real-time data at the exact moment of execution. If a customer edits their comment, the updatedDate field reflects the edit timestamp. Deleted reviews no longer appear on Trustpilot's public feed and will not be returned in fresh runs.
🔗 Related customer review actors
- G2 Reviews Scraper — Software Reviews, Ratings & Profiles
- RepVue Scraper — Sales Org Ratings, Score & Reviews
- Meesho Reviews Scraper — Ratings, Comments, Photos & Authors
- Klook Reviews Scraper — Activity Ratings, Photos & Text
- Trip.com & Ctrip Reviews Scraper — Hotel Ratings & Text
- Despegar Hotel Reviews Scraper — Pros, Cons & Scores
📋 Changelog
- v1.2 (2026-11):
- 🔓 Unlocked 1,000+ deep pagination: Updated
maxReviewsPerBusinessdefault to0(auto/unlimited) and removed collection limits. - ⚡ Optimized prefill execution: Set default test prefill to 50 for rapid platform verification in under 35 seconds.
- 🛡️ Enhanced AWS WAF solver: Streamlined headed browser token acquisition with improved session rotation resilience.
- 🛠️ Refined field normalization: Standardized date formatting, star ratings, and firmographic contact fallbacks.
- 🔓 Unlocked 1,000+ deep pagination: Updated
- v1.1 (2026-10):
- Upgraded stealth browser runtime with xvfb headed mode to pass updated edge challenges.
- Added company name search resolution via internal search API.
- v1.0 (2026-07):
- Initial public release with hybrid stealth WAF solve and fast HTTP pagination.