G2 Scraper - Reviews, Products, Analytics & Discussions
Pricing
from $0.04 / 1,000 reviews
G2 Scraper - Reviews, Products, Analytics & Discussions
๐ฅ ~$0.05/1K reviews ๐ฅ Scrape G2.com software reviews, products, analytics, comparisons, and discussions. Faceted filtering, facet-value discovery, 72 review fields, NLP sentiment, switching intelligence.
Pricing
from $0.04 / 1,000 reviews
Rating
0.0
(0)
Developer
Kai
Maintained by CommunityActor stats
0
Bookmarked
4
Total users
1
Monthly active users
17 days ago
Last modified
Categories
Share
G2 Scraper
Scrape G2.com software reviews, products, analytics, comparisons, and discussions. Rich faceted filtering (primary region, review source, response type, sentiment themes, discount), facet-value discovery, 72 review fields, NLP sentiment themes, and switching intelligence. No proxy needed.
Why use this scraper?
- Scrape a product's full review history (
maxReviewsPerProduct: 0for no limit), no anti-bot bypass needed. - Structured pros/cons/benefits parsed from each review.
- Per-dimension ratings: ease of use, setup, support, security, and more.
- NLP-extracted sentiment themes (what users love/hate).
- Competitive switching intelligence (what products users switched from and why).
- Faceted filtering: narrow reviews by primary region, review source, response type, loved/hated/switching themes, and discount.
- Facet-value discovery: list the valid values for any text facet before filtering.
- Analytics mode with aggregations, percentiles, and significant terms.
- Side-by-side product comparisons in a single request.
- Q&A discussion threads per product.
Use cases
- Compare competitors by sentiment, ratings, and switching patterns.
- Feed structured review data into NLP / AI pipelines.
- Track review trends over time for market research.
- Segment reviews by region, company size, review source, or sentiment theme.
- Find products by category, vendor, or keyword search.
- Search across all reviews for specific topics.
How to use
Scrape reviews for a product
{"products": ["https://www.g2.com/products/slack/reviews"]}
Search for products and scrape their reviews
{"search": "project management","maxProducts": 5,"maxReviewsPerProduct": 50}
Browse a category
{"category": "CRM","maxProducts": 10,"maxReviewsPerProduct": 20}
Browse by vendor
{"vendor": "Salesforce","maxProducts": 5,"maxReviewsPerProduct": 10}
Compare products side-by-side
{"compare": ["slack", "clickup", "jira"]}
Get analytics (no individual reviews)
{"products": ["slack"],"analytics": true}
Global review search across all products
{"reviewSearch": "terrible customer support","maxReviews": 50}
Find similar reviews
{"similarTo": "The API was difficult to integrate and documentation was poor","maxReviews": 20}
Filter by date, rating, and company size
{"products": ["slack"],"dateFrom": "2025-01-01","ratings": ["1", "2"],"companySegment": ["enterprise"],"maxReviewsPerProduct": 100}
Filter by facets (region, source, themes)
{"products": ["slack"],"primaryRegions": ["Americas"],"sourceTypes": ["organic"],"responseTypes": ["video"],"maxReviewsPerProduct": 50}
Discover valid facet values
Returns the distinct values for each facet to the metadata dataset, so you know what to pass to the facet filters above. No reviews are scraped in this mode.
{"enumFields": ["source_type", "response_type"]}
Search within reviews with highlights
{"products": ["slack"],"reviewSearch": "customer support","includeHighlights": true,"maxReviewsPerProduct": 20}
Include Q&A discussions
{"products": ["slack"],"maxReviewsPerProduct": 10,"includeDiscussions": true}
Input
| Parameter | Type | Default | Description |
|---|---|---|---|
products | string[] | Product URLs, slugs, or category URLs | |
search | string | Find products by keyword | |
category | string | Browse products by G2 category | |
vendor | string | Browse products by vendor name | |
compare | string[] | Compare products side-by-side (analytics) | |
maxProducts | number | 10 | Max products in search/category/vendor mode |
sortBy | select | DATE_DESC | DATE_DESC, DATE_ASC, RATING_DESC, RATING_ASC, HELPFUL_DESC, G2_DEFAULT |
ratings | string[] | ["1","2","3","4","5"] | Filter by star rating; values "1"โ"5" |
maxReviewsPerProduct | number | 20 | Max reviews per product (0 = unlimited) |
companySegment | string[] | small_business, mid_market, enterprise | |
dateFrom | string | ISO date, reviews from this date | |
dateTo | string | ISO date, reviews until this date | |
primaryRegions | select[] | Americas, Asia Pacific, EMEA | |
sourceTypes | string[] | Filter by how the review was collected; use enumFields to list valid values | |
responseTypes | string[] | Filter by review medium (e.g. text, video) | |
loveThemes | string[] | Filter by themes reviewers praised | |
hateThemes | string[] | Filter by themes reviewers criticized | |
switchingThemes | string[] | Filter by reasons reviewers switched products | |
discounts | string[] | Filter by reported discount | |
reviewSources | string[] | Filter by review source channel | |
reviewSearch | string | Search within review text. Alone = global search | |
similarTo | string | Find reviews similar to this text | |
reviewIds | string[] | Fetch specific reviews by ID | |
maxReviews | number | 100 | Max reviews for global/similar search |
enumFields | select[] | Discover distinct values for facets; writes to the metadata dataset instead of scraping reviews | |
analytics | boolean | false | Return aggregation analytics instead of reviews |
collapseByProduct | boolean | false | One review per product in global search |
includeNonPublic | boolean | false | Include non-public/rejected reviews |
includeDiscussions | boolean | false | Fetch Q&A discussion threads per product |
includeHighlights | boolean | true | Highlight matching text in search results |
At least one input mode is required (products, search, category, vendor, reviewSearch, similarTo, reviewIds, compare, enumFields, or analytics). Filters apply to all matched reviews.
Output
Datasets
| Dataset | When | Content |
|---|---|---|
reviews (default) | Most modes | Individual review records |
products | Product-based modes | Product profiles |
analytics | analytics or compare mode | Aggregation statistics |
discussions | includeDiscussions: true | Q&A threads |
metadata | enumFields mode | Distinct facet values |
Review fields
{"id": "13038740","productId": 3437,"productName": "Slack","reviewUrl": "https://www.g2.com/products/slack/reviews/13038740","title": "One-Click Integrations That Just Work for slack","pros": "Integration with other apps has to be 1 click","cons": "UI when you send the messages. The typing window should be adjustable","benefits": "connect and chatting with the team One-Click Integrations That Just Work for slack","rawText": "Integration with other apps has to be 1 click\nUI when you send the messages. The typing window should be adjustable\nconnect and chatting with the team One-Click Integrations That Just Work for slack","responseType": "text","nps": 8,"npsScore": 4,"easeOfUse": 5,"easeOfSetup": 5,"easeOfAdmin": 5,"easeOfDoingBusinessWith": 4,"meetsRequirements": 5,"qualityOfSupport": 3,"securityConfidence": 3,"securityImportance": 7,"direction": null,"userName": "Sameer G.","country": "India","region": "Asia","primaryRegion": "Asia Pacific","companySegment": 180,"companySegmentLabel": "Mid-Market (51-1000 emp.)","industry": 313,"industryLabel": "Information Technology and Services","role": 6,"roleLabel": "Consultant","loveTheme": null,"loveThemeHumanized": null,"loveThemeParentHumanized": null,"hateTheme": null,"hateThemeHumanized": null,"hateThemeParentHumanized": null,"switchedFromOtherProduct": "unknown","switchedFromProductIds": null,"switchedReason": null,"switchingThemes": null,"switchingThemesNested": null,"submittedAt": "2026-06-26T17:10:48.781-05:00","publishedAt": "2026-06-26T19:30:00.900-05:00","reviewSource": "user_profile","sourceType": "user_profile","helpful": 0,"englishAvailable": true,"contractLength": null,"discount": null,"price": 5,"status": "approved","isPublic": true,"published": true,"productPaidProfile": false,"productIds": [3437],"categoryIds": [2174, 2360, 2363],"defaultSort": 8.525176115868225,"templateKeyword": "react","videoReviewSubmittedAt": null,"editionIds": [],"expertiseIds": [],"serviceLocation": null,"contractLengthWeight": null,"discountWeight": null,"everApproved": true,"isInLimbo": false,"read": false,"reportable": true,"userUpdatedAt": "2026-06-26T17:10:48.965-05:00","highlightedSnippets": null,"scrapedAt": "2026-06-28T06:00:34.982Z"}
Analytics output
Aggregated over all of a product's reviews. nps/easeOfUse/etc. each carry avg, stdDev, min, max, and count; the full record also includes easeOfSetup, easeOfAdmin, qualityOfSupport, meetsRequirements, easeOfDoingBusinessWith, securityConfidence, securityImportance, direction, topHateThemes, uniquelyHated, and bySourceType. The theme, demographic, and reviewsOverTime arrays are trimmed below for brevity.
{"productId": 3437,"productName": "Slack","productSlug": "slack","totalReviews": 20201,"totalHelpfulVotes": 69,"nps": { "avg": 9.211870699470323, "stdDev": 1.1668658162744323, "min": 0, "max": 10, "count": 20201 },"easeOfUse": { "avg": 6.549680122289532, "stdDev": 0.7953808393082141, "min": 1, "max": 7, "count": 17663 },"ratingDistribution": { "1": 40, "2": 93, "3": 468, "4": 3646, "5": 15954 },"npsPercentiles": { "p10": 8, "p25": 9, "p50": 10, "p75": 10, "p90": 10 },"uniqueCountries": 140,"uniqueIndustries": 145,"topLoveThemes": [{ "theme": "Chat", "count": 3436, "sampleReviews": [{ "title": "Slack Review", "userName": "Hunter C.", "npsScore": 4 }] },{ "theme": "Collaboration", "count": 2254, "sampleReviews": [{ "title": "\"Ping\" From Your Creative Side", "userName": "Daniel G.", "npsScore": 5 }] }],"uniquelyLoved": [{ "theme": "Chat", "score": 3.472215696777018, "count": 3436 },{ "theme": "Collaboration", "score": 1.2096931571663356, "count": 2254 }],"switchingReasons": [{ "reason": "Ease of use", "count": 126 },{ "reason": "Communication Features", "count": 108 }],"bySegment": [{ "code": 179, "label": "Small Business (50 or fewer emp.)", "count": 8191 },{ "code": 180, "label": "Mid-Market (51-1000 emp.)", "count": 8141 },{ "code": 181, "label": "Enterprise (>1000 emp.)", "count": 3516 }],"byRegion": [{ "region": "Americas", "count": 12760 },{ "region": "Asia Pacific", "count": 4821 },{ "region": "EMEA", "count": 2526 }],"reviewsOverTime": [{ "month": "2014-02", "count": 1 },{ "month": "2026-06", "count": 73 }]}
Facet values output (metadata dataset)
{"field": "source_type","type": "enum_values","values": ["ai_assisted_review", "api_collect", "g2_incentivized", "g2_nonincentivized","g2gives", "influitive", "organic", "pop_up", "referral", "review_referral","review_widget", "stale_reviews_callout", "thank_you_page", "un_survey","unincentivized", "user_profile", "vendor", "vendor_nonincentivized","vendor_self", "vendor_self_nonincentivized", "vendor_self_sendoso"],"count": 21}
Limitations
- Reviewer job titles and avatar URLs are not available.
industryandroleare returned as numeric category codes with a human-readable label for common values only; they are not available as filters.countryandregionare not available as filters because their values are not normalized across languages. UseprimaryRegion(Americas/Asia Pacific/EMEA) for consistent geography filtering.similarToreturns at most 1,000 reviews per run (a single relevance-ranked fetch; it does not paginate).- A product's
reviewCountreflects G2's total across all reviews; review scraping and analytics return only public, approved reviews, so their counts are typically lower. - Some reviews have unstructured text (no clear pros/cons/benefits separation).