Trustpilot Reviews Scraper
Pricing
Pay per event
Trustpilot Reviews Scraper
Extract Trustpilot reviews with ratings, replies, reviewer info, and company data. Fast HTTP scraping with 30 fields per review. Filter by stars, language, verified status. Export to JSON, CSV, or Excel.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Stas Persiianenko
Actor stats
0
Bookmarked
57
Total users
23
Monthly active users
2 days ago
Last modified
Categories
Share
What does Trustpilot Scraper do?
Trustpilot Scraper extracts reviews, ratings, and company data from any business page on Trustpilot.com. It collects 30 data fields per review including review text, star rating, author info, country, verification status, company replies, and more.
The scraper works by parsing Trustpilot's server-side rendered JSON data directly from the page source. No browser is needed — pure HTTP scraping for maximum speed and lowest cost. It handles pagination automatically, so you can scrape tens of thousands of reviews from a single company in one run.
Key capabilities:
- Extract reviews from multiple companies in a single run
- Filter by star rating, language, date range, and verification status
- Collect company metadata alongside reviews (trust score, total reviews, categories)
- Sort results by recency or relevance
- Output in JSON, CSV, Excel, or connect to any integration
Who is Trustpilot Scraper for?
- Brand managers monitoring their company's reputation and responding to negative feedback
- Market researchers comparing competitor review sentiment and satisfaction trends
- Data analysts building dashboards from structured review data
- E-commerce teams tracking product and service quality through customer feedback
- Sales teams identifying unhappy customers of competitors for outreach
- Agencies managing review monitoring for multiple clients
- AI/ML engineers building sentiment analysis models or training datasets from real review text
- Consultants benchmarking client performance against industry peers on Trustpilot
Why use Trustpilot Scraper?
- 30 fields per review — the richest Trustpilot output on Apify Store
- 100% success rate — reliable HTTP-based extraction via server-side rendered data
- $0.20 per 1,000 reviews — cheapest paid option with full data
- No browser needed — runs on minimal memory (512 MB), fast and cost-effective
- Multi-company support — scrape multiple companies in a single run
- Date range filtering — narrow results to the last 30 days, 3 months, 6 months, or 12 months
- Star and language filters — target specific ratings or review languages
- Verified-only mode — restrict to verified or invited reviews
- Company metadata included — trust score, total reviews, categories per company
- Stable extraction — reads structured JSON from Trustpilot's Next.js rendering, not fragile HTML selectors
What data can you extract from Trustpilot?
Each review record contains up to 30 fields. Here are the key ones:
| Field | Description |
|---|---|
| reviewId | Unique review identifier |
| reviewUrl | Direct URL to the review |
| title | Review headline |
| text | Full review text |
| rating | Star rating (1-5) |
| publishedDate | When the review was published |
| experienceDate | Date of the reviewed experience |
| updatedDate | When the review was last edited |
| language | Review language code |
| likes | Number of likes on the review |
| verificationLevel | Verification status (invited, verified, unverified) |
| isVerified | Whether the reviewer is verified |
| source | How the review was submitted (e.g., BasicLink, InvitationEmail) |
| authorName | Reviewer's display name |
| authorId | Reviewer's unique ID |
| authorImage | Reviewer's avatar URL |
| authorReviewCount | Total reviews by this author |
| country | Reviewer's country code |
| replyMessage | Company's reply text (null if no reply) |
| replyPublishedDate | When the company replied |
| replyUpdatedDate | When the company edited their reply |
| companyName | Business name on Trustpilot |
| companyDomain | Company domain (e.g., pipedrive.com) |
| companyTrustScore | Overall trust score (1-5) |
| companyStars | Star rating (1-5) |
| companyTotalReviews | Total number of reviews |
| companyCategories | Business categories |
| companyUrl | Full Trustpilot URL for the company |
How much does it cost to scrape Trustpilot?
This Actor uses pay-per-event pricing. You pay only for the reviews you scrape. No monthly subscription required. All platform costs (compute, proxy, storage) are included in the per-review price.
| Free plan | Starter ($49/mo) | Scale ($499/mo) | |
|---|---|---|---|
| Per review | $0.0002 | $0.00017 | $0.00015 |
| 1,000 reviews | $0.20 | $0.17 | $0.15 |
| 10,000 reviews | $2.00 | $1.70 | $1.50 |
| 100,000 reviews | $20.00 | $17.00 | $15.00 |
Real-world cost examples:
| Scenario | Reviews | Duration | Cost (Free tier) |
|---|---|---|---|
| Small company (50 reviews) | 50 | ~12s | ~$0.01 |
| Medium company (200 reviews) | 200 | ~25s | ~$0.04 |
| Large company (2,748 reviews) | 2,748 | ~5 min | ~$0.55 |
| Multi-company batch (5 companies, 500 each) | 2,500 | ~8 min | ~$0.50 |
How to scrape Trustpilot reviews step by step
- Go to Trustpilot and find the company you want to scrape.
- Copy the company domain from the URL (e.g.,
pipedrive.comfromtrustpilot.com/review/pipedrive.com). - Enter the domain in the Company URLs or Domains field. You can add multiple companies.
- Set Max Reviews Per Company to limit results (0 = unlimited).
- Optionally apply filters: star ratings, language, date range, verified only, or replies only.
- Click Start and wait for the run to finish.
- Download results in JSON, CSV, or Excel from the Storage tab.
Input example:
{"companyUrls": ["pipedrive.com", "notion.so"],"maxReviewsPerCompany": 100,"sort": "recency","date": "last3months","includeCompanyInfo": true}
You can also paste full Trustpilot URLs like https://www.trustpilot.com/review/pipedrive.com.
Input parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
| companyUrls | array | (required) | Company domains or full Trustpilot URLs. One per line. |
| maxReviewsPerCompany | integer | 0 (unlimited) | Maximum reviews to scrape per company. Set to 0 for all reviews. |
| stars | array | [] (all) | Filter by star ratings (1-5). Select one or more. |
| languages | array | [] (default) | Filter by language codes (e.g., en, fr, de, es). |
| sort | string | recency | Sort order: recency (newest first) or relevance. |
| date | string | "" (all time) | Date range filter: last30days, last3months, last6months, or last12months. |
| verified | boolean | false | Only scrape verified reviews. |
| withReplies | boolean | false | Only scrape reviews that have a company reply. |
| includeCompanyInfo | boolean | true | Add company metadata (trust score, total reviews, categories) to each review record. |
Output example
Each review is output as a JSON object with up to 30 fields:
{"reviewId": "697f69d898b1919e835668fe","reviewUrl": "https://www.trustpilot.com/reviews/697f69d898b1919e835668fe","title": "The perfect CRM to scale our sales processes","text": "Pipedrive is by far the most user-friendly CRM I've used...","rating": 5,"publishedDate": "2026-02-01T16:57:28.000Z","experienceDate": "2026-01-26T00:00:00.000Z","updatedDate": null,"language": "en","likes": 0,"verificationLevel": "invited","isVerified": false,"source": "BasicLink","authorName": "Constance","authorId": "697f69be45115d00d35081cc","authorImage": "","authorReviewCount": 1,"country": "FR","replyMessage": null,"replyPublishedDate": null,"replyUpdatedDate": null,"companyName": "Pipedrive","companyDomain": "pipedrive.com","companyTrustScore": 4.5,"companyStars": 4.5,"companyTotalReviews": 3212,"companyCategories": ["CRM Provider", "Software Company"],"companyUrl": "https://www.trustpilot.com/review/pipedrive.com"}
Results are available in JSON, CSV, XML, and Excel formats. You can download them from the Apify Console or retrieve them programmatically via the API.
Tips for best results
- Scrape all reviews by setting
maxReviewsPerCompanyto 0 — pagination handles thousands of reviews automatically. - Use date range filtering to narrow results to recent reviews (e.g.,
last3months) instead of scraping everything and filtering later. - Use star filters to target only negative (1-2) or positive (4-5) reviews for sentiment analysis.
- Multi-company runs are more efficient than running the actor separately for each company.
- Sort by recency to get the latest reviews first — useful for ongoing monitoring.
- Combine filters for targeted extraction: e.g., only 1-star verified reviews from the last 30 days.
- Schedule regular runs with Apify's built-in scheduler to track new reviews daily or weekly.
- Use
includeCompanyInfo: falseif you only need review data — it slightly reduces output size for large datasets.
Integrations
Connect Trustpilot Scraper with your existing tools using Apify integrations:
- Google Sheets — export reviews directly to a spreadsheet for analysis
- Slack — get notified when new negative reviews appear
- Zapier — trigger workflows based on new reviews (CRM updates, tickets, alerts)
- Make (Integromat) — build multi-step automations with review data
- Webhooks — send data to any API endpoint in real time
- Amazon S3 / Google Cloud Storage — archive review data automatically
- GitHub / GitLab — schedule runs via CI/CD pipelines
You can also set up scheduled runs to monitor reviews automatically. For example, run the scraper daily and send new 1-star reviews to Slack for immediate response.
Programmatic access via API
Call Trustpilot Scraper programmatically from your application using the Apify API.
Node.js:
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('automation-lab/trustpilot').call({companyUrls: ['pipedrive.com'],maxReviewsPerCompany: 100,sort: 'recency',});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python:
from apify_client import ApifyClientclient = ApifyClient('YOUR_API_TOKEN')run = client.actor('automation-lab/trustpilot').call(run_input={'companyUrls': ['pipedrive.com'],'maxReviewsPerCompany': 100,'sort': 'recency',})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
cURL:
curl "https://api.apify.com/v2/acts/automation-lab~trustpilot/runs" \-X POST \-H "Authorization: Bearer YOUR_API_TOKEN" \-H "Content-Type: application/json" \-d '{"companyUrls": ["pipedrive.com"], "maxReviewsPerCompany": 100, "sort": "recency"}'
For full API documentation, see the Apify API reference.
Use with AI agents via MCP
Trustpilot Scraper is available as a tool for AI assistants via the Model Context Protocol (MCP).
Setup for Claude Code
$claude mcp add --transport http apify "https://mcp.apify.com"
Setup for Claude Desktop, Cursor, or VS Code
{"mcpServers": {"apify": {"url": "https://mcp.apify.com"}}}
Example prompts
- "Get the latest 100 reviews for pipedrive.com on Trustpilot"
- "Scrape all 1-star Trustpilot reviews for this company from the last 3 months"
- "Compare Trustpilot ratings for these three competitors"
Learn more in the Apify MCP documentation.
Is it legal to scrape Trustpilot?
Trustpilot reviews are publicly available on the web, and scraping publicly accessible data for personal use, research, or business intelligence is generally permitted. This scraper only accesses publicly visible pages — it does not bypass any login walls, CAPTCHAs, or access controls.
That said, how you use the scraped data matters. You should:
- Comply with applicable data protection laws (GDPR, CCPA) when processing personal data like reviewer names or countries.
- Respect Trustpilot's Terms of Service — review them for restrictions on commercial redistribution of their data.
- Not republish reviews in a way that misrepresents their source or manipulates ratings.
- Use data responsibly — for analysis, monitoring, research, and internal business purposes.
For a detailed overview, see Apify's article on the legality of web scraping.
Legality
This actor accesses publicly available data through official or public APIs. API usage is subject to each service's Terms of Service and rate limits. Always review the API provider's usage policies before running at scale.
FAQ
How many reviews can I scrape? There is no limit. The scraper paginates through all available reviews. Companies with tens of thousands of reviews are handled automatically.
Does it work without proxies? Yes. Trustpilot serves data via server-side rendering without aggressive blocking. The scraper uses Apify's built-in proxy infrastructure for reliability, but Trustpilot is not known for heavy anti-scraping measures.
Can I filter reviews by date?
Yes. Use the date parameter to filter by last30days, last3months, last6months, or last12months. You can also sort by recency and set maxReviewsPerCompany to limit how far back you go.
Can I scrape reviews in other languages?
Yes. Use the languages filter to specify language codes (e.g., fr, de, es, nl). Leave empty to get reviews in the company's default language.
How often does Trustpilot change their website? Trustpilot uses Next.js with server-side rendering, a pattern that has been stable for years. The scraper extracts structured JSON directly from the page source rather than parsing HTML selectors, which minimizes breakage risk.
The scraper returns 0 reviews. What should I check?
Verify the company domain or URL is correct. The domain must match Trustpilot's listing exactly (e.g., pipedrive.com, not www.pipedrive.com). You can also paste the full Trustpilot URL like https://www.trustpilot.com/review/pipedrive.com. If the company has no reviews on Trustpilot, the result will be empty.
Some reviews are missing company reply data. Is this a bug?
No. The replyMessage field is only populated when the business has actually replied to a review. Many reviews do not have replies. Use the withReplies: true filter to get only reviews that have company responses.
Can I scrape multiple companies at once?
Yes. Add multiple domains or URLs to the companyUrls array. The scraper processes them sequentially and outputs all reviews to the same dataset. Each review includes company metadata so you can identify which company it belongs to.
How fast is the scraper? Typical speed is 500-1,000 reviews per minute. A company with 2,748 reviews takes about 5 minutes. Speed depends on the number of reviews per page and network conditions.
Can I run this on a schedule? Yes. Use Apify's built-in scheduler to run the scraper at any interval (hourly, daily, weekly). Combine with integrations to automatically export new data.
Related scrapers
- Trustpilot Scraper — search for businesses on Trustpilot and scrape company profiles
- Google Maps Reviews Scraper — extract reviews from Google Maps business listings
- TripAdvisor Scraper — scrape reviews, ratings, and business details from TripAdvisor
- Google Maps Lead Finder — find businesses with reviews and contact details on Google Maps