Product Reviews
Surface high-value sales signals from G2 reviews including vendor pain points, switching intent, and quantified business impact from decision-makers.
Overview
Product Reviews surface what real users are saying about vendors on G2—complaints, praise, switching intent, and quantified business impact.
We analyze G2 reviews across thousands of software products, scanning for 9 signal types. Our model extracts switching intent phrases ("we're evaluating alternatives"), quantified impact ("cost us $50K"), and decision-maker complaints (filtering for VP/Director/C-level titles). Multiple reviews mentioning the same issue get aggregated into a single signal with supporting quotes from each reviewer.
Available Subtypes
| Subtype Enum | Category | Description |
|---|---|---|
ActiveChurn | risk | Explicit statements about leaving or having left the product |
CompetitorMentions | competitive | Any mention of switching to/from competitors |
CustomerSupportComplaints | feedback | Slow response, unresolved tickets, poor service quality |
IntegrationProblems | technology | Broken APIs, sync failures, compatibility issues |
MissingFeatures | feedback | Critical features users need but product lacks |
PricingConcerns | financial | Too expensive, hidden fees, poor ROI, price hikes |
RecurringProductIssues | feedback | Same bug or problem mentioned in 2+ reviews (systemic issue) |
ReliabilityIssues | risk | Downtime, crashes, data loss, instability |
UsabilityIssues | feedback | Hard to use, steep learning curve, bad UX |
Signal Categories
| Category | Description |
|---|---|
feedback | User experience and feature feedback |
risk | Churn risk and reliability concerns |
financial | Pricing and ROI concerns |
technology | Integration and technical issues |
competitive | Competitor comparisons and switching |
Schema
{
"signal_id": "1cb8bd74-e7c9-4c41-b7aa-9c6f19f72e5d",
"signal_type": "g2-product-review",
"signal_subtype": "ActiveChurn",
"detected_at": "2026-01-21T11:01:13.789Z",
"association": "company",
"company": {
"name": "Salesforce",
"domain": "salesforce.com",
"linkedin_url": "https://www.linkedin.com/company/salesforce/"
},
"data": {
"summary": "Enterprise IT Director reports switching from Salesforce to HubSpot after pricing increased 40% at renewal, citing ROI concerns and complexity for their mid-market use case.",
"headline": "IT Director Churns After 40% Price Hike, Saves $180K by Switching to HubSpot",
"relevance": 92,
"product_name": "Salesforce",
"source_page_url": "https://www.g2.com/products/salesforce/reviews",
"switching_intent": {
"detected": true,
"urgency": "immediate",
"signal_phrase": "We migrated to HubSpot last quarter"
},
"quantified_impact": {
"has_numbers": true,
"metrics": [
"40% price increase",
"$180K annual savings"
]
},
"decision_maker_complaint": {
"is_decision_maker": true,
"title": "IT Director"
},
"competitors_mentioned": [
"HubSpot"
],
"evidence": [
{
"quote": "We migrated to HubSpot last quarter after Salesforce tried to raise our renewal by 40%. The savings are $180K annually.",
"reviewer_name": "Mark T.",
"reviewer_title": "IT Director @Manufacturing Co",
"review_url": "https://www.g2.com/products/salesforce/reviews#review-13100137",
"star_rating": 2,
"review_date": "2026-01-10"
},
{
"quote": "For a mid-market company, the complexity wasn't worth it. HubSpot does 90% of what we need.",
"reviewer_name": "Mark T.",
"reviewer_title": "IT Director @Manufacturing Co",
"review_url": "https://www.g2.com/products/salesforce/reviews#review-13100274",
"star_rating": 2,
"review_date": "2026-01-10"
}
]
}
}Field Reference
Core Fields
| Field | Type | Required | Description |
|---|---|---|---|
signal_id | string (UUID) | ✓ | Unique identifier for this signal |
signal_type | string | ✓ | Always "g2-product-review" |
signal_subtype | string | ✓ | Specific signal subtype (see subtypes table) |
detected_at | string (ISO 8601) | ✓ | When the signal was detected |
association | string | ✓ | Always "company" |
Company Object
| Field | Type | Required | Description |
|---|---|---|---|
company.name | string | ✓ | Vendor/product company name |
company.domain | string | ✓ | Company domain |
company.linkedin_url | string (URL) | Company LinkedIn URL |
Data Object
| Field | Type | Required | Description |
|---|---|---|---|
data.summary | string | ✓ | 2-4 sentence summary of the signal: WHO complained, WHAT the problem is, and IMPACT |
data.headline | string | ✓ | 12-20 word headline summarizing WHO + PROBLEM + IMPACT |
data.relevance | integer | ✓ | Relevance score 0-100 (90+ exceptional, 80-89 high value, 70-79 solid, 60-69 moderate). Delivered signals score 50 or higher |
data.product_name | string | ✓ | The G2 product the reviews are about |
data.source_page_url | string (URL) | ✓ | The product's G2 reviews page |
data.competitors_mentioned | array[string] | Competitors mentioned in the reviews |
Switching Intent Object
| Field | Type | Description |
|---|---|---|
data.switching_intent.detected | boolean | Whether switching intent was detected |
data.switching_intent.urgency | enum | Urgency level: immediate, considering, none |
data.switching_intent.signal_phrase | string | Exact phrase indicating switching intent (empty if not detected) |
Quantified Impact Object
| Field | Type | Description |
|---|---|---|
data.quantified_impact.has_numbers | boolean | Whether quantified metrics were found |
data.quantified_impact.metrics | array[string] | Extracted metrics (e.g., "$50,000", "30% longer", "3-4 times a day") |
Decision Maker Complaint Object
| Field | Type | Description |
|---|---|---|
data.decision_maker_complaint.is_decision_maker | boolean | Whether complaint is from a decision-maker (C-level, VP, Director, Owner, Founder) |
data.decision_maker_complaint.title | string | Reviewer's job title |
Evidence Array
| Field | Type | Description |
|---|---|---|
data.evidence[].quote | string | Direct quote from review (max 500 chars) |
data.evidence[].reviewer_name | string | Reviewer name or "Anonymous" |
data.evidence[].reviewer_title | string | Reviewer job title (may be empty) |
data.evidence[].review_url | string (URL) | Link to the review on G2 |
data.evidence[].star_rating | number | Reviewer's star rating, 0-5 in half steps. 0 when no rating was captured |
data.evidence[].review_date | string (YYYY-MM-DD) | Date of the review |
Example with Switching Intent
{
"signal_id": "8b2c3d4e-5f6a-7890-bcde-f01234567890",
"signal_type": "g2-product-review",
"signal_subtype": "ActiveChurn",
"detected_at": "2026-01-15T14:30:00Z",
"association": "company",
"company": {
"name": "Acme CRM",
"domain": "acmecrm.com",
"linkedin_url": "https://www.linkedin.com/company/acme-crm"
},
"data": {
"summary": "VP of Sales Operations at a large enterprise reports monthly outages costing approximately $50K in lost deals. The reviewer is actively evaluating HubSpot as an alternative.",
"headline": "VP of Sales reports monthly outages costing $50K, actively evaluating HubSpot",
"relevance": 88,
"product_name": "Acme CRM",
"source_page_url": "https://www.g2.com/products/acme-crm/reviews",
"switching_intent": {
"detected": true,
"urgency": "considering",
"signal_phrase": "actively evaluating HubSpot"
},
"quantified_impact": {
"has_numbers": true,
"metrics": [
"$50,000",
"monthly outages"
]
},
"decision_maker_complaint": {
"is_decision_maker": true,
"title": "VP of Sales Operations"
},
"competitors_mentioned": [
"HubSpot"
],
"evidence": [
{
"quote": "The monthly outages have cost us at least 2 deals worth $25K each. We're actively evaluating HubSpot.",
"reviewer_name": "Sarah M.",
"reviewer_title": "VP of Sales Operations",
"review_url": "https://www.g2.com/products/acme-crm/reviews#review-13100411",
"star_rating": 2,
"review_date": "2026-01-10"
}
]
}
}Coverage
- Refresh: Monthly
- Coverage: 2,000,000 companies
Updated about 24 hours ago
Did this page help you?

