⭐️ Trustpilot Reviews Scraper avatar

⭐️ Trustpilot Reviews Scraper

Pricing

from $10.00 / 1,000 results

Go to Apify Store
⭐️ Trustpilot Reviews Scraper

⭐️ Trustpilot Reviews Scraper

Extract full review text, star ratings, and company reply data from Trustpilot profiles to track customer sentiment and SLAs.

Pricing

from $10.00 / 1,000 results

Rating

0.0

(0)

Developer

太郎 山田

太郎 山田

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

15 days ago

Last modified

Share

Trustpilot Review Intelligence API | Ratings, Samples & Reply Signals

Audit your customer service efficiency by automatically extracting review data and reply signals from Trustpilot profiles. For customer experience teams, missing a negative review can cause severe damage to brand trust. This scraper eliminates the need to manually refresh web pages in a browser, allowing you to track exactly which reviews have been answered and which are still pending a company response. Just provide the target URLs and the tool will scrape the complete timeline of interactions.

Many teams use this monitor to enforce service level agreements (SLAs) and measure their reply rates against industry standards. By configuring the scraper to run on a daily or weekly schedule, you can catch low-star ratings the moment they are posted. This continuous monitoring workflow ensures that support agents are alerted to critical feedback immediately, closing the loop on customer complaints before they escalate into larger PR issues.

The API extracts specific, actionable details from every interaction. Your results will contain the full review text, star ratings, reviewer contact signals, and precise timestamps for both the original post and the company reply. Tracking these specific reply signals helps management evaluate support team performance objectively. With perfectly structured scraped data at your fingertips, you can seamlessly power internal compliance dashboards, ensuring every verified customer feels heard and valued across the web.

Store Quickstart

  • Start with 3–10 company review URLs or raw domains and keep reviewLimit around 25–50.
  • Use dataset delivery on early runs so blocked or partial cases are easy to inspect.
  • Keep dryRun: true for validation-only checks before a scheduled or webhook handoff.
  • After the first useful run, move to the recurring watchlist template, then use the webhook handoff template for negative-review or reply-gap alerts.

What it does

  • Accepts multiple Trustpilot company review URLs or raw company domains.
  • Fetches company metadata, recent review samples, rating distribution, review language mix, and company reply signals.
  • Flags blocked, missing, invalid, or partially collected sources with structured warnings.
  • Produces a clean companies array for downstream analytics or enrichment pipelines.

Use Cases

WhoWhy
Brand teamsMonitor rating drift and company reply rates across brands or competitors
CX teamsPull recent review samples for QA, escalation, or coaching workflows
AgenciesBenchmark multiple clients or competitors in one normalized dataset
Revenue / partnerships teamsEnrich company lists with public reputation signals before outreach

Input

  • companyUrls: Trustpilot review URLs like https://www.trustpilot.com/review/www.shopify.com or domains like shopify.com
  • reviewLimit: max recent reviews to collect per company
  • delivery: dataset or webhook
  • webhookUrl: optional when delivery=webhook
  • dryRun: skip dataset writes and only create output/result.json

Output shape

Each company row includes:

  • status: ok, partial, blocked, missing, or invalid
  • company: normalized Trustpilot company metadata
  • ratingDistribution: star breakdown when Trustpilot exposes it
  • reviewLanguageDistribution: counts by language when available
  • reviewSample: normalized recent review samples
  • reviewSampleSummary: counts, page coverage, verified review count, and reply flags
  • warnings: structured warnings for blocked, missing, or partial collection scenarios

Output Example

{
"status": "ok",
"company": {
"displayName": "Example Co",
"trustScore": 4.2,
"numberOfReviews": 6,
"contactInfo": { "city": "Austin", "country": "US" }
},
"ratingDistribution": {
"total": 6,
"breakdown": [{ "rating": 5, "count": 4 }]
},
"reviewSampleSummary": {
"collected": 3,
"verifiedReviewCount": 2,
"companyReplyCount": 1
},
"reviewSample": [
{ "rating": 5, "title": "Fast onboarding", "language": "en", "hasCompanyReply": true }
],
"warnings": []
}

Local run

$npm start

Use input.json for local runs and npm test to run the unit tests.

Pair this actor with other flagship intelligence APIs in the same portfolio:

Pricing & Cost Control

Apify Store pricing is usage-based, so total cost mainly follows how many companyUrls you process and how many review samples you request. Check the Store pricing card for the current per-event rates.

  • Start with a small companyUrls batch and reviewLimit of 25–50.
  • Use dataset delivery first so you can inspect blocked or partial cases.
  • Keep scheduled runs focused on shortlists rather than large dumps when possible.
  • Use dryRun: true before webhook handoffs.

⭐ Was this helpful?

If this actor saved you time, please leave a ★ rating on Apify Store. It takes 10 seconds, helps other developers discover it, and keeps updates free.

Bug report or feature request? Open an issue on the Issues tab of this actor.