Trustpilot Reviews Scraper — Reviews & Company Data, No Login
Pricing
$5.00 / 1,000 reviews
Trustpilot Reviews Scraper — Reviews & Company Data, No Login
$5/1K reviews, no login, no token. Scrape Trustpilot reviews by company domain, name or review page URL: rating, title, text, dates, verified flag, reviewer country, company reply, plus the company profile with TrustScore and rating distribution. Star, date, language, verified and reply filters. Dee
Pricing
$5.00 / 1,000 reviews
Rating
0.0
(0)
Developer
Pika Choo
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 hours ago
Last modified
Categories
Share
Trustpilot Reviews Scraper — Reviews, Ratings & Company Profiles (No Login, No Token)
$5 per 1,000 reviews. Nothing to log in to, no app token to paste, no key that expires mid-run. Give this Trustpilot scraper a website domain, a company name or a Trustpilot review page URL and get every review as clean JSON: star rating, title, text, dates, verified flag, reviewer country, likes and the company's reply, plus one free profile row per company with TrustScore, rating distribution, categories, contact details and reply behaviour. Server-side filters for stars, date range, language, verified-only and replied-only, and a deep sweep that goes past Trustpilot's 200-review page limit.
Why this Trustpilot scraper
- 🔓 No token, no login, no rotation. Other Trustpilot scrapers depend on a mobile-app bearer token that expires and kills every run until someone pastes a new one. This one reads Trustpilot's public pages through an anti-bot proxy that is included in the price.
- 💰 One flat price. $5 per 1,000 reviews. Company profile rows, hints and errors are free. No start fee, no "AI insights" upsell.
- 🔎 Past the 200-review limit. Trustpilot shows at most 200 reviews per filter. The deep sweep walks star × date × language streams and de-duplicates, so a company with thousands of reviews yields thousands, not 200.
- 🌍 All languages by default. Trustpilot's own pages default to English. This Actor requests every language unless you narrow it.
- 🏷️ Company profile included. TrustScore, star rating, total and last-12-months review counts, rating distribution, reviews per language, categories, claimed status, contact email and phone, reply rate and average days to reply.
- 🎯 Filters applied at the source. Stars, date range, language, verified-only and replied-only are sent to Trustpilot, so you only fetch, and only pay for, the reviews you want.
Who uses this
- E-commerce and DTC brands tracking their own reviews and their competitors' daily.
- Customer experience and support teams mining 1-star reviews for recurring problems.
- Market researchers and analysts benchmarking TrustScore, reply rate and rating mix across a category.
- Sales and partnership teams qualifying prospects by review volume and sentiment.
- AI and data teams building review datasets for sentiment models, summarisation and RAG.
- Agencies reporting reputation KPIs for many clients from one scheduled run.
What you can do with it
| Goal | Input | Rows |
|---|---|---|
| All recent reviews of a company | companies: ["www.notion.so"] | reviews + 1 company row |
| Find a company by name | companies: ["Airbnb"] | reviews + company row of the best match |
| Only negative reviews | stars: ["1", "2"] | reviews |
| Last 30 days only | dateRange: "last30days" | reviews |
| German-language reviews | languages: ["de"] | reviews |
| Verified reviews with a company reply | verifiedOnly: true, withReplyOnly: true | reviews |
| Thousands of reviews for a big brand | maxReviews: 5000, deepSweep: true | reviews |
| Company profile only | maxReviews: 1, includeCompanyInfo: true | 1 review + company row |
Input
{"companies": ["www.notion.so", "Airbnb", "https://www.trustpilot.com/review/www.amazon.com"],"maxReviews": 100,"stars": [],"dateRange": "all","languages": [],"sort": "recency","verifiedOnly": false,"withReplyOnly": false,"deepSweep": true,"includeCompanyInfo": true}
| Field | Type | Default | What it does |
|---|---|---|---|
companies | array | — | Domains (www.amazon.com), company names (Notion) or Trustpilot review URLs, one per line. |
maxReviews | integer | 100 | Cap per company, up to 20,000. |
stars | array | [] | Keep only these ratings, e.g. ["1", "2"]. |
dateRange | string | all | last30days, last3months, last6months, last12months or all. |
languages | array | [] | ISO codes such as en, de, fr. Empty means every language. |
sort | string | recency | recency (newest first) or relevance. |
verifiedOnly | boolean | false | Only reviews Trustpilot marks as verified. |
withReplyOnly | boolean | false | Only reviews with a company reply. |
deepSweep | boolean | true | Fetch extra star × date × language streams when a company has more than 200 matching reviews. |
includeCompanyInfo | boolean | true | Add one free company profile row per company. |
threads | integer | 16 | Pages fetched in parallel. |
What you get
Review (dataType: "review"): id, url, company, companyDomain, companyUrl, rating, title, text, language, publishedAt, experiencedAt, updatedAt, isVerified, verificationLevel, source (organic or invited), likes, reviewerName, reviewerId, reviewerCountry, reviewerReviewCount, reviewerReviewsOnThisCompany, hasReply, replyText, replyPublishedAt, isPending, location, sourceInput, scrapedAt.
Company (dataType: "company", free): id, name, domain, url, website, trustScore, stars, numberOfReviews, numberOfReviewsLast12Months, ratingDistribution, reviewsByLanguage, categories, primaryCategory, isClaimed, isClosed, countryCode, email, phone, address, replyPercentage, averageDaysToReply, negativeReviews, verifiedByGoogle, logoUrl.
Sample review
{"dataType": "review","id": "6a98f67348c60c8a6c111c1a","url": "https://www.trustpilot.com/reviews/6a98f67348c60c8a6c111c1a","company": "Notion","companyDomain": "notion.so","rating": 1,"title": "Terrible interface to manage plans and…","text": "Terrible interface to manage plans and accounts. Hard to keep track of subscriptions…","language": "en","publishedAt": "2026-09-03T06:24:19.000Z","experiencedAt": "2026-09-03T00:00:00.000Z","isVerified": false,"source": "Organic","likes": 0,"reviewerName": "Jon","reviewerCountry": "AU","reviewerReviewCount": 2,"hasReply": false,"sourceInput": "www.notion.so","scrapedAt": "2026-09-06T21:10:00Z"}
Pricing: how much does it cost to scrape 1,000 Trustpilot reviews?
$5. One event, review, at $0.005 per review row. The company profile row, hint rows and error rows are free. There is no start fee and no minimum, and the anti-bot proxy the Actor needs is included.
A full 200-review pull for one company costs $1 and takes about a minute. A 5,000-review deep sweep of a large brand costs $25.
Use cases
- Reputation monitoring: schedule daily with
dateRange: "last30days"and diffids to catch every new review the day it lands. - Complaint mining:
stars: ["1"]across your product category and cluster thetextfield. - Competitor benchmarking: ten domains in
companieswithmaxReviews: 1to compare TrustScore, reply rate and rating distribution from the free company rows. - Response audit:
withReplyOnly: trueto see how competitors answer criticism, andreplyPercentageto see how often. - Dataset building:
deepSweep: truewith a high cap for training and evaluation corpora.
Use with AI agents and MCP
Add this Actor as a tool in Claude, ChatGPT, Cursor or any MCP client through the Apify MCP server. Ask "what are people complaining about in Notion's 1-star reviews this month?" and the agent fills companies, stars and dateRange for you. Rows are flat JSON with a single dataType field.
Integrations
Runs on a schedule, exports to CSV, Excel, JSON or XML, and connects to Google Sheets, Airtable, Slack, Zapier, Make, n8n and webhooks through the Apify platform. Call it from Python, JavaScript or plain HTTP with the Apify API.
FAQ
Do I need a Trustpilot account, API key or app token?
No. The Actor reads Trustpilot's public review pages. Nothing to paste, nothing that expires.
Why does Trustpilot stop at 200 reviews, and how does the deep sweep get more?
Trustpilot serves at most 10 pages of 20 reviews for any one filter combination. The deep sweep requests many combinations (each star rating × each date bucket × each language the company has reviews in), then removes duplicates. For most companies that recovers the large majority of their history; for the very largest brands with tens of thousands of reviews, expect several thousand rather than all of them.
Why are there fewer reviews than the company's total?
Either your cap or filters limited the pull, or Trustpilot hides some reviews (pending, flagged, or in languages with very few reviews). The company row's numberOfReviews is Trustpilot's own total for reference.
How do I find the right company?
A domain is the most precise input, exactly as Trustpilot writes it (www.amazon.com, notion.so). A company name is matched against Trustpilot search and the best match is used, preferring an exact name match, then the most-reviewed profile. When unsure, paste the review page URL.
Which reviewer details are included?
The public ones Trustpilot shows: display name, country, number of reviews written, and whether the review is verified. No emails or private data.
How fast is it?
About a minute per 200 reviews per company; the deep sweep runs several streams in parallel. Ten companies at 100 reviews each finishes in a few minutes.
Can I export to CSV or Excel?
Yes. Every dataset can be downloaded as CSV, Excel, JSON or XML from the run page or the API.
Is it legal to scrape Trustpilot?
Reviews on Trustpilot are public and intended to be read by anyone. This Actor collects only what is visible without logging in, keeps reviewer data to the public display fields, and paces requests. You are responsible for using the output in line with applicable law and platform terms, especially when processing personal data.