G2 Reviews Scraper — Software Reviews & Ratings
Pricing
from $1.50 / 1,000 reviews
G2 Reviews Scraper — Software Reviews & Ratings
Scrape G2 software reviews and product profiles: star ratings, likes and dislikes, problems solved, reviewer role, company size and industry, plus product ratings, categories, pricing, alternatives.
Pricing
from $1.50 / 1,000 reviews
Rating
0.0
(0)
Developer
Trevor Ortega
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
2
Monthly active users
10 days ago
Last modified
Categories
Share
G2 Reviews Scraper
Scrape G2 software reviews and product profiles: star rating, review title, what the reviewer likes and dislikes, the problems the product solves, reviewer job title, company size and industry, review dates, validation and incentive badges, plus product ratings, star distribution, categories, pricing plans, alternatives and category rankings. Works for any G2 product, category or search URL.
G2 blocks ordinary scrapers at the edge, so this Actor reads the site through Apify's Unblocker proxy with plain HTTP requests: no headless browser, no login, no cookies to maintain. Every response is checked before it is counted (a page without the review list or an anti-bot page is fetched again), and a request is only made when its results still fit your limits. You pay per item, with no start fee.
What data does G2 Reviews Scraper extract?
Review items (mode: reviews, default):
| Field | Description |
|---|---|
productSlug, productName, productUrl, productId | Product the review belongs to (slack, "Slack", its G2 URL, G2's numeric product id) |
reviewId, url | G2 review id and the permalink of the review (…/reviews/slack-review-13686121) |
title | Review headline |
rating | 0-5 in half-star steps |
likes | Answer to "What do you like best about …?" |
dislikes | Answer to "What do you dislike about …?" |
problemsSolved | Answer to "What problems is … solving and how is that benefiting you?" |
recommendations | Answer to "Recommendations to others considering …" (mostly on older reviews) |
answers | Any other question / answer pairs of the review, as [{question, answer}] |
text | The whole review body in one string |
reviewerName | Reviewer's display name as G2 shows it ("Amit M."); anonymous reviewers keep G2's label ("Verified User in Computer Software") |
reviewerUrl, reviewerId | Public G2 profile link (https://www.g2.com/users/…) and G2's numeric reviewer id; null for anonymous reviewers |
reviewerRole | Job title as the reviewer wrote it |
companySize | "Small-Business (50 or fewer emp.)", "Mid-Market (51-1000 emp.)" or "Enterprise (> 1000 emp.)" |
industry | Reviewer's industry when G2 shows it |
reviewDate, publishedAt | Publication date (2026-10-01) and full timestamp |
updatedDate | Date the reviewer last refreshed the review, when G2 shows one |
validatedReviewer, validationMethod | G2's "Validated Reviewer" badge and how the identity was checked ("LinkedIn", "business email account", …) |
verifiedCurrentUser | "Current User" badge (screenshot or in-app proof of use) |
reviewSource | How the review was collected: "Organic", "G2 invite", "Seller invite", "Thank You page", … |
incentivized | The reviewer was offered a gift card or other nominal incentive |
badges, translatedFrom | Other badges on the review ("AI Translated", "G2 Icon") and the original language of translated reviews |
disclosure | G2's note on reviews that do not count towards scores (business partners, guest users) |
isVideoReview, videoUrl | Video flag and link when the review carries a video |
scrapedAt | Time of collection (UTC) |
Reviewer avatars and initials monograms are not collected. G2 shows no reviewer LinkedIn links on review cards (a "Validated through LinkedIn" badge only says how the identity was checked), so there is no LinkedIn field.
Product items (mode: products): slug, name, url, productId, vendor, vendorUrl, description, rating, reviewCount, starDistribution (review count per star, when G2 serves the page with its review list) and starPercentages, categories with categoryUrls, parentCategories, pricing (plan name, price, currency, terms), pricingUrl, alternatives and comparisons (name, URL, rating, review count), features by group, pros and cons (the themes G2 extracts from reviews, with mention counts), languages, solutionType, integrationCount, videoReviewCount, logoUrl, websiteUrl.
Category cards (mode: category): rank, name, slug, url, productId, vendor, vendorUrl, rating, reviewCount, description (G2's "What do users say?" summary, or the product description on search pages), badges, top pros and cons with mention counts, bestFor, category, categorySlug, categoryUrl, subcategory, relatedCategories, isSponsored, logoUrl, page.
How to use G2 Reviews Scraper
- Paste one or more URLs into Start URLs: a product page (
https://www.g2.com/products/slack/reviews), a category page (https://www.g2.com/categories/crm) or a search page (https://www.g2.com/search?query=help+desk). Or type product slugs such asslackinto Product slugs. - Pick What to scrape: reviews (default), product profiles, or category cards.
- Set Max items and, for runs over several products, Max reviews per product.
- Optionally choose Sort reviews, Only these star ratings, Only these company sizes, a keyword in Only reviews mentioning, or a date in Only reviews published or updated since.
- Click Start. Results appear in the Dataset tab; export as JSON, CSV or Excel, or read them through the API.
Input example
{"startUrls": [{ "url": "https://www.g2.com/products/slack/reviews" },{ "url": "https://www.g2.com/categories/crm" }],"productSlugs": ["notion", "hubspot-marketing-hub"],"mode": "reviews","maxItems": 500,"maxReviewsPerProduct": 50,"sortReviews": "most_recent","ratingFilter": ["1", "2"],"companySizeFilter": ["enterprise"],"publishedAfter": "30 days"}
Output example
{"type": "review","productSlug": "slack","productName": "Slack","productUrl": "https://www.g2.com/products/slack/reviews","productId": 3437,"reviewId": "11444244","url": "https://www.g2.com/products/slack/reviews/slack-review-11444244","title": "Boost Your Team's Efficiency with Slack","rating": 4.5,"likes": "What I like best about Slack is its ability to centralize and streamline team communication. The intuitive channel system keeps conversations organized and relevant, while real-time messaging facilitates quick decisions.","dislikes": "What I dislike about Slack primarily revolves around notification management and cost. The sheer volume of notifications can become overwhelming, even with customized settings.","problemsSolved": "Slack primarily fixes the chaos of scattered team communication. Instead of endless emails and digging for info, it pulls all our conversations, files, and updates into one spot.","recommendations": null,"answers": [],"text": "What I like best about Slack is its ability to centralize and streamline team communication. … What I dislike about Slack primarily revolves around notification management and cost. … Slack primarily fixes the chaos of scattered team communication. …","reviewerName": "Saqib I.","reviewerUrl": "https://www.g2.com/users/9ca7cba8-1321-4601-9f4b-bdeedeb8834c","reviewerId": 6307363,"reviewerRole": "RCM Executive","companySize": "Small-Business (50 or fewer emp.)","industry": "Insurance","reviewDate": "2025-07-28","publishedAt": "2025-07-28T14:46:17-05:00","updatedDate": "2026-10-01","validatedReviewer": true,"validationMethod": "LinkedIn","verifiedCurrentUser": true,"reviewSource": "Organic","incentivized": false,"badges": ["AI Translated"],"translatedFrom": "English","disclosure": null,"isVideoReview": false,"videoUrl": null,"scrapedAt": "2026-10-02T20:20:22Z"}
Proxy note
G2 blocks datacenter and residential proxies alike, so this Actor uses Apify's Unblocker proxy by default. Unblocker is billed to your Apify account per successful request: 10 Unblocker units, about $0.0015 on the free plan and less on paid plans. Failed requests are free. One request returns 10 reviews, one product profile, or 15-20 category cards, so the proxy adds about $0.00015 per review on top of the review price (closer to $0.0002 per review beyond the first 100 of a product, see below). The run's SUMMARY record reports the number of successful requests. Responses through Unblocker take between 2 and 60 seconds each; the Actor keeps five requests in flight, which works out to roughly 50-100 reviews per minute.
How much does it cost to scrape G2 reviews?
Pay per item: $0.0015 per review, $0.004 per product profile, $0.001 per category card. There is no start fee and no subscription. On top of that you pay the Unblocker proxy (see the proxy note) and normal Apify platform usage, which is a few cents per thousand reviews. 1,000 reviews cost about $1.70 all-in on the free plan, 100 reviews about $0.17.
How many G2 reviews can I get per product?
G2 shows visitors without an account the first 100 reviews of any sorted or filtered list and nothing beyond page 10. Up to 100 reviews per product you get exactly that list in the order you chose, 10 reviews per request.
When Max reviews per product is higher, the Actor also reads the slices of the list that G2's own filters offer (star rating, then company size, region, industry and user role). Each slice is a list of its own with its own 100 reviews, slices that are still larger are split again, and every slice contributes in proportion to its size. The result stays close to "the newest N reviews" and keeps the product's real mix of star ratings. Products with a few thousand reviews can be collected almost completely this way; reviews that have no company size or region on G2 (about 1%) can drop out. For the largest products (tens of thousands of reviews) set a limit that matches what you need, since every 10 reviews is one proxy request.
Can I get only negative reviews, or only new ones?
Yes. Only these star ratings with 1 and 2 returns complaints only; G2 applies the filter, so you do not pay for reviews you do not want (note that G2's 1-star bucket includes 0 and half-star ratings). Only these company sizes narrows to small business, mid-market or enterprise reviewers, and Only reviews mentioning searches the review text for a keyword such as "pricing".
For monitoring, set Only reviews published or updated since to a date or a period like 7 days and schedule the Actor. Reviews are read newest first and the run stops at the page where they get older than that, so a weekly check of a product usually costs one or two requests. Deduplicate on reviewId.
Monitor changes on a schedule
Turn on Only new or changed items and save the input as a task with a Schedule (Apify Console: Saved tasks -> Schedule, for example daily). Each run then remembers what earlier runs of the same input returned and outputs only what is new: reviews no earlier run saved in reviews mode (read newest first; paging stops at the first page that reaches already-seen reviews, so a daily check of a product is usually one request), products whose rating or pricing plans changed in products mode, and products that are new to the list or whose rating changed in category mode. Unchanged items are skipped before they are saved, so they are not charged. Only reviews published or updated since (2 days, 1 week or a date like 2026-10-01) is the date limit for monitoring: it bounds how far back the first run reads. Monitored items carry changeType (new or changed) and, for changed products, previousValues with the old values of the fields that changed (e.g. {"rating": 4.5}). Use Monitoring key to keep several schedules on the same input apart.
Does it work with category and search pages?
Yes. A category URL such as https://www.g2.com/categories/crm is paginated automatically (15 products per page, ranked by G2 score). In category mode you get the ranking cards: the cheapest way to list a whole category with ratings, review counts, G2's summary of what users say, and the top pro and con of each product. In reviews mode every product of the category is opened and up to Max reviews per product reviews are saved for each; in products mode each product gets a full profile. Search URLs (https://www.g2.com/search?query=…) work the same way with 20 products per page. Parent categories that only group sub-categories return the popular products G2 lists for each sub-category.
Does it need a G2 account or a browser?
No. Everything comes from pages G2 serves to anonymous visitors. The Actor sends plain HTTP requests through the Unblocker proxy and reads the review list from the same endpoint the product page loads it from, together with the structured data G2 embeds for search engines. No login, no cookies and no headless browser, which keeps memory use low (512 MB is enough).
Integrations and API
Use the run in Zapier, Make, n8n, Google Sheets, or call it from Python/Node with the Apify client. See the API tab for ready-made snippets. Schedule it to monitor new reviews of your product or your competitors, or feed likes, dislikes and problemsSolved into an LLM for theme analysis.
Is it legal to scrape G2?
This Actor collects only data that G2 shows publicly to logged-out visitors: review texts and ratings, the reviewer's display name as shown (usually first name and last initial, or G2's "Verified User" label for anonymous reviewers), the public G2 profile link and reviewer id, job title, industry and company size band, and product and vendor business information. It does not collect photos, avatars or any contact details, and nothing behind a login. Reviewer names and profile links are personal data under GDPR and similar laws: make sure you have a lawful basis for processing them, and do not use them to contact or profile individuals. You are responsible for how you use the data and for complying with G2's terms and applicable law.
Support
Found a bug or need a field added? Open an issue in the Issues tab; it is usually answered within a day.