G2 Software Reviews Scraper — Ratings, Pros & Cons
Pricing
$11.99/month + usage
G2 Software Reviews Scraper — Ratings, Pros & Cons
Extract authentic user reviews from G2.com at scale – including star ratings, pros & cons, reviewer details, and more. Perfect for competitive analysis, sentiment tracking, and market research
Pricing
$11.99/month + usage
Rating
0.0
(0)
Developer

Scrape Pilot
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
G2 Software Reviews Scraper — Ratings, Pros & Cons
A robust Apify actor designed to extract authentic user reviews from G2.com, the leading software review platform. Scrape detailed review data including star ratings, pros, cons, reviewer information, and more — perfect for competitive analysis, sentiment tracking, and market research.
🚀 Features
- Multi‑Product Scraping – Provide a list of software product names (e.g., "Salesforce", "HubSpot") and get reviews for each.
- Comprehensive Review Data – Captures:
- Review title & content
- Star rating (overall and sub‑ratings if available)
- Pros and cons (the famous “What do you like best?” / “What do you dislike?” sections)
- Reviewer role, company size, industry
- Review date and helpful votes
- Pagination Control – Set the maximum number of reviews to scrape per product.
- Reliable Proxy Rotation – Built‑in Apify proxy with residential groups to avoid blocking and CAPTCHAs.
- Clean JSON Output – Structured data ready for analysis, dashboards, or feeding into other tools.
📥 Input Schema
The actor accepts the following input via a JSON object:
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
proxyConfiguration | object | Yes | Apify residential | Proxy settings – we strongly recommend using Apify proxy with RESIDENTIAL groups. |
products | string | Yes | – | A newline‑separated list of software product names as they appear on G2 (e.g., "Salesforce\nHubSpot"). |
max_reviews | integer | No | 10 | Maximum number of reviews to scrape per product. If a product has fewer reviews, all are returned. |
Example Input
{"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]},"products": "notion\nhubspot\nsalesforce","max_reviews": 20}
📤 Output Format
The actor returns an array of objects. Each object represents a single review with the following fields:
| Field | Type | Description |
|---|---|---|
product | string | The name of the product this review belongs to (as provided in input). |
reviewTitle | string | Title of the review. |
reviewContent | string | The main body of the review. |
ratingOverall | number | Overall star rating (typically out of 5). |
ratingEaseOfUse | number | (Optional) Ease of use rating. |
ratingCustomerService | number | (Optional) Customer service rating. |
ratingFeatures | number | (Optional) Features rating. |
ratingValueForMoney | number | (Optional) Value for money rating. |
pros | string | Text from the "What do you like best?" section. |
cons | string | Text from the "What do you dislike?" section. |
reviewerName | string | Name of the reviewer. |
reviewerRole | string | Job title / role of the reviewer. |
reviewerCompanySize | string | Company size category (e.g., "Small‑Business", "Enterprise"). |
reviewerIndustry | string | Industry of the reviewer’s company. |
datePublished | string | Date when the review was published (ISO format). |
helpfulCount | integer | Number of users who found the review helpful. |
url | string | Direct URL to the review on G2.com. |
Note: Not all fields are guaranteed for every review. Some products or review pages may lack certain sub‑ratings or reviewer details.
Example Output
[{"product": "notion","reviewTitle": "The ultimate productivity tool","reviewContent": "Notion has transformed how our team collaborates...","ratingOverall": 4.5,"ratingEaseOfUse": 4.0,"ratingCustomerService": null,"ratingFeatures": 5.0,"ratingValueForMoney": 4.5,"pros": "Incredibly flexible; endless templates; great for documentation.","cons": "Mobile app can be slow; some features have a learning curve.","reviewerName": "Alex Johnson","reviewerRole": "Product Manager","reviewerCompanySize": "Mid-Market","reviewerIndustry": "Technology","datePublished": "2025-11-15","helpfulCount": 23,"url": "https://www.g2.com/products/notion/reviews/notion-review-1234567"},{"product": "hubspot","reviewTitle": "Great all‑in‑one marketing platform","reviewContent": "HubSpot's CRM is intuitive and the marketing hub is powerful...","ratingOverall": 4.0,"ratingEaseOfUse": 4.5,"ratingCustomerService": 3.5,"ratingFeatures": 4.0,"ratingValueForMoney": 3.5,"pros": "Easy to use; great automation; excellent reporting.","cons": "Can get expensive as you scale; some advanced features require add‑ons.","reviewerName": "Maria Garcia","reviewerRole": "Marketing Director","reviewerCompanySize": "Small-Business","reviewerIndustry": "Marketing & Advertising","datePublished": "2026-01-20","helpfulCount": 47,"url": "https://www.g2.com/products/hubspot/reviews/hubspot-review-7654321"}]
🛠 Usage on Apify
- Create a new task with this actor.
- Provide input as shown above.
- Run the actor – it will automatically use Apify proxy to avoid IP blocks.
- Download results as JSON, CSV, or XML from the storage.
Running via API
Trigger runs programmatically using the Apify API. Example with cURL:
curl -X POST "https://api.apify.com/v2/acts/your-username~g2-reviews-scraper/runs" \-H "Content-Type: application/json" \-H "Authorization: Bearer YOUR_API_TOKEN" \-d '{"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]},"products": "notion\nhubspot\nsalesforce","max_reviews": 20}'
⚠️ Notes & Limitations
- Rate limiting – G2 may impose rate limits or CAPTCHAs under heavy scraping. We recommend using residential proxies and reasonable
max_reviewsvalues. - Data availability – Not all reviews contain every field (e.g., sub‑ratings). The actor will set missing fields to
null. - Legal compliance – Ensure your use of scraped data complies with G2’s Terms of Service and applicable laws. This actor is intended for educational and research purposes.
- Product name matching – The actor attempts to find the product page by constructing a G2 URL (e.g.,
g2.com/products/{product-name-slug}). For best results, use the exact product name as it appears in G2’s URL.