Trustpilot Reviews Scraper avatar

Trustpilot Reviews Scraper

Pricing

from $2.11 / 1,000 review extracteds

Go to Apify Store
Trustpilot Reviews Scraper

Trustpilot Reviews Scraper

Extract public Trustpilot reviews, star ratings, reviewer metadata, and business replies for reputation monitoring and competitor analysis.

Pricing

from $2.11 / 1,000 review extracteds

Rating

0.0

(0)

Developer

Hanna Nosova

Hanna Nosova

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

Extract public Trustpilot company reviews, star ratings, reviewer metadata, and visible business replies for reputation monitoring, CX analysis, and competitor benchmarking.

Use this actor when you need a repeatable export of public Trustpilot review pages without manually clicking through filters and pagination.


What does Trustpilot Reviews Scraper do?

Trustpilot Reviews Scraper collects public review rows from Trustpilot company review pages.

It accepts Trustpilot review URLs such as https://www.trustpilot.com/review/www.amazon.com and plain company domains such as example.com.

For each saved review, the dataset includes company context, review text, rating, reviewer metadata, filter context, and the timestamp of the scrape.

Who is it for?

  • Reputation managers tracking new complaints and praise.
  • Customer experience teams measuring public sentiment over time.
  • Agencies monitoring multiple client brands.
  • Market researchers comparing competitors in one category.
  • Support leaders auditing whether public business replies are being posted.
  • BI teams feeding Trustpilot reviews into dashboards or warehouses.

Why use this Trustpilot review extractor?

Manual review exports are slow and inconsistent.

This actor gives you structured rows that are ready for CSV, JSON, Excel, Google Sheets, BigQuery, Snowflake, or your own API workflow.

You can run small tests with a few reviews or schedule recurring runs to keep a public review history.

What Trustpilot data can you extract?

FieldDescription
companyUrlTrustpilot company review page URL
companyDomainDomain from the Trustpilot review page
companyNameCompany name shown on Trustpilot
trustScoreTrustpilot score visible on the page
companyRatingTextRating text shown near the company profile
totalReviewCountPublic review count shown by Trustpilot
reviewIdStable review identifier from the review URL
reviewUrlDirect public Trustpilot review URL
reviewTitleReview headline
reviewTextReview body text
ratingStar rating from 1 to 5
publishedDatePublished date when visible
experienceDateDate of experience when visible
reviewerNamePublic reviewer display name
reviewerCountryPublic country code when visible
reviewerReviewCountPublic review count for the reviewer when visible
isVerifiedVerification marker when visible
replyTextVisible business reply text
replyDateVisible business reply date
replyAuthorVisible reply author/company text
languagePage language context when available
starsFilterStar filter used for this row
pageTrustpilot listing page number
scrapedAtISO timestamp when the row was saved

How much does it cost to scrape Trustpilot reviews?

This actor uses pay-per-event pricing.

You pay a $0.025 run-start event and then a per-review event for every saved Trustpilot review.

Apify plan tierPrice per reviewApprox. price per 1,000 reviews
Free$0.0040395$4.04
Bronze$0.0035126$3.51
Silver$0.0027398$2.74
Gold$0.0021075$2.11
Platinum$0.001405$1.41
Diamond$0.00098352$0.98

For cost-efficient tests, start with maxReviewsPerCompany set to 5 or 20.

How to scrape Trustpilot reviews

  1. Open the actor input.
  2. Add one or more Trustpilot review URLs or company domains.
  3. Set maxReviewsPerCompany.
  4. Optionally choose star filters such as 1 or 5.
  5. Choose sorting, usually recency.
  6. Keep proxy enabled for reliable public page access.
  7. Run the actor.
  8. Download results from the Dataset tab.

Input example

{
"startUrls": [
{ "url": "https://www.trustpilot.com/review/www.amazon.com" }
],
"maxReviewsPerCompany": 20,
"stars": [1, 2],
"sort": "recency",
"languages": ["all"],
"includeReplies": true,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Input fields

startUrls

Trustpilot company review URLs or plain domains.

Examples:

  • https://www.trustpilot.com/review/www.amazon.com
  • https://www.trustpilot.com/review/example.com
  • example.com

maxReviewsPerCompany

Maximum reviews to save for each company.

Use a low number for tests and increase it for production exports.

stars

Optional list of star ratings from 1 to 5.

Leave empty to use the default Trustpilot listing.

sort

Choose recency for newest reviews first or relevance for Trustpilot's default ordering.

languages

Optional language filters such as en, de, fr, or all.

Leave empty for the default page view.

includeReplies

Set to true to capture business reply fields when Trustpilot shows them.

proxyConfiguration

Trustpilot can show browser verification pages.

Apify residential proxy is recommended for reliable runs.

Output example

{
"companyUrl": "https://www.trustpilot.com/review/www.amazon.com",
"companyDomain": "www.amazon.com",
"companyName": "Amazon",
"trustScore": 1.7,
"companyRatingText": "1.7",
"totalReviewCount": 46811,
"reviewId": "6a397b742e352367592b4d66",
"reviewUrl": "https://www.trustpilot.com/reviews/6a397b742e352367592b4d66",
"reviewTitle": "Amazon's customer service is the absolute worst.",
"reviewText": "Amazon's customer service is the absolute worst...",
"rating": 1,
"publishedDate": null,
"experienceDate": null,
"reviewerName": "frank kadar",
"reviewerCountry": null,
"reviewerReviewCount": 1,
"isVerified": null,
"replyText": null,
"replyDate": null,
"replyAuthor": null,
"language": null,
"starsFilter": 1,
"page": 1,
"scrapedAt": "2026-06-22T23:55:01.203Z"
}

Tips for better Trustpilot scraping

  • Test one company first.
  • Use recency when monitoring fresh complaints.
  • Use stars: [1, 2] for complaint triage.
  • Use stars: [4, 5] for positive testimonial discovery.
  • Keep maxReviewsPerCompany low for scheduled daily monitoring.
  • Increase volume only after confirming the output format fits your workflow.

Common workflows

Reputation monitoring

Run the actor every day for your own brand and save the dataset to a warehouse.

Compare scrapedAt, rating, and reviewText to find new issues.

Complaint triage

Use stars: [1, 2] and sort: "recency".

Send new low-rated reviews to a support queue.

Competitor benchmarking

Add multiple competitor company pages.

Group output by companyDomain, rating, and publishedDate.

Reply coverage audit

Keep includeReplies enabled.

Measure which public reviews have replyText and how quickly replies appear.

Integrations

You can connect the dataset to:

  • Google Sheets for quick review tracking.
  • Slack alerts through Apify integrations.
  • Make or Zapier automations.
  • BigQuery or Snowflake via dataset export.
  • A CRM or support platform through webhooks.
  • A BI dashboard that monitors public review sentiment.

API usage with Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/trustpilot-reviews-scraper').call({
startUrls: [{ url: 'https://www.trustpilot.com/review/www.amazon.com' }],
maxReviewsPerCompany: 20,
sort: 'recency',
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

API usage with Python

from apify_client import ApifyClient
import os
client = ApifyClient(os.environ['APIFY_TOKEN'])
run = client.actor('fetch_cat/trustpilot-reviews-scraper').call(run_input={
'startUrls': [{'url': 'https://www.trustpilot.com/review/www.amazon.com'}],
'maxReviewsPerCompany': 20,
'sort': 'recency',
})
items = client.dataset(run['defaultDatasetId']).list_items().items
print(items)

API usage with cURL

curl -X POST "https://api.apify.com/v2/acts/fetch_cat~trustpilot-reviews-scraper/runs?token=$APIFY_TOKEN" \
-H 'Content-Type: application/json' \
-d '{
"startUrls": [{"url": "https://www.trustpilot.com/review/www.amazon.com"}],
"maxReviewsPerCompany": 20,
"sort": "recency"
}'

MCP and AI agent usage

Use the Apify MCP server to let Claude Desktop, Claude Code, or another agent run this actor as part of an analysis workflow.

MCP URL pattern:

https://mcp.apify.com/?tools=fetch_cat/trustpilot-reviews-scraper

Claude Code setup command:

$claude mcp add apify-trustpilot "https://mcp.apify.com/?tools=fetch_cat/trustpilot-reviews-scraper"

Claude Desktop JSON config example:

{
"mcpServers": {
"apify-trustpilot": {
"url": "https://mcp.apify.com/?tools=fetch_cat/trustpilot-reviews-scraper"
}
}
}

Example prompts:

  • "Run Trustpilot Reviews Scraper for this company and summarize the top complaint themes."
  • "Export the newest 1-star Trustpilot reviews for these competitors."
  • "Compare review ratings across these three Trustpilot company pages."

Scheduling

For monitoring workflows, schedule a small recurring run.

Daily runs with sort: "recency" and a low maxReviewsPerCompany are usually enough to catch new public reviews.

Limits and reliability

Trustpilot may show browser verification pages or change page markup.

The actor is designed to wait through visible verification and continue when public review cards are available.

If a company has fewer reviews than requested, the actor saves the reviews it can see and stops when no new reviews are found.

Troubleshooting

The run returned fewer reviews than requested

The company may have fewer public reviews for the selected filters, or Trustpilot may stop exposing additional pages for that filter branch.

Try reducing filters or running without a star filter.

I see missing optional fields

Some Trustpilot reviews do not show every field.

For example, business replies, experience dates, countries, and verification markers are optional public-page elements.

The run is slow

Browser verification and residential proxy routing can add latency.

Use smaller test runs first, then scale up once the output looks correct.

Legality and responsible use

This actor extracts publicly visible Trustpilot review pages.

Do not use it to collect private data, bypass authentication, spam reviewers, or violate applicable laws.

Always review Trustpilot's terms, your local regulations, and your organization's data policies before using scraped data.

Explore other public-data scrapers from the same Apify account:

  • Google Maps Reviews Scraper: https://apify.com/fetch_cat/google-maps-reviews-scraper
  • Google Play Reviews Scraper: https://apify.com/fetch_cat/google-play-reviews-scraper
  • Apple App Store Reviews Scraper: https://apify.com/fetch_cat/apple-app-store-reviews-scraper

FAQ

Can I scrape multiple Trustpilot companies in one run?

Yes. Add multiple URLs or domains to startUrls.

Can I scrape only 1-star reviews?

Yes. Set stars to [1].

Can I capture business replies?

Yes. Keep includeReplies set to true. Reply fields are filled when a visible reply exists on the public page.

Can I use domains instead of Trustpilot URLs?

Yes. The actor converts a plain domain such as example.com into the matching Trustpilot review URL.

Can I export to CSV?

Yes. Use the Apify Dataset export options after the run finishes.

Is this actor for private Trustpilot accounts?

No. It is for public Trustpilot company review pages only.