G2 Reviews Scraper - $1.70 per 1,000, No API Key
Pricing
Pay per event
G2 Reviews Scraper - $1.70 per 1,000, No API Key
Someone had to sit down and write each G2 review, and the whole thing comes back: rating, title, full text, reviewer, date and review URL, for any product. No G2 account, no API key. $1.70 per 1,000 reviews, flat on every plan - no volume tiers, no plan gates.
Pricing
Pay per event
Rating
0.0
(0)
Developer
Dami's Studio
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
G2 Reviews Scraper & API
Pulls software reviews off G2.com by product URL or slug. Give it notion or
https://www.g2.com/products/notion/reviews and you get the reviews G2 publishes for that product:
star rating, title, pros, cons, problems solved, the reviewer's role and company size, and the date.
No G2 account, no API key, no cookie to paste in.
Price
$1.70 per 1,000 reviews ($0.0017 each), plus $0.002 each time a run starts. Flat rate — no volume tiers, no plan gates.
You are charged per review actually returned. A run that finds nothing charges nothing beyond the start fee.
What you get
| Field | Notes |
|---|---|
productName, productSlug, productUrl | the product the review belongs to |
reviewId, reviewNumericId, reviewUrl | stable ids, and a direct link to the review |
title | the reviewer's own headline |
rating | 1–5 stars |
reviewText | the full body |
pros, cons, problemsSolved | G2's three structured prompts, kept separate |
reviewerName, reviewerRole | as G2 displays them |
companySize | e.g. "Mid-Market (51-1000 emp.)" |
publishedAt, publishedAtRaw | ISO 8601, plus G2's original string |
Coverage across a real 1,000-review run: everything above at 100%, except companySize at
67% — G2 simply does not show it for every reviewer. Where it is missing you get null, not a
guess.
Input
{"productUrls": ["notion", "https://www.g2.com/products/slack/reviews"],"maxReviewsPerProduct": 500}
productUrls— slugs or full G2 review URLs, mixed freely.maxReviewsPerProduct— stop after this many reviews per product. Default 100.starRatings/regions— optional filters (1–5 stars; the six continents G2 accepts).includeProductSummary— adds one free summary row per product. On by default.
Run it with no input and you get a single labelled sample row, uncharged, so you can see the shape before spending anything.
How it holds up
G2's review pages sit behind DataDome, which blocks plain HTTP clients. This actor does not fight that — it reads G2's own per-product review feed, which serves the same reviews and is not walled. That is why it is fast and why it does not need a browser, a proxy budget or a login.
How depth works. The feed returns at most 100 reviews per request, newest first, and it has no page or offset parameter. To go deeper the actor requests additional slices of the same feed — by star rating and by reviewer region — and merges them, dropping duplicates. Ask for 100 or fewer and the run is a single request; ask for more and it spends one request per slice until it has enough or the slices run out. How far that reaches depends on the product: measured on 2026-08-21, a very large product (Slack) yielded 1,720 unique reviews across the full 42-slice grid, while a product with only a few dozen reviews returns all of them from the first request.
G2 also renames products and redirects the old slug. zoom now redirects to zoom-workplace; the
actor follows the redirect and returns the reviews, and the summary row records the final feed URL
it landed on.
What this does not do
- No product search. You bring the product; it does not discover products by category or query.
- No reviewer contact details. G2 does not publish them and neither does this.
- No vendor replies or review comments. Not in the feed.
- No G2 rating breakdowns, pricing tabs or comparison data. Reviews only.
- Products with fewer than a handful of reviews may return everything G2 has and stop early. That is the product, not a failure.
- No guaranteed full history for large products. The feed is capped at 100 reviews per request
and slicing only widens it so far, so a product with tens of thousands of reviews will return a
subset, newest first. The summary row's
isCompleteReviewHistoryistrueonly when the whole feed genuinely fitted in one response.
FAQ
Do I need a G2 login or API key? No. Nothing to authenticate, nothing to configure.
How many reviews can I get for one product? It depends on the product. One request returns the newest 100; beyond that the actor merges star and region slices of the same feed. Measured on 2026-08-21, Slack yielded 1,720 unique reviews from the full slice grid. Smaller products return their entire feed in the first request, and the summary row tells you which case you got.
How do I know whether I got everything?
The free summary row carries isCompleteReviewHistory. It is true only when the product's whole
feed came back in a single response, so it is a claim about your data rather than a guess.
Why is averageRating sometimes null?
Because the set it would average is a stratified sample, not a representative one. When a run goes
past 100 reviews it merges one slice per star rating, and each slice returns up to 100 - so a
well-liked product comes back with equal counts of 1- to 5-star reviews and would average about 3.0
whatever its real score is. Rather than print a number that looks like the product's G2 rating and
is not, the summary sets averageRating to null and reports sampling: "sliced". A single-request
run (100 reviews or fewer) reports sampling: "newest-first" and does carry a mean.
What does it cost to scrape 1,000 G2 reviews? $1.70, plus the $0.002 start fee.
Can I get reviews for several products in one run?
Yes. Pass as many slugs or URLs as you like in products; each review row carries its own
productName and productSlug.
Is the review text complete or truncated?
Complete. reviewText is the full body, and pros, cons and problemsSolved are kept as separate
fields rather than concatenated.
What happens if a product URL is wrong? You get an uncharged diagnostic row naming the problem, not a silent empty run.
Can I export to CSV or Excel? Yes — Apify exports the dataset as JSON, CSV, Excel or XML, and there is a REST endpoint for the same data.