G2 Reviews Scraper — Ratings, Pros & Cons avatar

G2 Reviews Scraper — Ratings, Pros & Cons

Pricing

from $7.00 / 1,000 review scrapeds

Go to Apify Store
G2 Reviews Scraper — Ratings, Pros & Cons

G2 Reviews Scraper — Ratings, Pros & Cons

Scrape G2 product reviews and metadata: star ratings, written reviews, pros, cons, sub-ratings, and reviewer firmographics. Paste a product URL or search by name. MCP-ready.

Pricing

from $7.00 / 1,000 review scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

4 days ago

Last modified

Share

G2 Reviews Scraper is an Apify Actor for teams and AI agents that need structured G2 review data. It accepts a G2 product reviews URL in startUrls or a free-text searchQuery, and it returns one record per review. In search mode, it can also return product summary rows. Each review record can include the star rating, review title, review body, pros, cons, sub-ratings, reviewer firmographics, review date, review URL, helpful count, vendor response, and scrape timestamp. It is usable through Apify MCP.

Best fit and connected workflows

This Actor fits workflows that start with a product name or a G2 reviews URL and end with structured review rows ready for analysis, enrichment, or automation.

Common routes include:

  • Review intelligence for product, marketing, or CX teams that need written feedback and reviewer context in a dataset.
  • Search-driven discovery when you want to find matching G2 products first, then optionally pull their reviews.
  • AI agent pipelines that need a single Apify tool for grounded G2 review retrieval with source fields.
  • Lead generation or account research workflows where reviewer firmographics and product metadata support segmentation.

Practical scenario

Maya is preparing a competitive brief for a product team. She starts with a G2 product reviews URL for a competing app and sets a cap on reviews per product. The dataset returns rating, reviewTitle, reviewBody, pros, cons, reviewer, and reviewDate. Maya uses the reviewer company size and the recurring pros and cons to decide which themes belong in her internal summary, then shares the review URLs with her team for follow-up reading.

Input

Provide either startUrls or searchQuery.

FieldTypePurposeDefault
startUrlsarrayG2 product or reviews URLs. Each should point to a product reviews page like https://www.g2.com/products/{slug}/reviews. The /reviews suffix is optional and added automatically.none
searchQuerystringSearch G2 by product name or keyword, then scrape the matching products.empty
maxReviewsPerProductintegerUpper bound on reviews extracted per product. This is per product.50
maxProductsPerSearchintegerIn search mode, how many matching products to take from G2 results.5
includeReviewsbooleanIn search mode, scrape reviews for each matched product or return only product summary cards.true
sortReviewsBystringReview order before the cap is applied: newest or helpful.newest
proxyConfigurationobjectProxy settings used to reach G2.Apify Proxy
debugbooleanWrites diagnostic extraction data to the key-value store.false

Focused input example

{
"searchQuery": "project management software",
"maxProductsPerSearch": 3,
"maxReviewsPerProduct": 25,
"includeReviews": true,
"sortReviewsBy": "helpful"
}

Output

The dataset contains review rows and, in search mode, product summary rows. Filter by recordType to separate them.

FieldTypeMeaning
platformstringAlways g2
recordTypestringreview or product
productNamestringG2 software product name
productSlugstringG2 product slug
productUrlstringCanonical G2 reviews URL
productRatingnumberAggregate product star rating
productReviewCountintegerTotal reviews reported by G2
vendorstringProduct vendor or brand
categorystringG2 application category
ratingnumberReview star rating
reviewTitlestringReview headline
reviewBodystringFull review text
prosarrayReviewer-listed pros
consarrayReviewer-listed cons
subRatingsobjectPer-aspect ratings
reviewerobjectReviewer firmographics
reviewDatestringReview publish date in ISO 8601 UTC
reviewUrlstringDirect review URL when available
helpfulCountintegerHelpful votes
vendorResponsestringPublic vendor reply when present
scrapedAtstringScrape timestamp in ISO 8601 UTC

Illustrative output record

{
"platform": "g2",
"recordType": "review",
"productName": "Slack",
"productSlug": "slack",
"productUrl": "https://www.g2.com/products/slack/reviews",
"productRating": 4.5,
"productReviewCount": 23400,
"vendor": "Salesforce",
"category": "Team Communication",
"rating": 5,
"reviewTitle": "Clear team communication in one place",
"reviewBody": "A review describing collaboration, channel organization, and day-to-day usage.",
"pros": ["Channels keep conversations organized", "Integrations are easy to find"],
"cons": ["Search can feel crowded in busy workspaces"],
"subRatings": {
"easeOfUse": 9.2,
"customerSupport": 8.7
},
"reviewer": {
"name": "Jordan M.",
"title": "Engineering Manager",
"companyName": "Example Co.",
"companySize": "201-500 employees",
"industry": "Computer Software",
"verified": true
},
"reviewDate": "2026-04-18T00:00:00.000Z",
"reviewUrl": "https://www.g2.com/products/slack/reviews/slack-review-12345678",
"helpfulCount": 12,
"vendorResponse": "Thanks for the thoughtful feedback.",
"scrapedAt": "2026-06-19T12:00:00.000Z"
}

How it works

This Actor uses Firefox-rendered pages and Apify Proxy to reach G2, which runs behind enterprise Cloudflare protection. It supports two input paths:

  • URL mode: scrape the reviews for each product URL in startUrls.
  • Search mode: search G2 by keyword, take up to maxProductsPerSearch products, and either return summary cards or scrape reviews for each match.

The implementation extracts review data from rendered page content and JSON-LD product metadata. It also splits pros and cons into separate fields and includes reviewer firmographics when G2 exposes them on the page.

Pricing

This Actor uses Apify pay per event pricing on the Apify platform. Charges are event-based, so usage scales with what the execution processes.

The billed event types are:

  • Actor start
  • Review scraped
  • Product found

For example, a run that scrapes fifty reviews from one product pays the start event and fifty review events. If you use search mode and return product summary cards, those product-found events are also billed. For the current rates and any live platform usage details, see the Pricing tab in the Apify Console.

Use with AI agents (MCP)

This Actor is usable through Apify MCP as a structured tool for fetching G2 review data. The exact Actor identity is khadinakbar/g2-product-reviews-scraper.

Tool description: submit a G2 product URL or a search query, then receive review rows or product summary rows from the dataset. The output includes review text, ratings, pros, cons, reviewer details, provenance fields, and timestamps.

Scrape the G2 reviews for https://www.g2.com/products/slack/reviews. Return review rows with title, body, pros, cons, reviewer firmographics, review date, and product summary fields. Keep the response scoped to the dataset output and include the source URLs.

When an agent reads the output, recordType identifies whether a row is a review or a product summary card. productUrl, reviewUrl, and scrapedAt provide provenance. In search mode, maxProductsPerSearch controls how many matched products are processed, and maxReviewsPerProduct sets the per-product review cap that drives the event count and cost. When the output is paginated by G2 review volume, the per-product cap determines how far the Actor goes for each product.

Use from the Apify API

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({
token: process.env.APIFY_TOKEN,
});
const run = await client.actor('khadinakbar/g2-product-reviews-scraper').call({
startUrls: [{ url: 'https://www.g2.com/products/slack/reviews' }],
maxReviewsPerProduct: 10,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Best results and outcome guidance

Use a G2 product reviews URL when you already know the exact product. Use searchQuery when you want G2 to surface matching products first. Set sortReviewsBy to newest for recent feedback or helpful when you want the most endorsed reviews first. Keep maxReviewsPerProduct aligned with the dataset size you need, since it applies per product. If you use search mode for discovery, includeReviews: false returns only product cards and keeps the output focused on product matching.

Focused standalone workflow

This Actor is designed as a focused standalone workflow.

Design note

I found that the output schema includes both recordType: "review" and recordType: "product", which makes it straightforward to separate full review rows from search-mode summary cards in downstream processing.

FAQ

Can I use a product name instead of a URL?

Yes. Use searchQuery to search by product name or keyword, then let the Actor process the matching G2 products.

What comes back in URL mode?

URL mode returns review rows for the product URLs you provide. The dataset includes review text, pros, cons, ratings, reviewer firmographics, and related product metadata.

What comes back in search mode?

Search mode can return product summary cards, review rows, or both. Use includeReviews to choose whether matching products are expanded into reviews.

How should I read the dataset?

Use recordType first. Then use productName, rating, reviewTitle, reviewBody, pros, cons, and reviewer for review analysis. Use productRating and productReviewCount for product-level context.

Can this Actor be used in agent workflows?

Yes. It is MCP-ready, and the dataset output is structured for agent consumption.

Responsible use

This Actor collects publicly available review and product information from G2 pages. Use the output in a way that respects G2's terms, reviewer rights, and applicable law. When you build on the data, keep the provenance fields such as productUrl, reviewUrl, and scrapedAt so downstream users can trace each record back to its source.