Trustpilot Scraper API - Reviews, Ratings & Business Search avatar

Trustpilot Scraper API - Reviews, Ratings & Business Search

Pricing

from $0.40 / 1,000 results

Go to Apify Store
Trustpilot Scraper API - Reviews, Ratings & Business Search

Trustpilot Scraper API - Reviews, Ratings & Business Search

Scrape Trustpilot reviews, ratings & business info by domain or keyword. 30+ fields per review: text, stars, dates, language, replies. HTTP only.

Pricing

from $0.40 / 1,000 results

Rating

0.0

(0)

Developer

deusex machine

deusex machine

Maintained by Community

Actor stats

1

Bookmarked

4

Total users

2

Monthly active users

3 days ago

Last modified

Share

Trustpilot Scraper - Reviews & Ratings

Useful? Leave a review — takes 10 seconds and helps a lot!

Pull reviews from any business on Trustpilot. Plug in a domain, get structured data back. Works for Amazon, Airbnb, Tesla, your competitor, your own company -- anything with a Trustpilot page.

No browser, no login, no API key. Just HTTP requests under the hood.

Quick start

{
"businessUrls": ["amazon.com"],
"maxReviews": 100
}

That's it. You get back 100 reviews with 25 fields each, plus the business profile.

What you get back

Every review comes with these fields:

{
"reviewId": "69c911e4f13b725494e1b7f1",
"reviewUrl": "https://www.trustpilot.com/reviews/69c911e4f13b725494e1b7f1",
"businessDomain": "amazon.com",
"title": "If I could give zero stars",
"text": "If I could give zero stars, I would. The delivery service has been absolutely shocking lately. \"Package handed to tenant\" but I'm sitting here waiting for it. Not the first time, and I am fed up.",
"rating": 1,
"publishedDate": "2026-03-29T13:49:56.000Z",
"experienceDate": "2026-03-29T00:00:00.000Z",
"updatedDate": null,
"authorName": "LeAndre Holthuysen",
"authorLocation": null,
"authorCountry": "GB",
"authorReviewCount": 2,
"authorImageUrl": "https://user-images.trustpilot.com/6931d37000ecba3fb8788db7/73x73.png",
"isVerified": false,
"verificationLevel": "not-verified",
"source": "Organic",
"language": "en",
"likesCount": 1,
"hasReply": false,
"replyText": null,
"replyDate": null,
"scrapedAt": "2026-03-29T17:32:12.095Z",
"recordType": "review"
}

That's a real result. Scraped today from Amazon's Trustpilot page.

The business profile looks like this:

{
"businessName": "Amazon",
"domain": "amazon.com",
"trustScore": 1.7,
"overallRating": 1.5,
"totalReviews": 44779,
"categories": ["Shoe Store", "Book Store", "Hobby Store", "Clothing Store"],
"businessUrl": "https://www.trustpilot.com/review/amazon.com",
"websiteUrl": "https://www.amazon.com",
"recordType": "business_info"
}

All the fields

Review fields (25)

FieldWhat it isExample
reviewIdTrustpilot's internal ID69c911e4f13b7254...
reviewUrlDirect link you can openhttps://www.trustpilot.com/reviews/69c91...
businessDomainWhich businessamazon.com
titleReview headlineIf I could give zero stars
textThe full reviewIf I could give zero stars, I would...
ratingStars, 1 through 51
publishedDateWhen they posted it2026-03-29T13:49:56.000Z
experienceDateWhen the thing happened2026-03-29T00:00:00.000Z
updatedDateIf they edited it laternull
authorNameWho wrote itLeAndre Holthuysen
authorLocationWhere they areLondon, GB
authorCountryCountry codeGB
authorReviewCountHow many reviews they've left total2
authorImageUrlTheir profile picturehttps://user-images.trustpilot.com/...
isVerifiedDid Trustpilot verify itfalse
verificationLevelHow it was verifiednot-verified, verified
sourceHow the review got thereOrganic, Invitation
languageWhat languageen, es, de, fr
likesCountUpvotes on the review1
hasReplyDid the company respondfalse
replyTextWhat the company saidThank you for your feedback...
replyDateWhen they replied2026-03-30T08:00:00.000Z
scrapedAtWhen you ran this scraper2026-03-29T17:32:12.095Z
recordTypeAlways reviewreview

Business fields

FieldWhat it isExample
businessNameDisplay nameAmazon
domainDomainamazon.com
trustScoreTrustpilot score1.7
overallRatingStar average1.5
totalReviewsHow many reviews total44779
categoriesWhat Trustpilot categorizes them as["Shoe Store", "Book Store"]
businessUrlTrustpilot profile linkhttps://www.trustpilot.com/review/amazon.com
websiteUrlTheir actual websitehttps://www.amazon.com
phonePhone number (when listed)+1-800-...
emailEmail (when listed)support@...
addressStreet, city, zip, country{street, city, zipCode, country}

Input options

SettingDefaultWhat it does
businessUrls--Domains or Trustpilot URLs. Just throw in amazon.com or the full Trustpilot link, both work.
maxReviews100How many reviews you want. 0 means grab everything.
filterRatingallOnly want 1-star reviews? Set it to 1. Works for 1 through 5.
sortByrecencyrecency = newest first. relevance = Trustpilot's default ranking.
includeCompanyReplytruePull company responses too.
includeBusinessInfotrueGet the business profile (TrustScore, categories, contact info).

Examples

Scrape 1-star reviews from a competitor

{
"businessUrls": ["competitor.com"],
"maxReviews": 500,
"filterRating": "1",
"sortBy": "recency"
}

Good for finding what their customers hate. Feed it to your sales team.

Compare multiple businesses

{
"businessUrls": [
"amazon.com",
"ebay.com",
"walmart.com"
],
"maxReviews": 200,
"sortBy": "recency"
}

Each business gets its own set of results. Use businessDomain to tell them apart.

Get everything for one business

{
"businessUrls": ["tesla.com"],
"maxReviews": 0,
"filterRating": "all",
"includeBusinessInfo": true,
"includeCompanyReply": true
}

maxReviews: 0 means all of them. Could be thousands. It paginates automatically.

Only 5-star reviews

{
"businessUrls": ["airbnb.com"],
"maxReviews": 100,
"filterRating": "5"
}

Useful for testimonials, marketing content, or understanding what people love.

How it works

The scraper reads Trustpilot's __NEXT_DATA__ payload -- the same structured JSON that powers their frontend. This is way more reliable than parsing HTML, and it's where all 25 fields come from.

If __NEXT_DATA__ isn't available (rare), it falls back to JSON-LD, then to HTML parsing. Three layers of extraction so it doesn't break when Trustpilot tweaks their markup.

No browser, no JavaScript execution, no Puppeteer. Just HTTP requests through Crawlee's CheerioCrawler. Fast, cheap, reliable.

Speed and cost

  • ~20 reviews per request (one page)
  • About 1-2 seconds per page
  • 1,000 reviews takes ~1 minute
  • No browser overhead = dirt cheap runs

Good to know

  • Trustpilot paginates at 20 reviews per page. The scraper handles pagination automatically.
  • Some fields like authorLocation and phone depend on what the user/business shared. They'll be null when not available.
  • The source field tells you if the review was organic (customer went to Trustpilot on their own) or invited (the business asked them to leave a review). This matters for sentiment analysis.
  • experienceDate is when the thing actually happened, publishedDate is when they wrote about it. Sometimes there's a gap of weeks.

❓ FAQ

How do I scrape Trustpilot reviews for free?

This actor uses pay-per-result on Apify (no monthly subscription). Apify's Free plan includes $5 credit which covers ~12,500 review results to start. You only pay for what you scrape.

Can I scrape Trustpilot without an API key?

Yes. This actor doesn't need any Trustpilot API key, login, or account. Just provide the business domain (e.g. amazon.com) and run it.

How fast is this Trustpilot scraper?

About 1-2 seconds per page of 20 reviews. 1,000 reviews complete in ~1 minute. It's HTTP-only (no browser), so it's roughly 10× faster than Puppeteer-based alternatives.

Does this scraper bypass Trustpilot's bot protection?

Yes. By reading the __NEXT_DATA__ JSON payload directly, it avoids the patterns that trigger Trustpilot's rate-limiting. No CAPTCHAs, no IP bans on normal volumes.

Can I filter reviews by star rating, language, or date?

Yes — input fields support filterRating (1-5), filterLanguage (en, es, de, fr, etc.), filterDate (last 30 days, 3 months, 6 months, 12 months), and onlyVerified.

Can I scrape Trustpilot business contact info?

Yes — set mode: "search" and pass keywords. Returns business name, website, contact info, TrustScore, total reviews, and category.

What's included in each review?

30+ fields: review ID, title, text, rating, date, author name + ID + country, verification status, language, likes, source (organic/invited), company reply text + date, and more.

Trustpilot reviews are public data. Scraping public reviews for analysis, monitoring, or research is generally legal in the US/EU. Always respect Trustpilot's Terms of Service and use the data ethically.

🔗 Other scrapers by makework36