G2, Capterra, TrustRadius & Gartner Reviews Scraper
Pricing
from $3.99 / 1,000 reviews
G2, Capterra, TrustRadius & Gartner Reviews Scraper
Scrape reviews from G2, Capterra, TrustRadius, and Gartner in one run. Just type a product name or domain. Get unified ratings, pros/cons, reviewer details, dates, and platform-specific sub-ratings. Filter by star rating. Export as JSON, CSV, or Excel. Up to 40,000 reviews.
Pricing
from $3.99 / 1,000 reviews
Rating
0.0
(0)
Developer

Zen Studio
Actor stats
1
Bookmarked
4
Total users
3
Monthly active users
3 days ago
Last modified
Categories
Share
Scrape Software Reviews from G2, Capterra, TrustRadius & Gartner
Collect software reviews from G2, Capterra, TrustRadius, and Gartner in a single run.
Type a product name like Slack, a domain like asana.com, or paste a review page URL. The actor automatically finds your product on each platform, collects reviews in parallel, and normalizes everything into one unified dataset.
No need to run four separate scrapers or manually merge data.

| Review Scrapers ➤ | G2 Reviews | Capterra Reviews | TrustRadius Reviews | Gartner Reviews |
|---|
How It Works
- Enter a product name (e.g.,
Slack,Notion,Jira), a company domain (e.g.,asana.com), or paste a review page URL - The actor searches G2, Capterra, TrustRadius, and Gartner to find the product
- Reviews are collected in parallel from all platforms
- Output is normalized into a single, consistent format
You can filter by star rating, sort by recency or helpfulness, and control how many reviews to collect. The actor distributes your requested count proportionally across platforms based on review availability.
Key Features
Automatic Product Discovery
- Type a product name, the actor finds it on all four platforms
- Paste a URL from any platform, the rest are resolved automatically
- Handles regional Capterra domains (
.de,.fr,.co.uk) with normalization to.com
Unified Output Schema
- Consistent field names across G2, Capterra, TrustRadius, and Gartner
- Ratings normalized to a common scale with original values preserved
- Reviewer details (name, job title, company size, industry) in the same structure
- Platform-specific data (sub-ratings, feature scores, alternatives) kept in
platformData
Cross-Platform Filtering
- Sort by most recent, highest rated, lowest rated, or most helpful
- Filter by star rating (1-5)
- Each filter is mapped to the equivalent option on each platform
Extracted Data Fields
Each review includes:
- Review content -- title, full text, pros, cons
- Rating -- normalized rating + original platform rating + scale
- Reviewer -- name, job title, company, company size, industry, verified status
- Metadata -- date, review URL, review ID, platform source, incentivized flag
- Platform extras -- sub-ratings, feature scores, alternatives considered, vendor responses (varies by platform)
Output Example
Platform-Specific Extras
- Capterra: ease of use, customer support, functionality, and value for money sub-ratings
- TrustRadius: feature ratings, alternatives considered, ROI data
- Gartner: anonymous reviews with market name and vendor name
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
query | String | Yes | -- | Product name, company domain, or review page URL |
platforms | Array | No | All four | Which platforms to collect from |
maxResults | Integer | No | 100 | Total reviews to collect (distributed across platforms) |
sort | String | No | most_recent | Sort order: most_recent, highest_rated, lowest_rated, most_helpful |
starRatings | Array | No | All | Filter by star rating (1-5) |
Accepted Input Formats
You can also enter a company domain or paste a review page URL:
- Domain:
asana.com,monday.com,www.notion.com - G2:
https://www.g2.com/products/slack/reviews - Capterra:
https://www.capterra.com/p/135003/Slack/reviews/ - TrustRadius:
https://www.trustradius.com/products/slack/reviews - Gartner:
https://www.gartner.com/reviews/market/.../product/.../reviews
Domains are resolved to a product name automatically. URLs are used directly for that platform, with the rest auto-discovered.
Quick Start
Minimal -- Just a Product Name
{"query": "Notion"}
From a Domain
{"query": "asana.com"}
With Filters
{"query": "Slack","maxResults": 500,"sort": "highest_rated","starRatings": ["4", "5"]}
Specific Platforms Only
{"query": "Jira","platforms": ["g2", "capterra"],"maxResults": 200}
From a URL
{"query": "https://www.g2.com/products/hubspot-crm/reviews","maxResults": 1000}
Pricing
Pay per result. Only charged for successfully scraped reviews.
| Apify Plan | Price per 1,000 reviews |
|---|---|
| Free | $4.99 |
| Starter (Bronze) | $4.49 |
| Scale (Silver) | $4.29 |
| Business (Gold) | $3.99 |
Cost Examples (Free Plan)
| Reviews | Cost |
|---|---|
| 100 | $0.50 |
| 500 | $2.50 |
| 1,000 | $4.99 |
Free tier: 5 lifetime runs with up to 100 reviews each, no credit card required.
API Integration
Python
from apify_client import ApifyClientclient = ApifyClient("your_api_token")run = client.actor("zen-studio/software-review-scraper").call(run_input={"query": "Slack","maxResults": 200,"sort": "most_recent",})for review in client.dataset(run["defaultDatasetId"]).iterate_items():print(f"[{review['platform']}] {review['rating']}/5 - {review['title']}")
JavaScript
import { ApifyClient } from "apify-client";const client = new ApifyClient({ token: "your_api_token" });const run = await client.actor("zen-studio/software-review-scraper").call({query: "Slack",maxResults: 200,sort: "most_recent",});const { items } = await client.dataset(run.defaultDatasetId).listItems();items.forEach((review) => {console.log(`[${review.platform}] ${review.rating}/5 - ${review.title}`);});
Data Export
Export results in any format from the Apify Console:
- JSON -- Full structured data with nested objects
- CSV -- Flat format for spreadsheets (nested fields are flattened)
- Excel -- Direct download for analysis
- XML -- For system integrations
FAQ
How does the actor find products across platforms? Enter a product name and the actor searches each platform's product directory. It uses multiple signals to match the correct product, even when names differ slightly across platforms.
What happens if a product isn't found on one platform? The actor collects reviews from whichever platforms have the product. If only 2 of 4 platforms have it, you get reviews from those 2.
How are reviews distributed across platforms? Proportionally based on each platform's total review count. A platform with 10,000 reviews gets a larger share than one with 500.
Can I scrape reviews for any software product? Yes, any product listed on G2, Capterra, TrustRadius, or Gartner.
How fresh is the data? Reviews are collected in real time. You get the latest reviews available on each platform at the time of the run.
Is there a limit on reviews?
Up to 40,000 reviews per run. For very large datasets, use the sort parameter to prioritize which reviews you get first.
What does the platformData field contain?
Platform-specific data that doesn't fit the unified schema. This varies by platform: Capterra has sub-ratings (ease of use, support, etc.), TrustRadius has feature ratings and ROI data, Gartner has market and vendor names.
Legal Compliance
This actor collects publicly available review data. Users are responsible for complying with each platform's terms of service and applicable data protection regulations (GDPR, CCPA).