Trustpilot Scraper | Reviews, Ratings and Company Contacts avatar

Trustpilot Scraper | Reviews, Ratings and Company Contacts

Pricing

from $1.70 / 1,000 companies

Go to Apify Store
Trustpilot Scraper | Reviews, Ratings and Company Contacts

Trustpilot Scraper | Reviews, Ratings and Company Contacts

Scrape Trustpilot without an account: TrustScore, star breakdown, categories with rank, email, phone and address, reply rate, AI review summaries, similar companies and the 12-month transparency report. Look up domains, search by keyword or read a category leaderboard, and export every review.

Pricing

from $1.70 / 1,000 companies

Rating

0.0

(0)

Developer

SilentFlow

SilentFlow

Maintained by Community

Actor stats

1

Bookmarked

6

Total users

0

Monthly active users

3 days ago

Last modified

Share

Trustpilot Company and Reviews Scraper | Ratings, Contacts, AI Summaries and Reviews (2026)

Every Trustpilot company you care about as one clean row: TrustScore, star breakdown, categories with their rank, email, phone and address, reply behaviour, AI review summaries, similar companies and the 12-month transparency report. Turn on reviews and each review lands as its own row. On our test run, 5 companies and their 2,500 newest reviews came back in 71 seconds, every review distinct, in 26 languages. No Trustpilot account, no API key, no business subscription.

Why choose this actor?

Copying TrustScores from Trustpilot tab by tab? Building a lead list from a category page by hand? Stuck at the first 200 reviews of a company with tens of thousands?

  • 46 filled fields per company, not a score and a review count. A company row carries the TrustScore, stars, rating label, total and last-12-month review counts, the 1 to 5 star breakdown, review volume per language, every category with its rank (Revolut is 8th of 50 in Bank), the email, phone, address and contact page, claimed status and claim date, paid features, verification, reply rate and average days to reply, consumer alerts, Trustpilot's AI summary and per-topic summaries, 8 similar companies and the transparency report. On the default run (stripe.com and revolut.com), 46.5 of 54 fields were filled on average.
  • Past the 200-review wall. Trustpilot shows a visitor 200 reviews per list. This actor splits the list by star, language and topic and stitches it back, each review once. On our test run it read 500 reviews from each of Stripe, Amazon, Revolut, Booking.com and Airbnb: 2,500 distinct reviews in 71 seconds, 653 of them with the company's reply.
  • Lead lists straight from a category leaderboard. Type bank and a country and companies come in leaderboard order, each with its rank, website and the contact the category page lists. The top 40 US banks came back in 43 seconds: website on all 40, phone on 52%, email on 45%, street address on 57%, the transparency report on all of them.
  • Three ways in, mixed in one run. Domains you already have, keywords the way Trustpilot's search box reads them, and category leaderboards add up to one deduplicated list. The keyword neobank alone gave 66 companies in 56 seconds.
  • Nothing charged for what Trustpilot does not have. A domain with no Trustpilot page is skipped, listed in the run's ERROR record and never billed. The run's last line says how many companies came back, how many reviews, and why any are missing.

Try your first Trustpilot companies

Paste this input in the JSON tab, or keep the prefilled form and press Start. It reads Stripe and Revolut: their rating, star breakdown, categories, contact, reply behaviour, AI summaries, similar companies and transparency report. It took 24 seconds on our test run.

{
"domains": ["stripe.com", "revolut.com"]
}

Runs on the Apify Free plan: sign up, open the actor, press Start. Each company lands as one row of the dataset, which you can open as a table (Companies, Contacts or Reviews view), download as CSV, Excel or JSON, or read from the API. Add your own domains, a keyword or a category, and turn on reviews when you want them.

How it works

Copy to your AI assistant

Paste this block into Claude, ChatGPT or Cursor to give it full context about this scraper:

You have access to the Trustpilot Scraper on Apify: silentflow/trustpilot-enricher
It returns one dataset row per Trustpilot company (type "company") and, when includeReviews is on, one row per review (type "review").
No field is required. Give at least one of domains, search or categories.
Input schema:
- domains (array of string): company domains or Trustpilot URLs, e.g. "stripe.com", "www.amazon.com", "https://www.trustpilot.com/review/revolut.com"
- search (array of string): keywords for Trustpilot's company search, e.g. "neobank", "car insurance"
- categories (array of string): category slugs, URLs or names, e.g. "bank", "insurance_agency", "Car Insurance", "https://www.trustpilot.com/categories/web_hosting"
- country (string, default "US"): country code or name for search and categories, e.g. "GB", "Germany"
- maxItems (integer, default 100): most companies per run, across domains, search and categories
- includeReviews (boolean, default false): add review rows
- maxReviewsPerCompany (integer, default 100): most reviews per company, newest first, every language
- reviewStars (array of "1".."5"): keep only these ratings
- reviewsSince (string): keep reviews published on or after a date ("2026-09-01") or within a window ("30 days")
- includeTransparency (boolean, default true): add the 12-month transparency report to company rows
Company row (54 keys; absent values are null):
- type, id, url, name, domain, inputDomain, website, logoUrl, description
- trustScore (number), stars (number), ratingLabel (Excellent/Great/Average/Poor/Bad), numberOfReviews, numberOfReviewsLast12Months
- starDistribution {oneStar..fiveStar}, reviewLanguages [{language, reviews}]
- primaryCategory, categoryPath, categories [{id, name, isPrimary, rank, rankOutOf}]
- email, contactPageUrl, phone, address, city, zipCode, countryCode (ISO 2)
- isClaimed, claimedDate (RFC 3339), previouslyClaimed, isClosed, isTemporarilyClosed, isCollectingReviews, isUsingPaidFeatures, hasSubscription, isUsingAIResponses, hasCollectedIncentivisedReviews, isMerged, locationsCount
- verification {verifiedPaymentMethod, verifiedUserIdentity, verifiedByGoogle, verifiedByPersona}, consumerAlerts [string]
- replyRate (%), averageDaysToReply, negativeReviewsCount, negativeReviewsRepliedCount, lastReplyToNegativeReview (RFC 3339)
- aiSummary, topicSummaries [{topic, name, summary}], similarCompanies [{id, name, domain, trustScore, stars, numberOfReviews, logoUrl}]
- transparency {periodStart, periodEnd, reviewsInPeriod, repliesInPeriod, replyRateInPeriod, collectingMethods {organic, manual, automatic, redirected, total}, starsByCollectingMethod, monthly [{month, reviews, oneStar..fiveStar, organic, manual, automatic, redirected}], reports {total, underInvestigation, reviewsTakenOffline, reviewsReinstated, perStar}, basicLinkRate, mergeCount, mergeHistory, hasRecentlyInvitedUsers}
- foundVia ("domain", "search", "category"), searchQuery, categoryId, categoryRank, scrapedAt
Review row (35 keys):
- type, id, url, title, text, rating (1-5), language
- companyId, companyName, companyDomain, companyTrustScore, companyStars, companyPrimaryCategory, companyCountryCode
- authorId, authorName, authorUrl, authorImageUrl, authorCountry, authorReviewCount, authorIsVerified, authorReviewsOnCompany
- likesCount, isVerified, verificationLevel, verificationSource, source
- hasReply, replyText, replyDate, replyUpdatedDate
- experienceDate, publishedDate, updatedDate, scrapedAt (all RFC 3339)
Use apify-client for Python or JS: client.actor("silentflow/trustpilot-enricher").call(run_input=...)

How to scrape Trustpilot company data and reviews

Enrich a list of domains with their Trustpilot reputation

Paste the domains you have, one per line. Each one becomes a company row with its rating, contact and reputation signals. inputDomain keeps the domain as you typed it, so the rows join back to your list even when Trustpilot lists the company under www..

{
"domains": ["stripe.com", "revolut.com", "wise.com", "www.amazon.com"],
"includeTransparency": true
}

Pull the newest reviews of a company

Turn on reviews and set how many you want. Reviews come newest first, in every language the company has, each linked to its company.

{
"domains": ["revolut.com"],
"includeReviews": true,
"maxReviewsPerCompany": 500
}

Build a lead list from a category leaderboard

Pick a category and a country. Companies come in leaderboard order with their rank, website and the phone, email and address the category lists, plus the full company row.

{
"categories": ["bank"],
"country": "US",
"maxItems": 40
}

Input parameters

FieldTypeDefaultWhat it does
domainslist of textstripe.com, revolut.com (prefill)Company domains or Trustpilot URLs, one row per company
searchlist of textnoneKeywords for Trustpilot's company search
categorieslist of textnoneCategory slugs or URLs, read as leaderboards
countrychoice or textUSCountry of the search and the category leaderboards
maxItemsnumber100Most companies per run, all sources together
includeReviewsyes/nonoAdd each company's reviews as their own rows
maxReviewsPerCompanynumber100Most reviews per company, newest first
reviewStarslist of choicesallKeep only these ratings, from 1 to 5
reviewsSincedate or windownoneKeep reviews published on or after 2026-09-01, or within 30 days, 3 months
includeTransparencyyes/noyesAdd the 12-month transparency report to each company row

Accepted inputs

  • Domains: stripe.com, www.amazon.com, https://revolut.com/, or a Trustpilot company URL (https://www.trustpilot.com/review/stripe.com). A domain Trustpilot moved (amazon.com lives at www.amazon.com there) is followed to its page.
  • Keywords: what you would type in Trustpilot's search box: a trade (car insurance), a product (password manager), a brand (n26).
  • Categories: the slug from trustpilot.com/categories (bank, insurance_agency, web_hosting), the category URL, or a plain name: Car Insurance is matched to Trustpilot's own leaderboard for it (auto_insurance_agency), and the log says which one was read.
  • Country: a code (GB) or a name (United Kingdom, Germany). It applies to keyword searches and category leaderboards; domains are read wherever the company is.
  • Dates: 2026-09-01, or a window back from now such as 7 days, 2 weeks, 3 months, 1 year.

Domains come first, then keyword matches, then categories, until maxItems companies. A company found twice (as a domain and in a category, say) is read once.

What data can you extract from Trustpilot?

Each company row has 54 keys in 9 groups, and each review row 35 keys. Fields Trustpilot does not publish for a company are null, never an empty string.

GroupFields
Identityid, url, name, domain, inputDomain, website, logoUrl, description
ReputationtrustScore, stars, ratingLabel, numberOfReviews, numberOfReviewsLast12Months, starDistribution, reviewLanguages
CategoriesprimaryCategory, categoryPath, categories with each category's rank and rankOutOf
Contactemail, contactPageUrl, phone, address, city, zipCode, countryCode
Profile statusisClaimed, claimedDate, previouslyClaimed, isClosed, isTemporarilyClosed, isCollectingReviews, isUsingPaidFeatures, hasSubscription, isUsingAIResponses, hasCollectedIncentivisedReviews, isMerged, locationsCount, verification, consumerAlerts
RepliesreplyRate, averageDaysToReply, negativeReviewsCount, negativeReviewsRepliedCount, lastReplyToNegativeReview
AI and peersaiSummary, topicSummaries (Trustpilot's summary per topic, such as customer service or fees), similarCompanies (8 peers with their rating)
Transparency13 fields: the period, reviews and replies in it, collecting methods (organic, invited by hand, invited automatically, redirected), stars by method, a 12-row month-by-month table, reports and reviews taken down, basicLinkRate, merges
DiscoveryfoundVia, searchQuery, categoryId, categoryRank, scrapedAt

A review row carries its id and permanent url, title, text, rating, language, the company it is about (companyId, companyName, companyDomain, companyTrustScore, companyStars, companyPrimaryCategory, companyCountryCode), the author (authorName, authorUrl, authorImageUrl, authorCountry, authorReviewCount, authorIsVerified, authorReviewsOnCompany), likesCount, verification (isVerified, verificationLevel, verificationSource, source), the company's reply (hasReply, replyText, replyDate, replyUpdatedDate) and every date (experienceDate, publishedDate, updatedDate, scrapedAt), all in RFC 3339 UTC.

Output example

A company row from the default run (lists shortened):

{
"type": "company",
"id": "50489e6800006400051ae0d6",
"url": "https://www.trustpilot.com/review/stripe.com",
"name": "Stripe",
"domain": "stripe.com",
"inputDomain": "stripe.com",
"website": "https://stripe.com",
"logoUrl": "https://s3-eu-west-1.amazonaws.com/tpd/logos/50489e6800006400051ae0d6/0x0.png",
"description": "Millions of businesses of all sizes use Stripe's software and APIs to accept payments, send payouts, and manage their businesses online.",
"trustScore": 1.6,
"stars": 1.5,
"ratingLabel": "Bad",
"numberOfReviews": 17537,
"numberOfReviewsLast12Months": 1157,
"starDistribution": { "oneStar": 9109, "twoStar": 512, "threeStar": 469, "fourStar": 725, "fiveStar": 6722 },
"reviewLanguages": [{ "language": "en", "reviews": 14180 }, { "language": "fr", "reviews": 957 }],
"primaryCategory": "Payment Service",
"categoryPath": "Business Services > Administration & Services > Payment Service",
"categories": [{ "id": "payment_service", "name": "Payment Service", "isPrimary": true, "rank": null, "rankOutOf": null }],
"email": null,
"contactPageUrl": "https://support.stripe.com/contact",
"phone": null,
"address": "510 Townsend Street",
"city": "San Francisco",
"zipCode": "94103",
"countryCode": "US",
"isClaimed": true,
"claimedDate": "2016-05-11T03:33:53Z",
"isUsingPaidFeatures": false,
"verification": { "verifiedPaymentMethod": true, "verifiedUserIdentity": false, "verifiedByGoogle": false, "verifiedByPersona": false },
"consumerAlerts": [],
"replyRate": 100,
"averageDaysToReply": 1.91,
"negativeReviewsCount": 1044,
"negativeReviewsRepliedCount": 1044,
"lastReplyToNegativeReview": "2026-10-10T18:18:20Z",
"aiSummary": "Evaluating 998 reviews, most reviewers were let down by their experience overall...",
"topicSummaries": [{ "topic": "customer_service", "name": "Customer service", "summary": "Users describe negative interactions with customer service..." }],
"similarCompanies": [{ "id": "46ca451b0000640005009529", "name": "Paypal", "domain": "www.paypal.com", "trustScore": 1.4, "stars": 1.5, "numberOfReviews": 41850 }],
"transparency": {
"periodStart": "2025-11-01T00:00:00Z",
"reviewsInPeriod": 1157,
"collectingMethods": { "organic": 1154, "manual": 0, "automatic": 2, "redirected": 1, "total": 1157 },
"monthly": [{ "month": "2025-11", "reviews": 85, "oneStar": 77, "twoStar": 1, "threeStar": 0, "fourStar": 1, "fiveStar": 6, "organic": 84, "manual": 0, "automatic": 1, "redirected": 0 }],
"reports": { "total": 3, "underInvestigation": 0, "reviewsTakenOffline": 3, "reviewsReinstated": 0 }
},
"foundVia": "domain",
"scrapedAt": "2026-10-12T01:03:15Z"
}

A review row:

{
"type": "review",
"id": "6acc06af38237764483663d8",
"url": "https://www.trustpilot.com/reviews/6acc06af38237764483663d8",
"title": "Almost every purchase I make my card…",
"text": "Almost every purchase I make my card gets frozen...",
"rating": 1,
"language": "en",
"companyId": "55f298320000ff0005832fe0",
"companyName": "Revolut",
"companyDomain": "www.revolut.com",
"companyTrustScore": 4.7,
"companyStars": 4.5,
"companyPrimaryCategory": "Financial Institution",
"companyCountryCode": "GB",
"authorName": "Roger Kerr",
"authorUrl": "https://www.trustpilot.com/users/6acc06af27cfc8cd47557804",
"authorCountry": "US",
"authorReviewCount": 1,
"likesCount": 0,
"isVerified": true,
"verificationLevel": "invited",
"source": "InvitationLinkApi",
"hasReply": true,
"replyText": "Hi. We have located your account in our system and have proactively opened a support chat session...",
"replyDate": "2026-10-12T00:51:55Z",
"experienceDate": "2026-10-11T00:00:00Z",
"publishedDate": "2026-10-11T23:59:11Z",
"scrapedAt": "2026-10-12T01:08:06Z"
}

Advanced usage

Watch last month's complaints about your competitors

Keep only 1 and 2 star reviews published in the last 30 days. Each company stops reading at the first older review, so a weekly run stays short.

{
"domains": ["revolut.com", "n26.com", "wise.com", "monzo.com"],
"includeReviews": true,
"maxReviewsPerCompany": 300,
"reviewStars": ["1", "2"],
"reviewsSince": "30 days",
"includeTransparency": false
}

Score every insurer in a country on trust and responsiveness

Read a whole category leaderboard and sort by replyRate, averageDaysToReply and trustScore. The transparency report shows which ones collect their reviews by invitation and which ones earn them organically.

{
"categories": ["car_insurance"],
"country": "GB",
"maxItems": 200
}

Turn a keyword into a prospect list

Search the way a buyer would and keep the companies with a phone or an email. The Contacts view of the dataset is ready to export to a CRM.

{
"search": ["web hosting", "managed wordpress"],
"country": "US",
"maxItems": 300,
"includeTransparency": false
}

Collect a deep review sample for sentiment analysis

Ask for thousands of reviews of one company: the list goes past the 200 a visitor sees, across every language and topic, each review once. Filter on language afterwards if you only want one.

{
"domains": ["booking.com"],
"includeReviews": true,
"maxReviewsPerCompany": 3000,
"includeTransparency": false
}

Feed a scheduled reputation dashboard

Schedule this run daily on Apify and append the company rows to a sheet or a database: trustScore, numberOfReviews and the monthly table give you a trend line per company, and the new reviews since yesterday come along.

{
"domains": ["yourbrand.com", "competitor-one.com", "competitor-two.com"],
"includeReviews": true,
"maxReviewsPerCompany": 200,
"reviewsSince": "1 day"
}

FAQ

What is Trustpilot? Trustpilot is the largest open review platform for businesses, with more than a million companies reviewed across the US, the UK and Europe. Shoppers read it before buying, and companies use their TrustScore and reply rate as a public reputation signal.

Do I need a Trustpilot account, an API key or a business subscription? No. The actor reads the public company pages and reviews any visitor can see, with no login, no account and no key to set up.

What do I get for each company? One row with 54 keys: rating and star breakdown, review counts in total and for the last 12 months, review volume per language, categories with their rank, contact details, claimed and verification status, reply behaviour, consumer alerts, Trustpilot's AI summary and topic summaries, similar companies and, unless you turn it off, the 12-month transparency report. See the output example above.

How many reviews can I get from one company? As many as you ask for with maxReviewsPerCompany. Trustpilot shows a visitor 200 reviews per list; the actor splits the list by star, language and topic to go further, each review once. 500 per company came back for each of 5 large companies in 71 seconds on our test run. For very large companies, the reachable share depends on how their reviews spread across stars, languages and topics.

Why can the number of reviews returned differ from numberOfReviews? numberOfReviews is Trustpilot's own total, which includes reviews it does not list publicly. The actor returns the reviews the public lists show, up to your limit, and with filters only the ones that match them.

Can I get only negative or recent reviews? Yes. reviewStars keeps the ratings you pick, and reviewsSince keeps the reviews published since a date or within a window. They combine: 1 and 2 stars since 30 days gives last month's complaints.

Where do the email, phone and address come from? From the company's own Trustpilot profile and, for companies found in a category, from the category listing. Trustpilot shows them only when the company published them: in the top 40 US banks, 45% had an email, 52% a phone and 57% a street address. When a company lists a contact page instead of an email, it goes to contactPageUrl.

What is the transparency report? Trustpilot's own 12-month audit of a company's reviews: how many were written unprompted and how many came from the company's invitations, the reviews per month by star and by method, how many were reported and taken down, and which other Trustpilot pages were merged into this one. It tells you how much of a high score comes from invited reviews.

Can I scrape several domains, keywords and categories in one run? Yes. Put them all in the same run: they add up to one list, each company once, until maxItems. Keyword searches and categories share the run's country; to cover several countries, run one task per country.

How fresh is the data? Live. Every run reads Trustpilot at the moment it runs, so a review posted a minute ago is in the next run, and a rating change shows up immediately.

Are the links permanent? The company url, review url, author authorUrl and all IDs are stable. Logo and author image links point to Trustpilot's image servers and work as long as the company or review stays online.

Can I use it from Python, JavaScript or an AI agent? Yes. Call silentflow/trustpilot-enricher with the Apify client in Python or JavaScript, from the Apify API, or from an agent through the Apify MCP server. The "Copy to your AI assistant" block above gives an assistant everything it needs.

More SilentFlow scrapers

Support

Need something this scraper doesn't do yet? We ship features fast.

  • Feature requests go straight to our backlog
  • Enterprise needs? We do custom integrations and high-volume plans
  • Pricing questions? Check the Monetization tab on the actor page

Response time: usually under 24 hours.

This Actor extracts publicly available data from Trustpilot: the company pages and reviews any visitor can open, with no login, no account and no paywall. Users are responsible for complying with Trustpilot's terms of service and applicable data protection laws (GDPR in the European Union, CCPA in California, PIPL in China where relevant). Review rows carry the author name, country and profile picture Trustpilot shows publicly, so treat them as personal data when you store, analyse or publish them, and keep only what your purpose needs. Company contact details are the ones the companies published themselves. The data returned is informational: ratings, reviews and replies change over time, so verify them before a regulated use.

Trustpilot Scraper by SilentFlow: every company's rating, contacts and reputation signals, and every review you need, in one table.