Trustpilot Reviews Scraper - Reviews, Ratings & Replies avatar

Trustpilot Reviews Scraper - Reviews, Ratings & Replies

Pricing

Pay per event + usage

Go to Apify Store
Trustpilot Reviews Scraper - Reviews, Ratings & Replies

Trustpilot Reviews Scraper - Reviews, Ratings & Replies

Scrape Trustpilot reviews for any company by domain, link or keyword: rating, text, date, reviewer, company replies. Filters, insights. No login.

Pricing

Pay per event + usage

Rating

0.0

(0)

Developer

CheapAPI

CheapAPI

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Trustpilot Reviews Scraper: Ratings, Replies & Insights

Export Trustpilot reviews for any company by domain, Trustpilot link or keyword: star rating, title, full text, date, language, verified flag and the company's reply, as JSON, CSV or Excel, from $0.11 per 1,000 reviews.

Limit: at most 400 reviews per company per run (200 by default, 400 with Get more than 200 reviews). This is a fixed limit of the data source behind this Actor, not a setting we can raise. For the complete history of a company with thousands of reviews, use an Actor that advertises unlimited reviews (3.4–8.4× the price on the Free plan for 1,000 reviews — see Compared with alternatives), or schedule this Actor with Only new reviews to build the history going forward.

Why this Actor

  • Low price: $0.22 per 1,000 reviews ($0.11 on Gold and higher plans) plus $0.0035 per company. No start fee, no monthly fee (platform usage billed separately — see Pricing).
  • Flat rows with a stable id: rating, title, text, language, date, verified flag, photos, company reply (text, date, all replies) and company context (name, website, TrustScore, total reviews, address). Reviewer details (name, country, profile, number of reviews written) are off by default for privacy and can be turned on.
  • Star, verified, language and date filters, and up to 400 reviews per company with Get more than 200 reviews.
  • Three ways in: company domains, Trustpilot links from any country site, or keyword search (up to 140 companies per keyword) — plus a company-list mode for lead lists.
  • Built for monitoring: "Only new reviews" skips (and does not charge as reviews) reviews delivered by earlier runs; a free INSIGHTS record gives rating distribution, monthly trend, reply rate and top words per company.

Compared with alternatives

Typical run: 1,000 reviews from 5 companies. Prices from public Apify Store listings, checked September 2026 (start fees included; optional add-on events excluded — e.g. the most-used Actor also offers company metadata at $0.01 per company and AI insights at $0.02–$0.05 per company). The other Actors include platform usage in their price; for this Actor Apify platform usage is billed separately by Apify (at the default 256 MB a small run typically uses about $0.001–$0.003), so add about $0.001–$0.003 to its row.

ActorFree planGold planStart feePlatform usageReviews per company
Most-used Trustpilot Actor (~2,800 users)$0.80$0.525✓ ($0.025–$0.05)IncludedNo cap (as advertised)
Second most-used (~2,300 users)$0.58$0.305 ($0.205 Platinum, $0.145 Diamond)✓ ($0.005)IncludedNot stated
Cheapest flat-rate Actor ($0.25 / 1,000)$0.255$0.255✓ ($0.005)IncludedMore than 200 (as advertised)
"Unlimited reviews" Actor$2.00 ($0.40 on Bronze)$0.30✓ ($0.0005)IncludedUnlimited (as advertised)
This Actor$0.2375$0.1275✗Billed separately (~$0.001–$0.003)400 (fixed maximum)

What the table means:

  • For up to 400 reviews per company, this Actor is the lowest-priced option in the table on every plan for this run (on Platinum and Diamond our Gold price of $0.1275 applies), also after adding its platform usage, and adds free INSIGHTS, keyword search, company lists and an Only new reviews mode that does not charge repeats.
  • Need more than 400 reviews of one company? This Actor cannot deliver them. Actors advertising "no cap" / "unlimited" (we have not verified these claims) may go deeper, but the same 1,000 reviews cost $0.80–$2.00 on the Free plan ($0.30–$0.525 on Gold). Pick one of them for one-off full-history exports of large companies.
  • Prices for other run sizes differ; start fees weigh more on small runs (this Actor has none).

Not included

  • More than 400 reviews per company — a fixed limit of the data source (see above). Workaround: schedule runs with Only new reviews to keep a complete history from today on.
  • Private business-account data (invitation statistics, reviewer e-mails, TrustBox widgets) — only public data is collected.
  • Review sites other than Trustpilot (G2, Capterra, Yelp) — not covered. For Google Maps reviews and places, use Google Maps Scraper Plus.
  • Sentiment scores per review — export the text to your own model; INSIGHTS gives rating distribution and top words for free.
  • Company rankings in Google search — use Google SERP Scraper; for how brands appear in AI answers, use AI Search Visibility Tracker.

What data you get

One row per review (examples from a real run):

FieldTypeExample
idstring3f9f139b9c4370ce (stable: same review → same ID in every run)
inputstringabetter.bid
searchKeywordstring | nullcar insurance (keyword search only, otherwise null)
companyDomainstringabetter.bid
companyNamestringA Better Bid
companyTrustpilotUrlstringhttps://www.trustpilot.com/review/abetter.bid
companyWebsitestring | nullhttps://abetter.bid (website from keyword search; otherwise derived from the Trustpilot domain)
companyLocationstring | null1201 N. Orange Street Suite #7258 Wilmington 19801 US
companyOverallRatingnumber2.9 (TrustScore)
companyReviewsCountinteger124
reviewIdstring6a99bf97d9fe5fdcca9099e8
reviewUrlstringhttps://www.trustpilot.com/reviews/6a99bf97d9fe5fdcca9099e8
ratingnumber5
titlestringSmooth transitions.
textstringSmooth, seamless process and transactions…
languagestringen
publishedAtstring (ISO 8601)2026-09-03T20:42:31.000Z
verifiedbooleanfalse
imagesstring[][]
positioninteger1 (position in the sort order it was collected in)
reviewerNamestring(only with Include reviewer details) I WIN
reviewerProfileUrlstring(only with Include reviewer details) https://www.trustpilot.com/users/6a99bf8e186db6423b36b225
reviewerAvatarUrlstring | null(only with Include reviewer details) https://user-images.trustpilot.com/…/73x73.png
reviewerCountrystring | null(only with Include reviewer details) US
reviewerReviewsCountinteger | null(only with Include reviewer details) 1 (helps spot one-off accounts)
hasCompanyReplybooleantrue
companyReplyTextstring | nullThank you so much for your positive feedback!
companyReplyDatestring | null2026-09-09T14:46:32.000Z
companyRepliesobject[][{ "title", "text", "date" }]
scrapedAtstring (ISO 8601)2026-09-28T10:07:40.832Z

companyReplyText, companyReplyDate and companyReplies are left out when Include company replies is off. The five reviewer… fields are included only when Include reviewer details is on (off by default).

In Only list companies mode each row is a company: id, keyword, rank, companyName, companyDomain, companyWebsite, companyTrustpilotUrl, rating, reviewsCount, scrapedAt.

The key-value store also holds INSIGHTS (free, per company: average rating, 1–5 star distribution, monthly rating trend, verified share, reply share, languages, top words in positive and negative reviews) and RUN_SUMMARY (counts, skipped inputs and why, errors, whether the budget stopped the run).

How to use

  1. Open the Actor in Apify Console and click Try for free.
  2. In Companies, enter one company per line — the domain as Trustpilot shows it (www.airbnb.com) or the Trustpilot link (https://uk.trustpilot.com/review/www.booking.com). Tip: open the company on Trustpilot and copy the link from your browser.
  3. Set Max reviews per company (default 100, up to 200; up to 400 with Get more than 200 reviews).
  4. Optional: open Advanced: review options (sort, more reviews, replies, reviewer details, monitoring), Filters (stars, verified, language, date) or the keyword search section.
  5. Click Start. Most runs finish in 1–3 minutes.
  6. Download the results as JSON, CSV, Excel or HTML from the Output tab, or read them through the API.

Ready-to-paste input:

{
"companies": ["www.airbnb.com", "https://uk.trustpilot.com/review/www.booking.com"],
"maxReviewsPerCompany": 100
}

API

curl (runs the Actor and returns the reviews in one call):

curl -X POST "https://api.apify.com/v2/acts/cheapapi~trustpilot-reviews-scraper/run-sync-get-dataset-items?token=<YOUR_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"companies": ["www.airbnb.com"], "maxReviewsPerCompany": 100}'

JavaScript (npm install apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: '<YOUR_TOKEN>' });
const run = await client.actor('cheapapi/trustpilot-reviews-scraper').call({
companies: ['www.airbnb.com'],
maxReviewsPerCompany: 100,
maxRating: 2, // only 1–2 star reviews
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.length, items[0]?.title);

Python (pip install apify-client):

from apify_client import ApifyClient
client = ApifyClient("<YOUR_TOKEN>")
run = client.actor("cheapapi/trustpilot-reviews-scraper").call(run_input={
"companies": ["www.airbnb.com"],
"maxReviewsPerCompany": 100,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["rating"], item["title"])

Use cases

  • Reputation monitoring: schedule a daily run with Only new reviews and alert your team about new 1–2 star reviews.
  • Competitor benchmarking: compare TrustScore, rating trend and reply rate across dozens of competitors in one run.
  • Customer-experience research: collect negative reviews (maxRating: 2) and group complaints with the INSIGHTS top words.
  • AI and sentiment pipelines: feed clean review text with language codes into an LLM or a sentiment model.
  • Lead generation: list companies in a category (car insurance, web hosting) with their rating and review count, then target low-rated ones.
  • Due diligence: check how a supplier or acquisition target treats unhappy customers (reply rate, reply text).

Advanced options

OptionInput nameDefaultWhat it does
Sort reviews bysortByrecencyrecency = most recent first, relevance = Trustpilot's default order
Get more than 200 reviewsgetMoreReviewsfalseAdds a second request per company in the other sort order and removes duplicates: up to 400 distinct reviews per company (fewer, sometimes none, when the two orders overlap). One extra company event per company where it adds reviews; "page checked" fees when it adds few or none (see Pricing)
Minimum star ratingminRating1Only reviews with at least this many stars (1–5; 4 = 4 and 5 stars)
Maximum star ratingmaxRating5Only reviews with at most this many stars (1–5; 2 = negative only)
Only verified reviewsonlyVerifiedfalseOnly reviews Trustpilot marks as verified
Review languageslanguagesallLanguage codes, e.g. ["en", "de"]
Reviews published from / untildateFrom / dateTononeDate range, YYYY-MM-DD
Include company repliesincludeCompanyRepliestrueTurn off to leave reply text and date out (hasCompanyReply stays)
Include reviewer detailsincludeReviewerDetailsfalseAdds reviewer name, profile URL, avatar URL, country and number of reviews written (personal data — see Privacy)
Only new reviewsskipPreviouslyScrapedfalseSkips (and does not charge as reviews) reviews delivered by earlier runs with this option on; a company with nothing new costs "page checked" fees (see Pricing). The list is kept in your key-value store trustpilot-reviews-seen
Company insights summarygenerateInsightstrueFree INSIGHTS record per run
Find companies by keywordsearchKeywordsnoneCompany names or categories to search on Trustpilot
Companies per keywordmaxCompaniesPerSearch5Top matches used per keyword (1–140)
Only list companiescompaniesOnlyfalseReturn the matching companies instead of their reviews
Processing speedprocessingSpeedautoauto (fast below 2,000 expected reviews, economy above), fast (usually 1–3 min), economy (up to ~45 min, applied to runs of 500+ reviews). Same event prices; economy needs fewer "page checked" fees

The star, verified, language and date options are grouped under Filters in the input form. Filters are applied to the reviews read for each company (up to 200 in your sort order, or up to 200 in each order with Get more than 200 reviews), so a filtered run can return fewer rows than the maximum.

How "Get more than 200 reviews" works: one request returns at most 200 reviews of a company in one sort order. With the option on, a company that has more reviews than were read gets a second request in the other order (newest ↔ most relevant). Reviews are de-duplicated by review ID, so you pay only for distinct reviews. How many new reviews the second request adds depends on how much the two orders overlap — anywhere from none to 200. For very active companies the two orders can overlap completely (in our test with a company with 100,000+ reviews the second request added no new reviews); a second request that adds no new reviews is not charged as reviews or as a company, only the "page checked" fees that cover it (see Pricing). The second request is only made when it can help: the first one came back full, the company has more reviews on Trustpilot, and fewer reviews than your maximum were delivered (because the maximum is above 200, or filters / Only new reviews left some out).

Advanced input example:

{
"companies": ["www.airbnb.com"],
"searchKeywords": ["car insurance"],
"maxCompaniesPerSearch": 10,
"maxReviewsPerCompany": 400,
"getMoreReviews": true,
"sortBy": "recency",
"maxRating": 2,
"languages": ["en"],
"dateFrom": "2026-01-01",
"includeCompanyReplies": true,
"includeReviewerDetails": false,
"skipPreviouslyScraped": true,
"processingSpeed": "auto"
}

Output example

Example output — a real review row (default settings, reviewer details off):

{
"id": "3f9f139b9c4370ce",
"input": "abetter.bid",
"searchKeyword": null,
"companyDomain": "abetter.bid",
"companyName": "A Better Bid",
"companyTrustpilotUrl": "https://www.trustpilot.com/review/abetter.bid",
"companyWebsite": "https://abetter.bid",
"companyLocation": "1201 N. Orange Street Suite #7258 Wilmington 19801 US",
"companyOverallRating": 2.9,
"companyReviewsCount": 124,
"reviewUrl": "https://www.trustpilot.com/reviews/6a99bf97d9fe5fdcca9099e8",
"reviewId": "6a99bf97d9fe5fdcca9099e8",
"rating": 5,
"title": "Smooth transitions.",
"text": "Smooth, seamless process and transactions. Answer all concerns and questions. Great business. ",
"language": "en",
"publishedAt": "2026-09-03T20:42:31.000Z",
"verified": false,
"images": [],
"position": 1,
"hasCompanyReply": true,
"companyReplyText": "Thank you so much for your positive feedback!",
"companyReplyDate": "2026-09-09T14:46:32.000Z",
"companyReplies": [
{
"title": "Reply from A Better Bid",
"text": "Thank you so much for your positive feedback!",
"date": "2026-09-09T14:46:32.000Z"
}
],
"scrapedAt": "2026-09-28T10:07:40.832Z"
}

With Include reviewer details on, the row also has "reviewerName": "I WIN", "reviewerProfileUrl": "https://www.trustpilot.com/users/6a99bf8e186db6423b36b225", "reviewerAvatarUrl": "https://user-images.trustpilot.com/6a99bf8e186db6423b36b225/73x73.png", "reviewerCountry": "US" and "reviewerReviewsCount": 1.

Example output — a company row in Only list companies mode:

{ "id": "eec8c293f43609dd", "keyword": "pizza restaurant", "rank": 1, "companyName": "Pizza Bella Milano Restaurant og Grill", "companyDomain": "pizzabellamilano.dk", "companyWebsite": "https://pizzabellamilano.dk/", "companyTrustpilotUrl": "https://www.trustpilot.com/review/pizzabellamilano.dk", "reviewsCount": 30, "rating": 1.5, "scrapedAt": "2026-09-28T10:14:14.345Z" }

The dataset has three table views: Reviews, Companies and Company list (keyword search).

Pricing

Typical cost: about $0.24 for 1,000 reviews from 5 companies ($0.13 on Gold and higher plans), plus Apify platform usage billed separately.

Apify Free plan: Apify does not pay developers for usage on its Free plan, so on the Free plan this Actor can be used for up to $0.25 of results per calendar month — enough to try it on a small input. When the allowance is used up, the run ends with a clear message (not an error). Any paid Apify plan removes the limit; prices are the same.

Pay per event: you pay for reviews and companies delivered. No start fee, no monthly fee. Apify platform usage is billed separately by Apify (at the default 256 MB a small run typically uses about $0.001–$0.003).

EventFreeBronzeSilverGold, Platinum, DiamondWhen it is charged
Review$0.22 / 1,000$0.22 / 1,000$0.22 / 1,000$0.11 / 1,000Per review delivered
Company with reviews$0.0035$0.0035$0.0035$0.0035Once per company that delivered at least one review; with Get more than 200 reviews, once more when the second request adds at least one new review
Keyword search$0.003$0.003$0.003$0.003Once per keyword that found at least one company (never for companies you enter directly)
Company listed$0.0003$0.0003$0.0003$0.0002Per company row in Only list companies mode
Page checked$0.0022$0.0022$0.0022$0.0022Only when a request delivered too little to pay for the pages it read — see below

When "Page checked" is charged. Reviews are read in pages of 20 and search results in pages of 10, and every page read has a cost, whether or not anything is delivered. When the reviews (or companies) delivered for a request don't cover the pages it read, the difference is charged as "Page checked" events — never more than one per page read, and none when a normal company delivers the reviews you asked for. It happens when:

  • star / verified / language / date filters match nothing (or very little) of the reviews read,
  • Only new reviews finds nothing new since the last run,
  • a company has far fewer reviews than Max reviews per company, or has no Trustpilot page,
  • the second request of Get more than 200 reviews adds no (or few) new reviews,
  • a keyword finds no company, or Companies per keyword is above 10 in review mode (extra search pages),
  • a request was sent but got no answer (the data service may still have processed it).

Worked examples:

RunFree / Bronze / SilverGold and above
1 company × 100 reviews100 × $0.00022 + $0.0035 = $0.0255$0.0145
10 companies × 200 reviews2,000 × $0.00022 + 10 × $0.0035 = $0.475$0.255
1 company, "Get more than 200 reviews", 400 distinct reviews400 × $0.00022 + 2 × $0.0035 = $0.095$0.051
Keyword → 5 companies × 100 reviews500 × $0.00022 + 5 × $0.0035 + $0.003 = $0.1305$0.0755
Keyword → list of 20 companies$0.003 + 20 × $0.0003 = $0.009$0.007
Daily monitor, Only new reviews, max 20, nothing new that day1 × $0.0022 = $0.0022 per company$0.0022
1 company, max 100, filters match nothing (fast)5 × $0.0022 = $0.011$0.011
1 company with only 3 reviews, max 100 (fast)3 × $0.00022 + $0.0035 + 3 × $0.0022 = $0.010763 × $0.00011 + $0.0035 + 3 × $0.0022 = $0.01043

Plus Apify platform usage (see above). Set Maximum cost per run in the run options: before each request the Actor reserves the most that request can cost (including "Page checked" fees), so it never charges beyond your maximum, stops cleanly when it is reached and keeps everything delivered so far. On Gold and higher plans the second request of "Get more than 200 reviews" uses economy processing, which can take up to ~45 minutes.

Integrations

  • Make and Zapier: use the Apify app to start the Actor and pass new reviews to Slack, e-mail, a CRM or a helpdesk.
  • Google Sheets: export the dataset, or use the Apify Google Sheets integration to add rows after each run.
  • Webhooks: get a call to your URL when a run succeeds or fails (Actor → Integrations → Webhooks).
  • Schedules: run daily or weekly with Only new reviews on for low-cost monitoring (Console → Schedules).
  • API and MCP: start runs and read datasets from any language through the Apify API (examples above), or let AI agents call the Actor through the Apify MCP server.

FAQ

Is there a limit on the Apify Free plan, and is platform usage included? On the Free plan you can use up to $0.25 of this Actor's results per calendar month, enough to try it (Apify pays developers nothing for Free-plan usage while our data costs are real). Runs that reach the allowance stop cleanly and keep everything collected so far; the allowance resets on the 1st of the month; paid Apify plans have no limit. Apify platform usage is not included: it is billed separately by Apify (at the default 256 MB a small run typically uses about $0.001–$0.003).

Is it legal to scrape Trustpilot reviews? The Actor collects only publicly visible reviews — the same data anyone sees without logging in. Reviewer names, countries and profile links are left out unless you turn on Include reviewer details; review texts can still contain personal data, so make sure your use complies with GDPR, CCPA and Trustpilot's terms, e.g. analyze in aggregate and don't contact reviewers. If unsure, ask a lawyer.

How fresh is the data? Every run collects reviews from Trustpilot at run time; scrapedAt shows when.

Why did I get fewer reviews than I asked for? The company has fewer reviews, your star/verified/language/date filters removed some (filters work on the reviews read — see Advanced options), Only new reviews skipped ones delivered before, or your maximum cost per run was reached. RUN_SUMMARY lists skipped companies with the reason.

How many reviews can I get per company? Up to 200 by default and up to 400 with Get more than 200 reviews (newest and most relevant reviews combined, duplicates removed). 400 is a fixed limit of the data source; for complete histories of very large companies see Compared with alternatives. To build a company's history over time, schedule the Actor with Only new reviews.

Which company identifier do I use? The part after /review/ in the Trustpilot link — for Airbnb that is www.airbnb.com; for many companies it is the domain without www. Pasting the whole Trustpilot link always works.

How do I control my budget, and why was I charged for "Page checked"? Set Maximum cost per run; the Actor never charges beyond it, and requests rejected before any data was read are free. Each page of 20 reviews (or 10 search results) the Actor reads costs money, even when nothing is delivered. When a company delivered too few reviews to pay for the pages read — filters matched nothing, Only new reviews found nothing new, the company has fewer reviews than your maximum, the extra request of Get more than 200 reviews added nothing, a keyword found no company, or a request got no answer — the difference is charged as "Page checked" events at $0.0022 each, never more than one per page read. RUN_SUMMARY shows pagesCheckedCharged. To keep it low, set Max reviews per company close to what you expect to get (e.g. 20 for daily monitoring).

Can I monitor companies automatically? Yes — create a schedule with Only new reviews on. Each run delivers (and charges as reviews) only reviews that earlier runs have not delivered; a company with nothing new costs a small "Page checked" fee ($0.0022 with Max reviews per company 20); add a webhook or a Make/Zapier scenario for alerts.

Which export formats are available? JSON, JSONL, CSV, Excel, XML and HTML from the Output tab or the API, plus Google Sheets through the integration.

Do I need a Trustpilot account, API key or proxies? No. Enter companies and click Start.

Why does a run take a few minutes? Reviews are collected fresh for every run. Fast mode usually takes 1–3 minutes; economy mode (automatic for runs of 2,000+ reviews) can take up to ~45 minutes at the same event prices.

Where do I get help? Open an issue on the Actor's Issues tab in Apify Console with your run ID.

Limitations

  • At most 200 reviews per company by default and 400 with Get more than 200 reviews — a fixed limit of the data source; the full history of very large companies (thousands of reviews) is not available in one run.
  • With Get more than 200 reviews, the number of extra reviews depends on how much the newest and most relevant orders overlap, so 400 distinct reviews are not guaranteed.
  • Star, verified, language and date filters are applied to the reviews read, not by Trustpilot, so filtered runs can return fewer rows.
  • Keyword search returns up to 140 companies per keyword; generic keywords can match unrelated companies.
  • Reviewer country, photos and company replies are present only when Trustpilot shows them.
  • Companies without a Trustpilot page return no reviews; they are not charged as companies or reviews, but the pages read cost "Page checked" fees (see Pricing).

Privacy

Privacy by default: reviewer details (display name, profile link, avatar link, country, number of reviews written) are not included unless you turn on Include reviewer details — the same default as our Google Maps, YouTube and App Store Actors. The Actor collects only what is public on Trustpilot, never private account data, and your results stay in your own Apify account. Review texts may still mention people; you are responsible for processing the data lawfully (e.g. GDPR, CCPA). Turn reviewer details on only when you have a lawful reason, such as replying to or moderating reviews of your own company.