Trustpilot Reviews Scraper
Pricing
$10.00/month + usage
Trustpilot Reviews Scraper
Collect customer reviews from Trustpilot company pages, including ratings, review text, dates, verification, and company replies. Supports multi-company scraping, pagination, and proxy rotation.
Pricing
$10.00/month + usage
Rating
0.0
(0)
Developer

Jamshaid Arif
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
Scrape customer reviews from any company page on Trustpilot. Extracts structured data including reviewer name, star rating, review text, date, useful votes, verification status, and company reply info.
Features
- Multi-company – Pass a list of Trustpilot URLs and scrape them all in one run.
- Full pagination – Automatically detects total pages and crawls through them.
- Star filter – Only collect 1-star, 5-star, or any combination you choose.
- Sort control – Scrape by most recent or most relevant.
- Proxy rotation – Built-in Apify proxy support to avoid rate limits.
- Retry with backoff – Configurable exponential-backoff retries on failures.
- Async & fast – Uses
httpxasync HTTP client for efficient I/O.
Input
| Field | Type | Default | Description |
|---|---|---|---|
companyUrls | string[] | required | Trustpilot company review URLs |
maxPages | integer | 5 | Max pages per company (0 = all) |
filterByStars | integer[] | [] | Only these ratings (empty = all) |
sortBy | string | recency | recency or relevance |
proxyConfig | object | Apify proxy | Proxy settings |
maxRequestRetries | integer | 3 | Retries per failed request |
delayBetweenRequests | integer | 1500 | Delay in ms between page fetches |
Example Input
{"companyUrls": ["https://www.trustpilot.com/review/www.amazon.com","https://www.trustpilot.com/review/www.ebay.com"],"maxPages": 10,"filterByStars": [1, 2],"sortBy": "recency"}
Output
Each review is pushed to the default dataset with this schema:
| Field | Type | Description |
|---|---|---|
company | string | Company slug from URL |
reviewer | string | Reviewer display name |
rating | integer | 1–5 star rating |
title | string | Review headline |
reviewText | string | Full review body |
dateIso | string | ISO 8601 timestamp |
dateDisplay | string | Human-readable date |
usefulCount | integer | "Useful" vote count |
verified | boolean | Verified user badge |
hasReply | boolean | Company replied |
replyText | string|null | Company reply text |
reviewUrl | string|null | Permalink to review |
scrapedAt | string | When the review was scraped |
Usage
Via Apify Console
- Go to the actor page and click Start.
- Paste your Trustpilot URLs into the Company URLs field.
- Adjust max pages, star filters, and sort as needed.
- Run and export results as JSON, CSV, or Excel from the Dataset tab.
Via API
curl -X POST "https://api.apify.com/v2/acts/<YOUR_ACTOR_ID>/runs" \-H "Authorization: Bearer <YOUR_TOKEN>" \-H "Content-Type: application/json" \-d '{"companyUrls": ["https://www.trustpilot.com/review/www.amazon.com"],"maxPages": 5}'
Via Python SDK
from apify_client import ApifyClientclient = ApifyClient("<YOUR_TOKEN>")run = client.actor("<YOUR_ACTOR_ID>").call(run_input={"companyUrls": ["https://www.trustpilot.com/review/www.amazon.com"],"maxPages": 5,"filterByStars": [1, 2, 3],})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["reviewer"], item["rating"], item["reviewText"][:80])
Cost Estimate
Each page request costs roughly 0.001 compute units. Scraping 100 pages (~2,000 reviews) typically uses less than $0.05 of platform credits.
Notes
- Trustpilot may update their HTML structure. If parsing breaks, open an issue.
- Use reasonable
delayBetweenRequestsvalues (1000+ ms) to be respectful. - Proxy is recommended for runs exceeding ~50 pages.