# Trustpilot Reviews Scraper (`parseforge/trustpilot-reviews-scraper`) Actor

Scrape Trustpilot reviews from any merchant page. Returns each review with star rating, body text, date, reviewer name, country, and company reply. No API key needed.

- **URL**: https://apify.com/parseforge/trustpilot-reviews-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** E-commerce, Automation, Developer tools
- **Features:** Limited permissions
- **Stats:** 6 total users, 1 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $11.99 / 1,000 result items

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

[![ParseForge](https://raw.githubusercontent.com/ParseForge/apify-assets/main/banner-v4.webp)](https://apify.com/parseforge?fpr=vmoqkp)

### Trustpilot Reviews Scraper

**Scrape Trustpilot reviews from any merchant page, up to a million per run.** Every review comes with star rating, body text, date, reviewer country, and company reply. No login or API key. Export to CSV, JSON, Excel, or XML.

Trustpilot's web interface only shows the most recent ~200 reviews, and their API requires a business partnership and rate limits. This Actor reads the public review feed directly, bypassing those caps, and returns every review in one flat schema. Filter by star rating or date range as you go.

| Who uses it | What they scrape Trustpilot for |
|---|---|
| Market researchers | Analyze customer sentiment trends for a brand or industry over time. |
| Competitive intelligence analysts | Monitor competitor reviews to spot product weaknesses and strengths. |
| Brand managers | Track own-brand reviews daily for reputation management and response. |
| Data scientists | Build training datasets for NLP models on review text and ratings. |
| SEO specialists | Extract review keywords and phrases to inform content strategy. |

### What it does

This Actor collects Trustpilot reviews from any merchant review page and returns each review as a flat row with rating, text, date, reviewer info, and company reply.

- 📊 **Incremental mode:** Pull only reviews newer than a given date, so daily syncs stay cheap and avoid duplicates.
- 🔍 **Filter by star rating:** Scrape only 1-star, 5-star, or any combination in between.
- 📅 **Filter by date range:** Set a start and end date to focus on a specific period.
- 💬 **Company replies included:** Each review row includes the company's public reply text and date when available.

Results export to CSV, JSON, Excel, or XML, or straight from the API.

### What you can do with Trustpilot data

**📈 Track brand sentiment over time.**

A brand manager runs the Actor weekly on their own Trustpilot page, filters by date, and exports to a dashboard to monitor rating trends and respond to negative reviews.

**🔍 Analyze competitor reviews.**

A competitive analyst scrapes reviews for three rival brands, compares star distributions and common complaints, and presents findings to the product team.

**📊 Build a review dataset for NLP.**

A data scientist scrapes 50,000 reviews across multiple merchants, filters by 1-star and 5-star, and trains a sentiment classifier on the text.

**📝 Find keywords for SEO.**

An SEO specialist extracts review body text from a merchant page, runs a word frequency analysis, and uses the top phrases to optimize product pages.

**🛡️ Monitor for fake reviews.**

A compliance officer scrapes all reviews for a merchant, flags sudden spikes in 5-star ratings from new accounts, and investigates potential fraud.

### Why choose this scraper

|  | What you get |
|---|---|
| **No API key needed** | Scrape public Trustpilot data without registering for an API or paying per-call fees. |
| **Past the 200-review cap** | Trustpilot's web UI hides older reviews; this Actor reads them all, up to 1 million per run. |
| **Incremental updates** | Set a cutoff date to fetch only new reviews since your last run, saving time and credits. |
| **40+ data fields** | Each review includes rating, title, body, date, reviewer name, country, and company reply. |
| **Export anywhere** | Download as CSV, JSON, Excel, or XML, or push to a database via webhook. |

### How it compares

This Actor competes directly with other Trustpilot scrapers on Apify, offering a simpler input and a flat schema.

| Feature | ParseForge | Trustpilot All Reviews Scraper 💰$0.5+ · No Cap · Incremental |
|---|---|---|
| No API key required | Yes | Not listed |
| Incremental mode (date filter) | Yes | Yes |
| Filter by star rating | Yes | Yes |
| Filter by date range | Yes | Not listed |
| Company replies included | Yes | Not listed |
| Reviewer country field | Yes | Not listed |
| Max 1,000,000 reviews per run | Yes | Not listed |

### Configure the run

Drive the Actor from a single Trustpilot merchant URL. Filters for star rating and date range run as each review is read, so only matching reviews reach your dataset. The Input tab lists every parameter.

A first run with the defaults:

```json
{
  "startUrl": "https://www.trustpilot.com/review/www.amazon.com",
  "maxItems": 10
}
```

A larger pull:

```json
{
  "startUrl": "https://www.trustpilot.com/review/www.amazon.com",
  "maxItems": 200
}
```

### Pricing

Pay-per-result: **$0.01599 per result** collected. You pay only for the results written to your dataset.

| Results collected | Approximate cost |
|---|---|
| 100 results | $1.60 |
| 1,000 results | $15.99 |
| 10,000 results | $159.90 |

New Apify accounts start with $5 in free credit.

### Free users

Free-plan runs return up to 10 results as a preview. [Upgrade your Apify plan](https://console.apify.com/sign-up?fpr=vmoqkp) to collect up to 1,000,000 results per run.

### Run it

1. [Create a free Apify account with $5 in credit](https://console.apify.com/sign-up?fpr=vmoqkp).
2. Open the [Trustpilot Reviews Scraper](https://apify.com/parseforge/trustpilot-reviews-scraper?fpr=vmoqkp).
3. Set your inputs and any filters, then click **Start**.
4. Export the results as CSV, Excel, JSON, or XML from the **Dataset** tab.

Run it programmatically through the [Apify API](https://docs.apify.com/api/v2) (`run-sync-get-dataset-items`) or the [ApifyClient](https://docs.apify.com/api/client/js) for JavaScript and Python.

### Use with AI agents (MCP)

Give an AI agent live access to Trustpilot through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

```bash
claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/trustpilot-reviews-scraper"
```

Then prompt it in plain language to run the scraper and read back the results.

### Troubleshooting

**Why am I getting no results?**

Check that the URL is a valid Trustpilot review page (e.g., https://www.trustpilot.com/review/www.amazon.com). If the merchant has no reviews, the dataset will be empty.

**The Actor only returned 10 reviews.**

Free accounts are limited to a 10-review preview. Upgrade to a paid plan to scrape up to 1,000,000 reviews.

**The URL is rejected as invalid.**

Ensure the URL starts with https:// and includes 'trustpilot.com/review/'. Subdomains like 'uk.trustpilot.com' are also supported.

**Reviews are missing the company reply.**

Not all reviews have a company reply. If the merchant never replies, that field will be empty for all rows.

**The run is taking too long.**

Large datasets (100k+ reviews) take time. Reduce the maxItems limit or use incremental mode to fetch only new reviews.

**I see duplicate reviews across runs.**

Use incremental mode with a cutoff date set to your last run date to fetch only new reviews and avoid duplicates.

### FAQ

| Question | Answer |
|---|---|
| Do I need a Trustpilot API key? | No. This Actor reads the public review pages directly, so no API registration or key is required. |
| How many reviews can I scrape? | Free users get a preview of up to 10 reviews. Paid users can scrape up to 1,000,000 reviews per run. |
| Can I scrape reviews older than the 200 shown on the web? | Yes. The Actor bypasses the web cap and can retrieve all reviews for a merchant, going back years. |
| Does it include company replies? | Yes. Each review row includes the company's public reply text and date, if one exists. |
| Can I filter by star rating? | Yes. You can choose to scrape only 1-star, 2-star, etc., or any combination. |
| Can I filter by date range? | Yes. Set a start and end date to scrape only reviews from a specific period. |
| What is incremental mode? | Incremental mode lets you set a cutoff date so the Actor only fetches reviews newer than that date, ideal for daily syncs. |
| What formats can I export to? | You can download the dataset as CSV, JSON, Excel, or XML, or push it via webhook to your own system. |
| Does it work for any Trustpilot merchant page? | Yes, as long as the URL follows the pattern https://www.trustpilot.com/review/domain.com. |
| Is it legal to scrape Trustpilot reviews? | Scraping public data for personal or analytical use is generally allowed, but check Trustpilot's terms of service and your local laws. |
| What if the merchant has no reviews? | The Actor will return an empty dataset. Double-check the URL is correct and the merchant page exists. |
| Can I scrape multiple merchants in one run? | This Actor takes one URL per run. To scrape multiple merchants, run the Actor separately for each URL. |

### Related actors

Browse the full [ParseForge collection](https://apify.com/parseforge?fpr=vmoqkp) for more scrapers.

🆘 **Need help?** Email parseforge@protonmail.com with your run ID, your input, and what you expected.

⚠️ **Disclaimer.** This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Trustpilot A/S. It collects only publicly available data. You are responsible for using the collected data in compliance with the source's terms of service and applicable data-protection laws, including GDPR, CCPA, and PIPL. Do not use it to collect personal data unlawfully.

# Actor input Schema

## `startUrl` (type: `string`):

URL of a Trustpilot merchant review page (e.g. https://www.trustpilot.com/review/www.amazon.com).

## `maxItems` (type: `integer`):

Free users: Limited to 10 reviews (preview). Paid users: Optional, max 1,000,000

## Actor input object example

```json
{
  "startUrl": "https://www.trustpilot.com/review/www.amazon.com",
  "maxItems": 10
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrl": "https://www.trustpilot.com/review/www.amazon.com",
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/trustpilot-reviews-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "startUrl": "https://www.trustpilot.com/review/www.amazon.com",
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/trustpilot-reviews-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "startUrl": "https://www.trustpilot.com/review/www.amazon.com",
  "maxItems": 10
}' |
apify call parseforge/trustpilot-reviews-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,parseforge/trustpilot-reviews-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/bbqa7eCnqNfpr8pdo/builds/VTLlCzd3iiqwLeB8w/openapi.json
