G2 Reviews Scraper — Deep Data, Monitoring & Reliable Export avatar

G2 Reviews Scraper — Deep Data, Monitoring & Reliable Export

Pricing

from $1.00 / 1,000 g2 reviews

Go to Apify Store
G2 Reviews Scraper — Deep Data, Monitoring & Reliable Export

G2 Reviews Scraper — Deep Data, Monitoring & Reliable Export

Unofficial G2 reviews scraper for reliable monitoring and research. Collect ratings, pros, cons, problems solved, reviewer roles, company size, industry, dates, and URLs. Run recent snapshots, incremental tracking, or best-effort deep history; export clean JSON, CSV, Excel, and API-ready data.

Pricing

from $1.00 / 1,000 g2 reviews

Rating

0.0

(0)

Developer

DataForge

DataForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

a day ago

Last modified

Share

G2 Reviews Scraper

TL;DR — Paste a G2 product URL or slug → get flat review rows (rating, reviewer role, company size, industry, and the like-best / dislike / problems-solved answers). Request-only, no login, no browser. Chrome TLS impersonation over residential US proxy. Charged per review saved. Three modes: Latest, Incremental (only new), Deep History (backfill).

{ "mode": "product_reviews", "productUrls": ["notion"], "maxReviews": 3 }

That's a valid run. Everything else below is detail.


Modes at a glance

productUrls ─▶ ┌─ 🆕 product_reviews latest recent snapshot ≤ 125
├─ 🔁 incremental only new since last run ≤ 125
└─ 🕳️ deep_history backfill: rating → company ≤ 5000
size partitions
modeDoesPer-product cap
product_reviewsLatest snapshot of recent reviews125
incrementalOnly reviews published since your last run125
deep_historyBest-effort backfill across rating + company-size partitions5000

Actual counts depend on what G2 exposes publicly for the product — caps are ceilings, not guarantees.


⚙️ Params cheat-sheet

ParamTypeDefaultNotes
productUrlsstring[]required. Full URL or slug (notion, slack, hubspot-crm). Dupes removed.
modeenumproduct_reviewsproduct_reviews · incremental · deep_history
maxReviewsint251–125 (Latest/Incremental) or 1–5000 (Deep History)
starRatingsstring[][] (all)any of "1""5". Half-stars round up (4.5 → 5).
monitoringKeystringIncremental state key for direct/API runs. Tasks isolate automatically.
maxRetriesint61–15. Bump only if the source is flaky.
proxyConfigurationobjectresidential USPrefill is the recommended config.

Copy-paste snippets

🆕 Latest (default):

{ "mode": "product_reviews", "productUrls": ["https://www.g2.com/products/notion/reviews"], "maxReviews": 3 }

🔁 Monitor new — schedule this:

{ "mode": "incremental", "productUrls": ["notion", "slack", "hubspot-crm"], "maxReviews": 125 }

🕳️ Deep backfill, 5-star only:

{ "mode": "deep_history", "productUrls": ["notion"], "maxReviews": 2000, "starRatings": ["5"] }

📦 Output row

One flat object per review (trimmed):

{
"reviewId": "8123456",
"productSlug": "notion",
"productName": "Notion",
"title": "The best all-in-one workspace",
"rating": 5.0,
"starRatingBucket": 5,
"reviewerName": "Verified User in Information Technology",
"reviewerRole": "Project Manager",
"companySize": "Mid-Market (51-1000 emp.)",
"industry": "Information Technology",
"isAnonymous": true,
"likeBest": "Flexible pages and databases that adapt to any workflow...",
"dislike": "The mobile app can feel slow with very large workspaces...",
"problemsSolved": "Centralizes notes, docs and project tracking in one place...",
"publishedAt": "2026-07-30T14:22:00+00:00",
"publishedAtRaw": "Wed, 30 Jul 2026 14:22:00 +0000",
"reviewUrl": "https://www.g2.com/products/notion/reviews/notion-review-8123456",
"markdownContent": "# Notion Review: The best all-in-one workspace\n\n**Rating:** 5.0/5 ★★★★★ ..."
}

Field map: reviewId/reviewUrl = identity + link · productSlug/productName = which product · rating/starRatingBucket = stars + 1–5 bucket · reviewerName/reviewerRole = who · companySize/industry = segment · isAnonymous = verified-user flag · likeBest/dislike/problemsSolved = the three G2 prompts · publishedAt/publishedAtRaw = ISO + original feed date · markdownContent = whole review as Markdown.

Dataset views: Overview (product, rating, title, reviewer, company size, date) and Full reviews (every field).


⚠️ Gotchas

  • Slug or URL — both work. notion == https://www.g2.com/products/notion/reviews.
  • Fewer rows than maxReviews? You only get what G2 publicly exposes. Latest/Incremental hard-cap at 125.
  • Incremental state — each monitor keeps an isolated last-seen review ID in a KV store. Apify Tasks isolate on their own; for repeated direct/API runs set monitoringKey to keep states separate.
  • Billing — charged per review saved. Unavailable products are logged and skipped, no rows, no charge for them.
  • Schedulingmode: "incremental" + an Apify schedule = each run pushes only reviews new since the last.
  • No login/cookies — reads the public review feed with Chrome TLS impersonation over Apify Proxy.

⭐ Did this cheat-sheet earn its keep? A quick review on the Apify Store helps other teams find it — and tells me which mode to sharpen next.

Tags: g2 · g2 reviews · g2 scraper · review scraper · saas reviews · product reviews · competitor research · voice of customer · review monitoring