Trustpilot Scraper

Reputation and
contact, together.

Submit domains, Trustpilot page links or a whole category and get each business back as a row - rating and review count, whether the profile is claimed, whether the business is closed, plus the category, email, phone and full address.

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

The score,
not the reviews.

Worth being precise, because the name suggests more than this service does.

What you get is the business profile: its rating, how many reviews it has, whether the company has claimed the page, whether it's marked closed, and its contact and category details. That's the summary view - one row per business.

What you don't get is the review text. No individual reviews, no reviewer names, no dates, no star breakdown per review. If reading what customers actually wrote is the job, the Trustpilot Reviews Scraper does that - and it returns many rows per business rather than one.

The distinction matters for cost as much as content. One row per business makes this cheap to run across a whole market; pulling every review is a different order of magnitude.

livescraper.app · scope
The rating and the review count
Whether the profile is claimed or closed
Email, phone and full address
The review text itself is a separate service
Reviewer names and dates are not returned!
One row per business, not per review.
Three ways in

Start from a domain,
a page, or a whole category.

The input is flexible, and the third option behaves differently from the other two in a way that affects what a run costs.

A domain

Just the company's website - example.com. Convenient when you already hold a list of domains and want to know what each one's reputation looks like.

A Trustpilot page link

The direct review-page URL for a business. Use this when you already have the profile and want it resolved exactly, with no ambiguity about which company you meant.

A category page - one to many

Submit a category URL and you get every company listed in that category, not one row. Powerful for mapping a market in a single job - and the one input where a handful of queries can produce a great many rows, so watch the estimate.

Up to 1,000 queries per run in any of those forms, mixed freely. Because a category expands into many businesses, the row count from a category run isn't predictable from the query count alone - the estimator prices it before you commit, and the free tier is a sensible place to see how large a category actually is.

All three forms assume you already know what you're looking for. If you don't - if the question is "which companies are in this space?" rather than "what does this one's profile say?" - the Trustpilot Search Scraper takes a plain search term instead and returns the same seventeen fields.

How it works

Businesses in,
reputation out.

No filters to configure - the input form you choose does the work.

  1. STEP 1Sign in to the platform.
  2. STEP 2Open the Trustpilot Scraper.
  3. STEP 3Paste domains, page links or category URLs.
  4. STEP 4Check the estimate - categories expand.
  5. STEP 5Pick your format and click Get Data.

All three input forms can go into the same run - you don't need separate jobs.

Before you wire it up

Four notes for
whoever writes the importer.

Each of these comes straight out of the documented response, and each has broken somebody's pipeline before.

The logo URL has no scheme

profile_image is protocol-relative - it starts with // rather than https://. Paste it into a spreadsheet or a server-side fetch and it won't resolve. Prepend the scheme.

Empty comes in two flavours

Missing values are not consistent: the documented response shows page_url as null and phone as an empty string in the same row. Test for both, or half your blanks slip through.

The booleans are real booleans

claimed, closed and temporarily_closed come back as actual true/false, not as the strings some services return. Pleasant, and worth knowing so you don't write string comparisons.

Categories is an array

categories holds a list, not a single value - a business can sit in more than one. Flatten it deliberately when you export to CSV rather than letting your writer stringify it however it likes.

Data dictionary

Twelve columns,
one row per business.

Taken from a real export, not from the API reference. The run behind this list submitted one category URL and came back with 213 businesses.

query
The category URL, domain or profile link you submitted. Present on every row.
name
The business name shown on its Trustpilot profile. Occasionally blank - 98.6% of rows carried one.
domain
The business domain the profile belongs to.
rating
The rating as a decimal, e.g. 4.9.
stars
The rating rounded to a half step, e.g. 5, 4.5 or 4 - a separate column from rating.
reviews
How many reviews the profile has, as a count.
category
The category the business is listed under, e.g. Travel Agency.
location
Where the business is, as a single string, e.g. "Plantation, United States".
website
The business's own site.
email
A contact email. Sparse - present on 31% of rows.
phone
A contact phone number. Sparse - present on 30% of rows, and formatting is inconsistent.
url
The Trustpilot profile URL for the business.

Two of these columns are mostly empty. Across 213 rows of real output, email arrived on 31% and phone on 30%. Everything else was present on every row except name, at 98.6%. Plan for blanks in the two contact columns rather than assuming a contact per business.

Common workflows

Three jobs people
most often run here.

Where a rating alongside contact details does more than either would alone.

Market mapping

Rank a whole category by reputation

Submit a category URL and you get every company in it, each with a rating and review count. Sorting that by score shows who leads a market on customer sentiment rather than on marketing spend - and the review count tells you which scores are actually meaningful.

Research · Strategy
Lead qualification

Find businesses that need help

A low rating alongside an unclaimed profile is a specific, actionable signal: this company has a reputation problem and isn't managing it. Because email and phone come in the same row, a qualifying pass and a contactable list are the same job.

Agencies · Sales
List hygiene

Drop businesses that have shut

The closed and temporarily-closed flags catch records that are no longer worth working, which no amount of contact enrichment will tell you. Running an existing list through is a cheap way to stop paying attention to companies that have gone.

Ops · Data
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. Particularly useful here for seeing how many businesses a category actually contains before you run several of them.

$0 forever
Pay-as-you-go

$0.002 per row, after the free tier

Roughly $2 per 1,000 businesses. Domain and page-link runs are one row each and exact to budget; category runs expand, so check the estimate before you start.

Most popular
Enterprise

Custom · recurring tracking

Volume pricing, SLAs, dedicated workers and bespoke onboarding for teams watching reputation across a large set of businesses on a schedule. 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

Reputation is one
signal among several.

A rating tells you how a business is regarded. These fill in what it is, and what customers said elsewhere.

The legal bit

Business profiles,
published to be seen.

A comparatively easy answer, and it's worth explaining why rather than just asserting it.

A review platform profile exists so that customers can find it and judge a business by it. The rating, the review count, the category and the contact details are all published for exactly that purpose. Collecting publicly available business information for research is long-established practice, and as long as the data is publicly available and the process doesn't disrupt the site there are no federal laws prohibiting it.

Two things keep this on the lighter end. There's no personal data in the seventeen fields - the contact details belong to the organisation, and because this service returns a review count rather than the reviews, no reviewer is named or quoted anywhere in the output. And the review text itself, which is user-authored content with its own considerations, isn't part of what you get here.

The platform's terms restrict automated access, so that remains a terms question as it does everywhere. 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
Public business profiles only
No reviewer is named or quoted
Nothing behind a login
Organisation contact details
Exports auto-delete (30 days)
A score and a summary, not a transcript.
Common questions

Things people
ask before signing up.

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

Do I get the actual review text?+
No. This returns the business profile - rating, review count, claimed and closed status, category, and contact details - as one row per business. It does not return individual reviews, reviewer names or dates. Reading what customers wrote is the Trustpilot Reviews Scraper. Note the cost difference too: one row per business here, versus many rows per business for reviews.
What can I submit?+
Three forms, mixed freely in the same run, up to 1,000 queries: a plain domain, a direct Trustpilot page link, or a category URL. The third is the interesting one - a category returns every company listed in it rather than a single row, which makes it the fastest way to map a market.
How many rows will a category produce?+
As many as there are businesses in it, which means row count isn't predictable from query count on category runs. That's worth knowing before you queue a dozen categories. The estimator prices the job before it starts, and spending a few free-tier rows on one category first tells you the rough scale.
Why won't the logo image load?+
Because profile_image is protocol-relative - it begins with // instead of https://. That works inside a web page but fails in a spreadsheet, a server-side fetch or anything that needs an absolute URL. Prepend the scheme and it resolves.
How do I detect missing values?+
Test for both null and empty string. The documented response shows page_url as null and phone as "" in the same record, so a check for only one of them will let blanks through. The three status fields are genuine booleans, so those at least behave predictably.
What does the claimed flag actually tell me?+
Whether the business has taken ownership of its profile. It's a useful engagement signal: an unclaimed profile means nobody at the company is responding to reviews or managing the page. Combined with a low rating it identifies businesses with a reputation problem they aren't addressing - which is exactly the list agencies want.
How much does it cost?+
The first 500 rows on a new account are free and one-time; after that it's $0.002 per row - about $2 per 1,000 businesses - pay-as-you-go with no subscription. Domain and page-link runs are one row per query; category runs expand, so use the estimate. Credits don't expire and there's no monthly reset.

Map a market
by reputation.

Paste domains, page links or a whole category and get rating, review count, status and contact details per business. Your first 500 rows are free - enough to see how big a category is.

Trustpilot Scraper - reputation, status and contact in one row

A review platform profile compresses a lot of judgement into a small amount of data: a rating, how many people contributed to it, whether the business bothers to manage the page, and whether it is still trading. The Trustpilot Scraper collects that at scale. Submit up to 1,000 queries per run in any of three forms - a plain domain, a direct Trustpilot page link, or a category URL - and each business comes back as a single row carrying seventeen fields: name, rating, review count, the categories it is listed under, claimed, closed and temporarily-closed flags, its website, the profile URL, a logo image, plus email, phone and a split address of street, city, postal code and country.

The most useful thing to understand first is what this is not. It returns the summary view of a business, not its reviews. You get a rating and a count, not the review text, reviewer names or dates - reading what customers actually wrote is a separate service in the catalogue. That boundary matters for cost as much as for content: one row per business makes this cheap enough to run across an entire market, whereas pulling every review for the same set is a different order of magnitude. The three input forms also differ in that respect. A domain or a page link resolves to one row, making a run exact to budget, while a category URL expands into every company listed in that category - which is the fastest way to map a market and the one case where row count cannot be predicted from query count. The estimator prices a job before it runs, and spending a few free-tier rows on a single category is a sensible way to learn how large one typically is.

Four details in the documented response deserve attention before anyone writes an importer. The logo URL is protocol-relative, beginning with a double slash rather than a scheme, which works inside a web page and fails in a spreadsheet or a server-side fetch - prepend https and it resolves. Missing values arrive in two different shapes: the documented record shows the profile URL as null and the phone as an empty string in the same row, so a check for only one of them will let blanks slip through. The three status flags are genuine booleans rather than the strings some services return, which is a small mercy worth knowing so nobody writes string comparisons against them. And the categories field holds an array, since a business can be listed under more than one, so flatten it deliberately when exporting to CSV rather than letting a writer stringify it arbitrarily.

Three workflows account for most of the use. Research teams submit a category and sort the results by rating to see who leads a market on customer sentiment rather than on marketing budget, using the review count to judge which scores carry weight. Agencies and sales teams look for the combination of a low rating and an unclaimed profile, which identifies a business with a reputation problem nobody is managing - and because email and phone arrive in the same row, qualifying the lead and being able to contact it are the same job. Operations teams run existing lists through for the closed and temporarily-closed flags, which catch companies that have shut and that no amount of contact enrichment would flag. On the legal side this sits at the lighter end of the catalogue: a business profile is published precisely so customers can find it, there is no personal data in the seventeen fields, and because the service returns a review count rather than the reviews, no reviewer is named or quoted anywhere in the output. The platform's terms restrict automated access as they do everywhere, 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.