Trustpilot Reviews Scraper avatar

Trustpilot Reviews Scraper

Pricing

from $2.50 / 1,000 reviews

Go to Apify Store
Trustpilot Reviews Scraper

Trustpilot Reviews Scraper

Scrape Trustpilot reviews for any business, including ratings, titles, full text, reviewer country, verification status, published dates, company replies, and TrustScore. Filter by rating, language, date, or known review IDs for scheduled reputation monitoring.

Pricing

from $2.50 / 1,000 reviews

Rating

0.0

(0)

Developer

Nate Schnell

Nate Schnell

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

What does Trustpilot Reviews Scraper do?

Trustpilot Reviews Scraper collects recent customer reviews for one or more businesses and returns one clean dataset row per review. It is made for reputation monitoring, competitor research, customer-feedback analysis, and scheduled alerts where a fresh review feed is more useful than a large historical export.

The default run reads the newest Trustpilot review page for each business. Increase the page and review limits for a bounded backfill, or provide known review IDs to write only new reviews in a recurring workflow.

What data can you extract from Trustpilot?

  • Review content — review ID, direct review URL, star rating, title, full text, published date, and experience date.
  • Reviewer signals — reviewer name, country code, review count, language, verification status, verification level, and helpful votes.
  • Business context — business name, domain, business ID, TrustScore, total review count, and the review source label.
  • Response monitoring — company reply text and reply date when a business has responded.
  • Workflow fields — scrapedAt and isNew for scheduled review checks and deduplication.

How to use Trustpilot Reviews Scraper

  1. Open the actor and add Trustpilot business URLs or domains in the input box, such as https://www.trustpilot.com/review/amazon.com or nike.com.
  2. Set the maximum reviews and pages per business. The default is 20 reviews from one page.
  3. Optionally choose star ratings, language, reviewer countries, verified reviews, reviews with replies, or a publication date range.
  4. For incremental monitoring, paste IDs from an earlier dataset into Known review IDs and enable New reviews only.
  5. Click Run. Download the dataset as JSON, CSV, or Excel, or read it through the Apify dataset API.

How much does it cost?

This actor uses pay-per-event pricing: $0.0025 per written review ($2.50 per 1,000) plus $0.04 per actor-start event. The actor-start event covers fixed browser and proxy usage; Apify may charge one start event per GB of run memory, with a minimum of one event. Filtered, duplicate, and dry-run rows are not written or charged as review events. The free tier is limited to 100 written reviews per run. Keep the default one-page monitor or use date and rating filters to control the number of pages opened.

Input

The required businessUrls list accepts Trustpilot review URLs or bare company domains. Use maxReviewsPerBusiness, maxPagesPerBusiness, and maxTotalReviews as hard cost guards. Filters are applied before dataset writes, and dryRun lets you check matches without creating review rows.

{
"businessUrls": [
{ "url": "https://www.trustpilot.com/review/apify.com" },
{ "url": "https://www.trustpilot.com/review/nike.com" }
],
"maxReviewsPerBusiness": 20,
"reviewRatings": [1, 2],
"language": "en",
"newReviewsOnly": false
}

Output

Each output row is a Trustpilot review with business context and monitoring fields. Dates are ISO 8601 timestamps when Trustpilot supplies them; nullable fields remain null when the page does not publish a value.

{
"reviewId": "6a8ebe3a0e5c1e17e1f84ad4",
"reviewUrl": "https://www.trustpilot.com/reviews/6a8ebe3a0e5c1e17e1f84ad4",
"businessUrl": "https://www.trustpilot.com/review/apify.com",
"businessDomain": "apify.com",
"businessName": "Apify",
"trustScore": 4.8,
"totalReviewCount": 707,
"reviewerName": "Kondas Viktor",
"reviewerCountry": "HU",
"rating": 5,
"reviewTitle": "MCP in Cursor actually runs my Actors",
"reviewText": "I use the Apify MCP server from Cursor to call my own Store Actors as tools.",
"publishedDate": "2026-08-26T12:21:46.000Z",
"language": "en",
"isVerified": false,
"companyReply": null,
"scrapedAt": "2026-08-26T16:58:31.790Z",
"isNew": true
}

Integrations

Use the Apify API to start runs and read datasets. The output also works with Make, n8n, Zapier, webhooks, and scheduled Apify Tasks.

FAQ

How does Trustpilot Reviews Scraper work?

It opens each public Trustpilot business review page, reads the structured review data rendered for that page, and follows numbered review pages until the configured caps or filters stop the run. Review IDs are deduplicated before rows are written.

Can I use Trustpilot Reviews Scraper as an API?

Yes. Start a run with the Apify API, wait for it to finish, and fetch the default dataset through its API URL. The Output tab also provides ready-to-use API examples.

Can I use Trustpilot Reviews Scraper in Python or Node.js?

Yes. Use the official apify-client package to start the actor and iterate over its dataset.

const run = await apifyClient.actor('YOUR_USERNAME/trustpilot-review-monitor').call(input);
for await (const review of apifyClient.dataset(run.defaultDatasetId).iterateItems()) console.log(review);

What does this actor access?

It accesses public Trustpilot business review pages and the review information displayed on those pages. No Trustpilot login or API key is requested. A Residential Apify Proxy is enabled by default because the public site can present a browser challenge.

This actor only reads publicly displayed review data. Whether a particular collection and reuse is permitted depends on your jurisdiction, agreements, and intended use, so review the rules that apply to your project before running it.

How do I monitor only new or negative reviews?

Schedule the actor, pass the IDs already present in your destination into knownReviewIds, and enable newReviewsOnly. For negative-review triage, set reviewRatings to [1, 2]; combine it with startDate for a recent window.

Why did a business return no rows?

The business may have no public reviews, the selected filters may exclude the current page, or Trustpilot may have returned a browser challenge. The run log identifies invalid inputs and pages that could not expose review data; try the default Residential proxy setting and a lower page cap.

Your feedback

If a Trustpilot page changes or you need another review field or filter, please open an issue from the actor page with an example URL and the run ID. Feature requests for new monitoring workflows are welcome too.