Trustpilot Reviews Scraper avatar

Trustpilot Reviews Scraper

Pricing

Pay per event

Go to Apify Store
Trustpilot Reviews Scraper

Trustpilot Reviews Scraper

Scrape structured Trustpilot reviews and business-summary data across multiple businesses in one run, with pagination and star-rating filtering. Includes verification level, company replies, and trust score — fields incumbents often skip.

Pricing

Pay per event

Rating

0.0

(0)

Developer

DevilScrapes

DevilScrapes

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 hours ago

Last modified

Categories

Share


🎯 What this scrapes

Trustpilot is the review platform businesses live and die by — and comparing reputation across even a handful of competitors means opening a dozen browser tabs and copy-pasting by hand. This Actor takes a list of businesses (bare domains or full review URLs) and returns every review, paginated and optionally filtered by star rating, in one normalized dataset — reviewer details, verification level, company replies, and the business's own trust score and review count, side by side.

🔥 What we handle for you

  • 🛡️ We solve the challenge once, not per page — a single browser pass clears the target's interstitial, then every subsequent request replays cleanly.
  • 🌐 Apify Proxy on every request, with automatic re-solve if a session goes stale mid-run.
  • 🔁 We retry with exponential backoff on 408 / 429 / 5xx and honour Retry-After.
  • 🧱 Fault isolation per business — one blocked or malformed business is skipped and logged; the rest of your run finishes.
  • 🧊 Clean, typed dataset rows — Pydantic-validated, deduped by review ID, JSON / CSV export straight from the Apify Console.
  • 💰 Pay-Per-Event pricing — you only pay for reviews that land in your dataset.

💡 Use cases

  • Competitive reputation tracking — pull reviews for your business and its top competitors in one run.
  • Customer feedback mining — feed review text into sentiment analysis or a support-ticket triage pipeline.
  • Sales and partnership research — check a prospective partner's trust score and recent review trend before a call.
  • Review-response auditing — see which reviews a business replied to, and how fast.

⚙️ How to use it

  1. Click Try for free at the top of the page.
  2. Add one or more businesses — a bare domain (nike.com) or a full trustpilot.com/review/... URL.
  3. Optionally set a max reviews per business, a star-rating filter, or a language filter.
  4. Click Start. Reviews stream into the run's dataset as they're scraped.

📥 Input

FieldTypeRequiredDescription
businessesarray of stringYesBare domains or full Trustpilot review URLs.
maxReviewsPerBusinessintegerNo (default 100)Cap per business, 1-5000.
starsintegerNoRestrict to a single star rating, 1-5.
languagestringNoISO 639-1 language filter.
proxyConfigurationobjectNoApify Proxy configuration.
{
"businesses": ["nike.com", "amazon.com"],
"maxReviewsPerBusiness": 50,
"stars": null,
"language": null,
"proxyConfiguration": { "useApifyProxy": true }
}

📤 Output

FieldTypeDescription
review_idstringTrustpilot review ID.
reviewer_namestringDisplay name of the reviewer.
reviewer_countrystring | nullReviewer's country code, when public.
ratingintegerStar rating, 1-5.
titlestringReview title.
bodystringReview text.
date_experiencedstringDate the reviewer experienced the service.
date_publishedstringISO-8601 publish timestamp.
is_verifiedbooleanWhether Trustpilot marks the review as verified.
verification_levelstring | nullVerification tier, when exposed.
company_reply_textstring | nullBusiness's reply, if any.
company_reply_datestring | nullDate of the business's reply, if any.
languagestring | nullReview language, when exposed.
source_business_domainstringBusiness identifier from input.
business_display_namestringBusiness's display name on Trustpilot.
business_trust_scorenumber | nullBusiness's current trust score.
business_review_countinteger | nullBusiness's total review count.
{
"review_id": "64f1a2b3c9d4e5f6a7b8c9d0",
"reviewer_name": "J. Alvarez",
"reviewer_country": "US",
"rating": 5,
"title": "Fast shipping, great fit",
"body": "Ordered on Monday, arrived Thursday. Sizing chart was accurate.",
"date_experienced": "2026-09-01",
"date_published": "2026-09-03T14:22:10.000Z",
"is_verified": true,
"verification_level": "verified",
"company_reply_text": null,
"company_reply_date": null,
"language": "en",
"source_business_domain": "www.nike.com",
"business_display_name": "Nike",
"business_trust_score": 1.5,
"business_review_count": 13038
}

💰 Pricing

Pay-Per-Event. No subscription, no minimum spend.

EventPriceTrigger
Actor start$0.20Once per run
Result row$0.003Once per review pushed to your dataset

100 reviews across your businesses costs about $0.50 total ($0.20 + 100 × $0.003). At 1,000 reviews the flat start fee amortizes down to roughly $3.20 per 1,000 results.

🚧 Limitations

  • Business review pages only — reviewer profile pages and review history are out of scope.
  • No point-in-time snapshots; each run reflects current live data.
  • The language filter falls back to client-side filtering if Trustpilot exposes no matching query parameter for it.
  • Date-range filtering is not supported — no confirmed query parameter exists for it.

❓ FAQ

Does this work for any business on Trustpilot? Yes — supply a bare domain or a full review URL for any business with a public Trustpilot page.

What happens if one business in my list is blocked or invalid? That business is skipped and logged; the rest of your run completes normally.

Do I get charged if a business has zero matching reviews? No — you're only charged per review row actually pushed to your dataset, plus the flat run-start fee.

🙋 Your feedback

Found a bug or have a feature request? Open an issue on the Actor's Apify Store page or reach out via apify.com/DevilScrapes — we read every message.