Trustpilot Reviews Scraper
Pricing
from $0.32 / 1,000 reviews
Trustpilot Reviews Scraper
Input: Trustpilot company domains or URLs (+ star, language, date filters). Output: one JSON row per review: rating, title, text, date, reviewer name/country, verified flag, company reply and TrustScore. JSON/CSV/Excel.
Pricing
from $0.32 / 1,000 reviews
Rating
0.0
(0)
Developer
DataDesk
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Security
Limited permissionsShare
Trustpilot Reviews Scraper: Export Trustpilot Reviews to CSV/JSON
Trustpilot scraper for company reviews and TrustScore · extraer reseñas de Trustpilot · extrair avaliações do Trustpilot.
Scrape Trustpilot reviews for any company: star rating, title, full text, dates, reviewer country, verification status and company replies, plus the business TrustScore and total review count. Ideal for reputation monitoring, competitor research, sentiment analysis and LLM summaries.
Features
- ⭐ Filter by star rating (e.g. only 1–2 star complaints), language and date.
- 🏢 Many companies per run: domain (
www.amazon.com) or Trustpilot URL. - 💬 Company replies, likes, reviewer review count, experienced vs. published date.
- 📦 Clean JSON / CSV / Excel, plus API, schedules, webhooks, Make, Zapier, n8n and MCP.
Sources and coverage
| Source | Coverage | Data |
|---|---|---|
| Trustpilot | All countries / company domains on Trustpilot | rating, title, text, date, reviewer, country, company reply, TrustScore |
How to use it
- Click Try for free (or Start): the prefilled input runs a quick test.
- Fill in the input fields (see the examples below). Every field is optional.
- Click Start and wait a few seconds to minutes, depending on how many reviews you ask for.
- Open the Output tab and export as JSON, CSV, Excel, XML or HTML, or read the results via API.
Input examples
One company (default):
{"companies": ["www.amazon.com"], "maxReviewsPerCompany": 50}
Only 1-2 star reviews:
{"companies": ["www.booking.com"], "stars": ["1", "2"], "maxReviewsPerCompany": 200}
English reviews since a date:
{"companies": ["www.shopify.com"], "languages": "en", "dateFrom": "2026-09-01"}
Competitor set:
{"companies": ["www.n26.com", "www.revolut.com", "wise.com"], "maxReviewsPerCompany": 100}
Input fields
| Field | Type | Description |
|---|---|---|
companies | array | Company domains as on Trustpilot (amazon.com, www.zara.com) or Trustpilot review URLs. |
maxReviewsPerCompany | integer | Maximum reviews saved per company (Trustpilot shows 20 per page). Use 20-50 for a quick test. |
stars | array | Only reviews with these star ratings, e.g. 1 and 2 for complaints. Empty = all ratings. |
languages | string | Review language code (en, es, de) or 'all'. |
sort | string | Order of reviews: most recent first (recency) or Trustpilot's most relevant (relevance). |
dateFrom | string | Optional date YYYY-MM-DD. With recency sort, stops when reviews get older than this date. |
Output example
One row per item. Values below are example values from a real test run (long text shortened):
{"companyDomain": "www.amazon.com","companyName": "Amazon","trustScore": 1.6,"companyTotalReviews": 49884,"reviewId": "6ad292ed3cb5e98a72cce3d4","rating": 1,"title": "Amazon Going Rapidly Downhill","text": "I don't know what is happening with Amazon lately. They give you a delivery time but it just gets pushed back. I have literally just had an …","language": "en","publishedDate": "2026-10-16T23:11:09.000Z","experiencedDate": "2026-10-16T00:00:00.000Z","consumerName": "Debe Woods","consumerCountry": "GB","consumerReviewCount": 13,"isVerified": false,"likes": 0,"source": "Organic","reviewUrl": "https://www.trustpilot.com/reviews/6ad292ed3cb5e98a72cce3d4""…": "more fields below"}
Fields a source does not publish are null.
Output fields
| Field | Description |
|---|---|
companyDomain | Company domain on Trustpilot |
companyName | Company name |
trustScore | Company TrustScore (1-5) |
companyTotalReviews | Total reviews of the company |
reviewId | Unique review ID on the source site |
rating | Star rating 1-5 |
title | Title (review title, job title, product or filing title) |
text | Full review text |
language | Review language code |
publishedDate | Review publish date (ISO 8601) |
experiencedDate | Date of experience |
consumerName | Reviewer name |
consumerCountry | Reviewer country code |
consumerReviewCount | Number of reviews by this reviewer |
isVerified | True if the review is verified |
likes | Useful votes |
source | Source site / board the record came from |
replyText | Company reply text |
replyDate | Company reply date |
reviewUrl | Direct URL to the review |
scrapedAt | When the record was scraped (ISO 8601 UTC) |
The Output tab has a Reviews view.
Pricing
Pay-per-event: you pay only for results delivered, no monthly fee.
- Review (
review): $0.40 per 1,000 ($0.0004 each) - Actor start: $0.005 per run
| Run | Reviews | Cost |
|---|---|---|
| Quick test | 20 | $0.013 |
| Small run | 100 | $0.045 |
| Regular run | 1,000 | $0.405 |
| Large run | 10,000 | $4.005 |
Rows that are not delivered are never charged. Apify's free plan includes monthly credit, and you can set a maximum cost per run in the run options.
Use cases
- Customer feedback and sentiment analysis
- Competitor review monitoring
- Find unhappy customers of competitors (1-2 stars)
- Feed reviews to LLMs for summaries and topic mining
Integrations and API
- Export results as JSON, CSV, Excel, XML or HTML from the Output tab.
- Schedule runs (daily, hourly) and send results to Google Sheets, Slack, Zapier, Make, n8n, Airbyte or webhooks.
- Call it from code with the Apify API:
curl -X POST "https://api.apify.com/v2/acts/datadesk-io~trustpilot-reviews-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \-H "Content-Type: application/json" \-d '{"companies": ["www.amazon.com"], "maxReviewsPerCompany": 50}'
from apify_client import ApifyClientclient = ApifyClient("YOUR_TOKEN")run = client.actor("datadesk-io/trustpilot-reviews-scraper").call(run_input={'companies': ['www.amazon.com'], 'maxReviewsPerCompany': 50})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item.get('companyName'), item.get('rating'), item.get('title'))
FAQ
How many reviews can I get? Trustpilot shows 20 reviews per page. Use filters (stars, language) to reach deeper slices of large companies. Is it legal? Reviews are public. Process any personal data in line with the GDPR and other laws that apply to you. Issues or feature requests? Use the Issues tab. We usually reply within 48h.
Do I need a login, API key or proxies? No. It uses publicly available data only, so no account on the source site is needed.
How fresh is the data? Live: every run reads the source at that moment. Schedule it to keep a dataset up to date.
Why did I get fewer reviews than the maximum? The source had fewer matching reviews, or duplicates were removed. You only pay for reviews delivered.
Limitations
- Only public reviews visible on Trustpilot.
- Reviewer emails are never available.
Support
Found a bug, or need a new field, source or filter? Open an issue in the Issues tab; we usually answer within 24 hours. Custom data work: datadesk.io@proton.me.
Use with AI agents (MCP)
This Actor works as a tool for AI agents through the Apify MCP server. Add it to Claude (Desktop/Code), ChatGPT, Cursor, VS Code or any MCP client with this URL:
https://mcp.apify.com/?tools=datadesk-io/trustpilot-reviews-scraper
Sign in with your Apify account (OAuth) or pass your API token. The agent sees the input schema, runs the Actor and reads the dataset; every input field is optional and every output field is documented.
What goes in → what comes out: Input: Trustpilot company domains or URLs (+ star, language, date filters). Output: one JSON row per review: rating, title, text, date, reviewer name/country, verified flag, company reply and TrustScore. JSON/CSV/Excel.
Example prompt:
Get the latest 100 Trustpilot reviews for amazon.com and summarize what customers complain about.