Trustpilot Reviews Scraper

What customers
actually wrote.

Submit domains or Trustpilot page links and get the reviews themselves - title, full text, star rating, helpfulness count and date, each with the author's name, country and how many reviews they've written. Up to 100 per business by default.

one-time 500 free rows$0.002 per row after11 fields per reviewCSV · JSON · Excel
Read this first

One row per review,
not per business.

That's the whole difference from the other two Trustpilot services, and it changes both the shape of the data and the size of the bill.

The Trustpilot Scraper and Trustpilot Search Scraper return one row per business, carrying a rating and a review count. This returns the reviews behind that count - the title, the full text, the stars, the date and the author.

So the arithmetic is different. A hundred businesses is a hundred rows on those services and potentially ten thousand here, because the default is up to a hundred reviews per business. That's not a drawback, it's simply what review data is - but it's worth knowing before you queue a large list.

Results come back grouped by business rather than as one flat pile, so a run covering many companies stays organised without you needing to re-sort it.

livescraper.app · which tool
Full review text and titlethis tool
Author name and review historythis tool
Only a rating and a countTrustpilot Scraper
Finding businesses by keywordSearch Scraper
One row per businessnot here!
Many rows per business. Budget accordingly.
How it works

Businesses in,
reviews out.

Same input as the lookup service - a domain or a Trustpilot page link.

  1. STEP 1Sign in to the platform.
  2. STEP 2Open the Trustpilot Reviews Scraper.
  3. STEP 3Paste domains or page links - up to 1,000.
  4. STEP 4Set reviews per business, language and cut-off date.
  5. STEP 5Pick your format and click Get Data.

The cut-off is the useful one for repeat runs - see the scope controls below.

The interesting pair

Two fields that tell you
how much to trust a review.

Most review datasets give you sentiment. These two give you something rarer - a way to weigh it.

author_reviews_number is how many reviews a person has written anywhere. author_reviews_number_same_domain is how many of those were for the business you're looking at. Read together they say a lot. Someone with a long reviewing history across many companies is a different kind of source from an account whose only review is the one in front of you - and a reviewer with several reviews of the same business is a different case again.

None of that proves anything on its own, and we won't pretend it does: a first-time reviewer is usually just a first-time reviewer. But when you're weighing whether a five-star run or a cluster of one-star reviews reflects genuine customer experience, having the author's history in the same row is the difference between reading sentiment and auditing it. Combine it with review_date to spot reviews that arrived suspiciously close together.

Scope controls

How deep,
how recent, what language.

Four settings shape a run. The cut-off is the one that turns this from a one-off pull into something you can repeat cheaply.

Reviews per business - default 100

The main cost lever. One business is up to a hundred rows unless you lower it, so a thousand-domain list at the default is a very large job. Set it to what your analysis actually needs.

A cut-off date, for repeat runs

Set the oldest date you care about and the run stops there. Re-run later with the cut-off at your last collection and you only pay for what's new - the cheapest way to keep a review dataset current.

Skip, in steps of twenty

To page deeper into a business's reviews. Worth knowing the skip value has to be a multiple of twenty - an odd number won't do what you expect, and it's the kind of detail that costs an afternoon.

Language filter, and sorting

You can filter to a language or take all of them; the documented options are English, Spanish and German alongside the default and all. Sorting by recency is the documented option.

A note on the language filter: only those three languages are named in the reference, so if you need another one, check it on the free tier rather than assuming - we'd rather you found out for two rows than for twenty thousand.

Before you wire it up

Three notes for
whoever writes the importer.

All three come straight out of the documented response.

The date is a Unix timestamp. review_date arrives as a number of seconds, not a readable date - and unlike some review services there's no formatted counterpart alongside it. Convert it on the way in, or every chart you build will be sorted correctly and labelled uselessly.

Don't sum total_reviews. It's the business's overall review count, repeated identically on every one of its review rows. Aggregate it carelessly across a hundred reviews and you'll report a hundred times the real figure. Take the first value per business, or get it from the Trustpilot Scraper, which returns one row per business precisely so this isn't a problem.

Reviews come grouped by business. The response nests one collection per query rather than returning a single flat list, so flatten deliberately if your pipeline expects rows. The upside is that query appears on every review, so nothing is ambiguous once flattened.

Data dictionary

Eleven columns,
one row per review.

Each row is a single review, carrying the business it belongs to alongside it - so an export stands on its own without a join back to the profile.

query
The Trustpilot profile URL you submitted. Present on every row.
business
The business the review was left for, repeated on every row.
business_rating
The business's overall rating, repeated on every row.
business_reviews
The business's total review count, repeated on every row.
reviewer
The display name of the person who left the review. Present on 98% of rows.
rating
The review's own star rating, 1 to 5.
date
When the review was posted, as ISO 8601 UTC, e.g. 2026-07-01T06:13:11.000Z.
title
The review headline. Present on 94% of rows.
review
The review body text. Present on only 50% of rows - see the note below.
reply
The business's public reply, where there is one. Present on 43% of rows.
language
The language the review was written in.

Half the rows carry no review text. Across 100 rows of real output, review was populated on 50% and title on 94% - many reviewers leave a headline and a star rating and nothing else. If you are running sentiment or keyword analysis, filter on review being non-empty first, or your denominator will be wrong. reply is present on 43%.

Common workflows

Three jobs people
most often run here.

Where the text matters more than the score.

Voice of customer

Find out what people actually complain about

A rating tells you there's a problem; the text tells you which one. Pulling reviews across your own business and your competitors' and reading them for recurring themes surfaces the specific failures customers care about - usually a shorter and more surprising list than internal assumptions suggest.

Product · CX
Competitive intel

Learn from someone else's mistakes

Competitors' negative reviews are free research into where their product breaks and which promises they can't keep. That's both a positioning input and a list of things not to do - and it costs a fraction of a customer survey.

Marketing · Strategy
Review auditing

Weigh whether a rating looks earned

When a score seems out of line with a business's reputation, the author history fields let you look properly: how established the reviewers are, how many wrote about this company alone, and whether the reviews arrived in a cluster. Useful for due diligence and for defending your own listing.

Trust & Safety · Due diligence
Pricing

Pay only for the rows
you actually pull.

No subscription, no minimum, no per-seat licence. Your first 500 rows are on us - after that, pay-as-you-go.

Free tier

500 free rows - $0

Every new account, one-time. No credit card required. On this service that's a few hundred reviews - enough to read one business properly and check your language filter works before scaling.

$0 forever
Pay-as-you-go

$0.002 per row, after the free tier

Roughly $2 per 1,000 reviews. A row is a review here, not a business, so the reviews-per-business setting is your main lever - and a cut-off date on repeat runs keeps ongoing collection cheap.

Most popular
Enterprise

Custom · ongoing collection

Volume pricing, SLAs, dedicated workers and bespoke onboarding for teams tracking review sentiment across many businesses continuously. Tell us your numbers and we'll quote.

Talk to us
10% off your first paid run.Use code LIVESCRAPER10 at checkout.
Sign up
Pairs well with

Reviews on one
platform aren't the whole picture.

Customers review the same business in more than one place, and the two accounts often differ.

The legal bit

Reviews are written
by people.

This service sits differently from the other two Trustpilot tools, and it's worth saying why rather than reusing their answer.

Reviews are published to be read - that's the entire point of a review platform, and collecting publicly available information for research is long-established practice. But unlike a business profile, a review has an author. The output carries a reviewer's display name, an identifier, their country and their reviewing history, and that combination is personal data even when the name is a first name and an initial.

Two practical consequences. You become a controller of that data, so the usual duties apply - a lawful basis for holding it, and a route for objection and erasure requests. And if you republish reviews, remember the text is the author's own writing: quoting a review in your marketing is a different act from analysing it internally, and attribution and context both matter. Aggregate analysis - themes, sentiment over time, ratings distribution - is the easiest use to justify and the most common.

Our own practice: minimise what you keep. If you only need sentiment, you rarely need the author fields, and dropping them at import is the simplest way to reduce your obligations. We touch nothing behind a login, run no third-party trackers on the data layer, and your exports auto-delete after 30 days.

livescraper.app · principles
Publicly published reviews only
Nothing behind a login
Exports auto-delete (30 days)
Author fields are personal dataminimise!
Republishing review texttake care!
Drop the author columns if you don't need them.
Common questions

Things people
ask before signing up.

The questions we hear most. Anything else? Talk to us - humans, not bots, write the answers.

How many rows will this produce?+
Far more than the other Trustpilot services, because a row is a review rather than a business. The default is up to a hundred reviews per business, so a hundred domains is potentially ten thousand rows. Lower the per-business setting to match your analysis, and read the estimate before queueing a long list.
Can I collect only new reviews on a repeat run?+
Yes, and it's the most useful setting here. A cut-off date tells the run to stop at the oldest review you care about - set it to your last collection date and you only pay for what has appeared since. Use review_id to de-duplicate at the boundary.
Why is the review date a number?+
Because review_date is a Unix timestamp - seconds, not a readable date - and there's no formatted counterpart documented alongside it. Convert it as you import. Sorting works fine on the raw value; it's only the labels that will be unreadable if you don't.
Why does my total review count look inflated?+
Almost certainly because total_reviews was summed. It's the business's overall count repeated on every one of its review rows, so adding it up across a hundred reviews multiplies it by a hundred. Take the first value per business, or get it from the Trustpilot Scraper, which returns one row per business.
Which languages can I filter to?+
English, Spanish and German are the languages named in the reference, alongside a default option and one for all languages. If you need something else, test it on the free tier rather than assuming - better to discover the answer across two rows than across twenty thousand.
Can I tell whether reviews are genuine?+
You get useful signals rather than a verdict. Each review carries how many reviews its author has written in total and how many were for this same business, plus their country and a timestamp. An account whose only review is the one you're reading is weaker evidence than a long reviewing history, and reviews clustered in time are worth a look. None of that proves anything by itself - a first-time reviewer is usually just a first-time reviewer - but it lets you weigh a rating instead of taking it at face value.
Can I republish the reviews I collect?+
Analysing them internally and republishing them are different acts. Review text is the author's own writing and the author fields are personal data, so quoting reviews in your own marketing raises attribution and data-protection questions that aggregate analysis doesn't. Sentiment, themes and rating distributions are the straightforward uses. If you only need those, drop the author columns at import - the simplest way to reduce what you're responsible for.

Read the reviews,
not just the score.

Paste domains or page links and get the full text, ratings, dates and author history behind every rating. Your first 500 rows are free - enough to read one business properly.

Trustpilot Reviews Scraper - the text behind the rating

A star rating compresses everything a customer thought into a single digit. The Trustpilot Reviews Scraper gets the rest of it. Submit domains or Trustpilot page links - up to 1,000 per run - and each business returns its reviews as rows carrying thirteen fields: a review identifier, the title and full text as written, the star rating, how many people found it helpful, the date, the business's total review count, and four fields describing the author, namely their display name, an identifier, their country, and how many reviews they have written in total and for this business specifically. Results arrive grouped by business rather than as one flat pile, and every review carries the query that produced it.

The first thing to understand is how differently this behaves from the other two Trustpilot services. Both of those return one row per business, carrying a rating and a review count. Here a row is a review, and the default is up to a hundred reviews per business - so a hundred domains can be ten thousand rows rather than a hundred. That is simply the nature of review data, but it makes the reviews-per-business setting the main cost lever on the page. The complementary setting is a cut-off date: tell a run the oldest review you care about and it stops there, so re-running later with the cut-off set to your last collection means you only pay for what has appeared since. Paired with the review identifier for de-duplication, that turns an expensive one-off pull into cheap ongoing collection. A skip setting pages deeper into a single business's reviews, and it has one quirk worth knowing - the value must be a multiple of twenty.

Three details will save an importer rewrite. The review date is a Unix timestamp in seconds with no formatted counterpart documented alongside it, so convert on the way in or your charts will sort correctly and label unreadably. The total review count is a business-level figure repeated identically on every one of that business's review rows, which means summing it across a hundred reviews reports a hundred times the real number - take the first value per business, or read it from the Trustpilot Scraper, which returns one row per business precisely so this cannot happen. And the response nests one collection per query rather than returning a flat list, so flatten deliberately. On language filtering, English, Spanish and German are the options named in the reference alongside a default and an all setting; anything else is worth testing on the free tier rather than assuming.

Two fields make this dataset unusually useful. Knowing how many reviews an author has written in total, and how many of those were for the business in front of you, lets you weigh a rating rather than simply record it - an account whose only review is the one you are reading is weaker evidence than a long and varied history, and reviews clustered tightly in time are worth examining. Neither proves anything alone, and a first-time reviewer is usually just a first-time reviewer, but combined with the timestamp they turn sentiment reading into something closer to auditing. That capability comes with a responsibility, and it is the reason this page's legal position differs from its siblings: a review has an author, so the output contains personal data even when a name is only a first name and an initial. You become a controller of it, with the usual lawful-basis and erasure duties, and republishing review text raises attribution questions that internal analysis does not. The practical advice is data minimisation - if you only need sentiment and themes, drop the author columns at import. Nothing behind a login is touched and exports auto-delete after 30 days. Start free: your first 500 rows cost nothing and need no credit card.