Trustpilot Reviews & Company Data Scraper avatar

Trustpilot Reviews & Company Data Scraper

Pricing

from $0.50 / 1,000 company reviews

Go to Apify Store
Trustpilot Reviews & Company Data Scraper

Trustpilot Reviews & Company Data Scraper

Scrape Trustpilot at full depth: company search & details, paginated reviews, best/newest/recently-reviewed companies by category, category taxonomy, and consumer review history. 10 operations, one clean JSON dataset. Built for review monitoring, lead-gen, and review-integrity analysis.

Pricing

from $0.50 / 1,000 company reviews

Rating

0.0

(0)

Developer

SIÁN OÜ

SIÁN OÜ

Maintained by Community

Actor stats

1

Bookmarked

2

Total users

1

Monthly active users

12 hours ago

Last modified

Categories

Share

Trustpilot Reviews & Company Data Scraper — 10 Operations ⭐

SIÁN Agency Store Store-Taobao & Tmall Store-Xiaohongshu RedNote Store-Sephora Reviews

⭐ The only Trustpilot scraper that covers the FULL data model — companies, reviews, category rankings AND consumer review history in one actor.

Built for review monitoring, category lead-gen, competitive benchmarking, and review-integrity / fraud investigation.


📋 Overview

Most "Trustpilot scrapers" just dump a company's reviews. This one scrapes the entire Trustpilot data model — companies, reviews, the full category taxonomy, and individual consumer review histories — across 10 operations in a single actor, with clean structured JSON out and no login required.

Why teams choose this scraper:

  • 10 operations, not 1: company search & details, paginated reviews, best/newest/recently-reviewed companies by category, category search & details, plus consumer profiles and review history.
  • 🗂️ Category intelligence others don't have: rank the best companies in any category and track recently-reviewed companies (plus a newest-companies feed) — exclusive to this actor.
  • 👤 Consumer-level review history: pull every review a single reviewer ever wrote — purpose-built for fake-review and reputation-fraud analysis.
  • 💎 Authenticity signals on every row: Trust Score, verified-by-Google, paid-plan flag, same-domain review count, verified-review flag.
  • 💰 Pay-per-result pricing: charged only for successful rows. Competitive per-review rate with a generous free tier to test.
  • 🌍 23 locales: en-US, en-GB, de-DE, fr-FR, es-ES, it-IT, and more — scrape the regional Trustpilot listings your market cares about.

🆚 Why This Scraper vs. Review-Only Tools

Most Trustpilot actors stop at "give me a company's reviews." This one models the whole platform:

CapabilityTypical review-only scraperThis scraper
Company reviews (paginated)
Company search & details⚠️ sometimes
Best companies by category
Newest companies by category (lead-gen)
Recently-reviewed companies
Category taxonomy (parent/sibling/sub)
Consumer profile + full review history
Reviewer-trust signals on each row

If your workflow is "monitor one company's reviews," any scraper works. If you need category intelligence, lead generation, or review-integrity investigation, this is the only Trustpilot actor that covers it.


✨ Features

  • Company Reviews: paginate every review with rating, verified flag, review source, experienced date, language, and company reply.
  • 🔍 Company Search: find companies by keyword with rating and review-count filters.
  • 🏢 Company Details: full profile by domain — Trust Score, rating distribution, verified-by-Google, claimed/paid status, about text.
  • 🏆 Companies by Category: list the best companies in a category, sorted by relevance, review count, or latest review.
  • 🆕 Newest Companies in Category: a feed of businesses that recently joined a vertical (availability depends on category activity).
  • Recently Reviewed in Category: monitor review velocity and reputation movement across a category.
  • 🗂️ Category Search & Details: resolve category IDs and walk the full parent / sibling / sub-category taxonomy.
  • 👤 Consumer Details & Reviews: a reviewer's profile plus their complete review history across all companies.
  • 📄 Smart pagination: pull up to 100 pages per run; the actor stops automatically at the last page.
  • 🧾 HTML run report: success/error counts, success rate, pages fetched, and duration — saved every run, even on failure.

🎬 Quick Start

Pick an operation, fill the field it needs, and run. Below: scrape Best Buy's reviews.

curl -X POST "https://api.apify.com/v2/acts/sian.agency~trustpilot-reviews-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"operation": "companyReviews", "companyDomain": "www.bestbuy.com", "maxPages": 5}'

🚀 Getting Started (3 Simple Steps)

Step 1: Choose an operation

Select one of the 10 operations (e.g. companyReviews, companySearch, categoryNewest).

Step 2: Provide the required field

Each operation needs one input — a Query, a Company Domain, a Category ID, or a Consumer ID. Discover them with the search operations (Company Search gives you a domain; Category Search gives you a category ID; any review row gives you a consumer ID).

Step 3: Run and export

Run the actor and download your data as JSON, CSV, or Excel from the Apify dataset.

That's it! In under a minute, you'll have:

  • Clean, structured rows with curated camelCase fields
  • Raw upstream fields spread alongside for power users
  • An HTML run report in the key-value store

📥 Input Configuration

FieldTypeRequiredDescription
operationstringYesOne of 10 operations (see table below)
querystringfor search opsKeyword for Company Search / Category Search
companyDomainstringfor company detail/review opsDomain, e.g. www.bestbuy.com
categoryIdstringfor category opsCategory slug, e.g. electronics_company
consumerIdstringfor consumer opsReviewer ID from any review row
localestringNoTrustpilot locale (default en-US)
maxPagesintegerNoMax pages for paginated ops (default 5, max 100)
reviewSortstringNomost_relevant or recency (Company Reviews)
datePostedstringNoRecency window for Company Reviews
reviewRatingstringNoFilter reviews by star rating 1–5
minRating / minReviewCountstringNoFilter companies in search/category
categorySortstringNoSort Companies by Category

Operations

OperationNeedsReturns
companySearchqueryCompanies matching a keyword
companyDetailscompanyDomainFull company profile + Trust Score
companyReviewscompanyDomainPaginated reviews (PRIMARY)
categoryCompanyListcategoryIdBest companies in a category
categoryRecentlyReviewedcategoryIdRecently-reviewed companies
categoryNewestcategoryIdNewest companies (lead-gen)
categorySearchqueryCategory IDs by keyword
categoryDetailscategoryIdCategory taxonomy
consumerDetailsconsumerIdReviewer profile
consumerReviewsconsumerIdA reviewer's full review history

Example:

{
"operation": "categoryNewest",
"categoryId": "software_company",
"locale": "en-US"
}

📤 Output

Results are saved to the Apify dataset with 60+ fields. Each row carries curated camelCase aliases plus the raw upstream fields spread alongside. Key fields:

FieldTypeDescription
companyNamestringCompany name
domainstringCompany domain
trustScorenumberTrustpilot Trust Score
ratingnumberStar rating
reviewCountintegerTotal reviews
reviewTitlestringReview headline
reviewTextstringFull review body
reviewRatingintegerReview star rating
reviewIsVerifiedbooleanVerified review flag
reviewSourcestringWhere the review originated
consumerIdstringReviewer ID (chains to consumer ops)
consumerReviewCountSameDomainintegerReviewer's reviews of the same company
categoryId / categoryNamestringCategory identity
isVerifiedByGoogle / isPaidbooleanCompany authenticity / plan signals

Example review row:

{
"_operation": "companyReviews",
"reviewId": "...",
"reviewTitle": "Great support team",
"reviewText": "...",
"reviewRating": 5,
"reviewIsVerified": true,
"reviewSource": "Organic",
"consumerId": "66abfdbd068a7d7fb565c516",
"consumerName": "Debra F.",
"consumerCountry": "US",
"consumerReviewCountSameDomain": 1,
"companyDomain": "www.bestbuy.com",
"status": "success"
}

Filter the dataset by _operation to split modes, or by status to isolate any error rows.

Field groups by operation

  • Company rows (companySearch, companyDetails, categoryCompanyList, category listings): companyId, companyName, domain, website, logo, trustScore, rating, reviewCount, categories, plus (details) aboutCompany, negativeReviewCount, isVerifiedByGoogle, isClaimed, isPaid, isAskingForReviews, ratingDistribution.
  • Review rows (companyReviews, consumerReviews): reviewId, reviewTitle, reviewText, reviewRating, reviewIsVerified, reviewSource, reviewExperiencedTime, reviewLanguage, replyText, plus reviewer fields consumerId, consumerName, consumerCountry, consumerReviewCount, consumerReviewCountSameDomain.
  • Category rows (categorySearch, categoryDetails): categoryId, categoryName, parentId, companyCount, level, subcategories, parentCategory, siblingCategories.
  • Consumer rows (consumerDetails): consumerId, consumerName, country, photo, verified, reviewCount, likeCount, readCount.
  • Metadata on every row: _operation, _fetchedAt, _page, status, plus the source field you queried (_sourceQuery, _sourceCompanyDomain, _sourceCategoryId, or _sourceConsumerId).

Every row also spreads the raw upstream fields (snake_case) alongside the curated camelCase aliases, so power users lose nothing.


💼 Use Cases & Examples

1. Review Monitoring & Voice-of-Customer

Brand and CX teams tracking what customers actually say. Input: companyReviews with your company domain. Output: every review with rating, verified flag, and full text. Use: feed sentiment models to surface complaints, feature requests, and competitor weaknesses at scale.

2. Category Lead Generation

Sales teams prospecting businesses in a vertical. Input: categoryRecentlyReviewed (or categoryNewest) with a category ID. Output: companies actively gathering reviews in that Trustpilot category. Use: a fresh, intent-rich prospecting list no other Trustpilot actor exposes.

3. Competitive Benchmarking

Marketers quantifying brand standing. Input: categoryCompanyList with sort and rating filters. Output: the best companies in your category by Trust Score and review count. Use: measure where you rank and track movement over time.

4. Review-Integrity & Fraud Investigation

Trust & safety analysts hunting fake reviews. Input: consumerReviews with a suspicious reviewer's ID. Output: every review that consumer ever posted, plus same-domain clustering and verification signals. Use: purpose-built for fake-review and reputation-fraud analysis.

5. Brand Reputation Dashboards

Agencies building live reputation monitors. Input: companyDetails + companyReviews on a schedule. Output: Trust Score, rating distribution, and review velocity. Use: combine into dashboards across your brand and its competitors.

6. Market Research by Vertical

Researchers mapping an industry. Input: categorySearch then categoryDetails. Output: the full Trustpilot taxonomy with parent/sibling/sub categories and company counts. Use: size verticals and discover adjacent categories.


🔗 Integration Examples

JavaScript/Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_TOKEN' });
const run = await client.actor('sian.agency/trustpilot-reviews-scraper').call({
operation: 'companyReviews',
companyDomain: 'www.bestbuy.com',
maxPages: 5
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0]);

Python

from apify_client import ApifyClient
client = ApifyClient('YOUR_TOKEN')
run = client.actor('sian.agency/trustpilot-reviews-scraper').call(
run_input={'operation': 'categoryNewest', 'categoryId': 'software_company'}
)
for item in client.dataset(run['defaultDatasetId']).iterate_items():
print(item)

cURL

curl -X POST 'https://api.apify.com/v2/acts/sian.agency~trustpilot-reviews-scraper/runs?token=YOUR_TOKEN' \
-H 'Content-Type: application/json' \
-d '{"operation": "companySearch", "query": "nike"}'

Automation Workflows (N8N / Zapier / Make)

  1. Trigger: Schedule (e.g. daily review pull) or webhook
  2. HTTP Request: Call the actor API with your operation
  3. Process: Handle the JSON dataset rows
  4. Action: Save to a sheet, alert on a 1-star spike, or update a dashboard

📊 Performance & Pricing

FREE Tier (Try It Now)

  • Test every operation with full feature access — same data quality
  • No credit card required
  • Perfect for evaluating fit and small projects
  • Scale to thousands of reviews and companies per run
  • Pay-per-result: only charged for successful rows
  • Smart auto-retry on transient upstream hiccups, so you don't pay for failed pages

💰 Competitive per-review pricing with a richer field set than typical review-only scrapers.

🔗 View current pricing


❓ Frequently Asked Questions

Q: How many reviews can I scrape? A: FREE tier lets you test every operation. PAID tier scales to thousands of rows per run via pagination (up to 100 pages).

Q: Does it scrape consumer (reviewer) review history? A: Yes — consumerReviews returns every review a specific reviewer posted across all companies, plus their profile via consumerDetails. Most Trustpilot scrapers can't do this.

Q: Can I get the best or newest companies in a category? A: Yes — categoryCompanyList, categoryNewest, and categoryRecentlyReviewed cover category rankings. This is exclusive to this actor.

Q: What output formats are available? A: JSON, CSV, and Excel — export directly from the Apify dataset.

Q: Which countries/locales are supported? A: 23 locales including en-US, en-GB, de-DE, fr-FR, es-ES, it-IT, nl-NL, sv-SE, pt-BR, ja-JP, and more.

Q: Is this legal? A: It only extracts publicly available data. See the legal section below.

Q: How do I find a company domain or category ID? A: Use companySearch to get a domain, and categorySearch to get a categoryId. Any review row gives you a consumerId.

Q: Can I filter reviews by rating, date, or keyword? A: Yes — Company Reviews supports reviewRating (1–5), datePosted (last 30 days through last 12 months), reviewQuery (keyword in the review text), verified-only, and replies-only filters, plus sort by relevance or recency.

Q: How does pagination work? A: Set maxPages (up to 100). The actor fetches one page per upstream call and stops automatically when it reaches the last page — it derives the last page from the total count, so you never over-fetch.

Q: What happens if a page fails? A: The actor auto-retries transient upstream hiccups with backoff. If a page still fails, it writes a status: "error" row instead of crashing, so your run always completes and you can see exactly which page failed.


🐛 Troubleshooting

An operation returns 0 rows

  • The "Newest Companies in Category" feed is sparse on Trustpilot and is often empty — use Recently Reviewed in Category or Companies by Category for reliable category lead lists.
  • Confirm the categoryId / companyDomain is exactly as returned by the search operations.

"Missing required input" error

  • Each operation needs its specific field (e.g. companyReviews needs companyDomain). Check the operations table above.

A page failed but others succeeded

  • The actor auto-retries transient upstream hiccups. Occasional single-page failures are written as status: "error" rows; just re-run or increase maxPages.

⚠️ Trademark Disclaimer

This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by Trustpilot A/S. "Trustpilot" and related marks are trademarks of their respective owners and are used here only to describe the public data this tool helps you collect. Use this actor responsibly and in compliance with applicable laws, Trustpilot's terms of service, and data-protection regulations (including GDPR and CCPA where applicable). You are responsible for how you use the data you extract.

Our actors are ethical and only extract data that companies and reviewers have chosen to share publicly on Trustpilot. We therefore believe that this actor, when used for ethical purposes by Apify users, is safe.

However, your results could contain personal data (e.g. reviewer names and countries). 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

Telegram Support

Join our active support community


Built by SIÁN Agency | More Tools