Trustpilot Reviews Scraper (Cheap) avatar

Trustpilot Reviews Scraper (Cheap)

Pricing

from $1.99 / 1,000 results

Go to Apify Store
Trustpilot Reviews Scraper (Cheap)

Trustpilot Reviews Scraper (Cheap)

Trustpilot review scraper that collects star ratings, review text, and reviewer details from any company page, so marketers and analysts can monitor brand reputation and run sentiment analysis without manual data collection.

Pricing

from $1.99 / 1,000 results

Rating

0.0

(0)

Developer

Data API

Data API

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Share

Trustpilot Reviews Scraper

Trustpilot Reviews Scraper

Reading Trustpilot reviews by hand is slow, and copy-pasting them into a spreadsheet falls apart after the first page. This scraper does the reading for you. Give it a company's Trustpilot page and it walks through the reviews, page after page, and hands back each one as a clean row: the star score, the headline, the full text, who wrote it, when they posted, whether the purchase was verified, and any reply the company left. Point it at one brand or run a list of competitors, then filter by stars, language, or how recent the review is.

What you get

Every review comes back as one tidy row, and the columns line up the same way every time so the data drops straight into a sheet or database. Each record carries:

  • The reviewratingHeadline, ratingBody, scoreStars, and publishedOn
  • Who wrote itauthorName, authorCountry, and purchaseVerified
  • The company sidebusinessName, businessDomain, and brandResponse (the reply, if there is one)
  • TrackingreviewKey for de-duping and fetchedAt to timestamp the run

Quick start

  1. Click Try for free to open the input form.
  2. Paste a Trustpilot profile link or a plain domain into Company page or domain (for example www.nike.com).
  3. Set How many reviews you want, and narrow things with the star, language, or recency filters if you need to.
  4. Choose a proxy type, press Start, and download the results as JSON, CSV, Excel, or XML once the run wraps up.

How it works

Use cases

  • Brand monitoring — track what customers are saying about your company and catch problems while they are still small
  • Competitor research — pull reviews for rival brands and compare ratings, complaints, and response habits side by side
  • Voice-of-customer analysis — feed thousands of review texts into sentiment or topic models to find recurring themes
  • Product and CX teams — surface the exact pain points that drag a star rating down
  • Due diligence — gauge a vendor's reputation before signing by reading verified buyer reviews at scale
  • Support benchmarking — measure how often, and how fast, a company replies to negative reviews

Input

FieldTypeRequiredDescription
businessUrlstringYesTrustpilot profile link or registered domain, e.g. www.nike.com or https://www.trustpilot.com/review/www.nike.com. Most brands list with the www. prefix.
reviewLimitintegerNoTotal reviews to gather per run, ceiling of 1000. Works with the page range. Default 25.
fromPageintegerNoResults page to start on. Default 1; raise it to skip earlier pages.
toPageintegerNoLast page to read, inclusive. Default 0, which turns the page cap off and lets reviewLimit decide.
ratingFilterstringNoKeep only reviews with a given star count (15). Empty value returns every rating.
postedWithinstringNoRestrict to a recency window: last30days, last3months, last6months, or last12months. Empty returns any time.
reviewLanguagestringNoReturn reviews in one language only (e.g. en, de, fr). Empty returns any language.
timeoutSecondsintegerNoSeconds to wait per request before failing it. Default 45; raise it on slower residential proxies.
proxyConfigurationobjectNoProxies for requests. Defaults to Residential (US), the safest option against Trustpilot's bot checks.

Example input

{
"businessUrl": "www.nike.com",
"reviewLimit": 25,
"fromPage": 1,
"toPage": 8,
"ratingFilter": "",
"postedWithin": "last6months",
"reviewLanguage": "en",
"timeoutSeconds": 45,
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"],
"apifyProxyCountry": "US"
}
}

Output

Each review becomes one row, and every field is always present so your dataset stays rectangular. Missing values such as an absent company reply come back as an empty string rather than disappearing.

Example output

{
"reviewKey": "6710a2f4c9b1e80012ab34cd",
"businessDomain": "www.nike.com",
"businessName": "Nike",
"ratingHeadline": "Shoes arrived faster than expected",
"ratingBody": "Ordered on a Friday and the parcel landed Monday morning. Sizing was spot on and the trainers look exactly like the photos. Would buy again.",
"scoreStars": 5,
"publishedOn": "2026-05-18T09:24:11.000Z",
"authorName": "Marcus T.",
"authorCountry": "GB",
"purchaseVerified": true,
"brandResponse": "Thanks for the kind words, Marcus — glad the order reached you so quickly!",
"fetchedAt": "2026-06-30T12:00:00.000000+00:00"
}

Output fields

FieldTypeDescription
reviewKeystringTrustpilot's unique identifier for the review
businessDomainstringCompany domain the review belongs to, e.g. amazon.com
businessNamestringCompany name as Trustpilot displays it
ratingHeadlinestringShort title the customer gave the review
ratingBodystringFull text the customer wrote
scoreStarsintegerStar score from 1 (lowest) to 5 (highest)
publishedOnstringISO 8601 date the review went live
authorNamestringPublic display name of the reviewer
authorCountrystringTwo-letter ISO 3166-1 country code of the reviewer
purchaseVerifiedbooleanTrue when Trustpilot confirmed a genuine purchase
brandResponsestringThe company's reply; empty string when there is none
fetchedAtstringISO 8601 timestamp of when the row was pulled

Tips for best results

  • Start with a small reviewLimit. Pull 25 reviews first to confirm the company page resolves and the output fits your pipeline, then scale up.
  • Keep Residential proxies on. Trustpilot's bot detection is strict; residential IPs (US) clear it far more reliably than datacenter.
  • Use the www. form of the domain. Many brands are registered on Trustpilot with the prefix, so www.nike.com usually resolves where nike.com may not.
  • Combine filters carefully. Stacking ratingFilter, postedWithin, and reviewLanguage narrows results fast — loosen one if a run comes back thin.
  • Raise timeoutSeconds toward 60 if residential proxies throw frequent timeouts on heavier company pages.
  • Use fromPage and toPage to grab a specific slice — handy for resuming a large pull or sampling the middle of a long review history.

How can I use Trustpilot review data?

How can I use the Trustpilot Reviews Scraper to monitor my brand's reputation? Point the scraper at your own Trustpilot profile, set reviewLimit high, and run it on a schedule. Each run returns the latest reviews with star scores, full text, and any reply you posted, so you can track rating trends over time and jump on negative reviews while they are fresh.

How can I export Trustpilot reviews for competitor analysis? Run the scraper once per competitor domain and merge the datasets. Because every row shares the same fields — businessName, scoreStars, ratingHeadline, authorCountry, purchaseVerified — you can stack brands in one spreadsheet and compare average ratings, complaint themes, and how often each company bothers to reply.

How can I pull Trustpilot reviews for sentiment analysis? Use reviewLanguage to keep the dataset in one language, then feed the ratingBody column into a sentiment or topic model. Pair the score in scoreStars with the text to train on labelled examples, and use postedWithin to focus on a recent period when opinions may have shifted.

How can I collect only the most recent or lowest-rated Trustpilot reviews? Set postedWithin to a window like last30days and ratingFilter to 1 or 2 to zero in on fresh, unhappy customers. The scraper returns just those reviews, which is the fastest way to find the issues a support or product team should act on next.

Our actors are ethical and do not extract any private user data, such as email addresses or private contact information. They only extract what the user has chosen to share publicly. We therefore believe that our actors, when used for ethical purposes by Apify users, are safe.

However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.

You can also read Apify's blog post on the legality of web scraping.

Support

Questions, feature requests, or a field you'd like added? Reach out at data.apify@proton.me and we'll get back to you.