G2 Product Review

Surface high-value sales signals from G2 reviews including vendor pain points, switching intent, and quantified business impact from decision-makers.

Sales intelligence signals extracted from G2 product reviews - identifying companies experiencing pain with their current vendor, switching intent, and quantified business impact.

Why This Signal Matters

  • Authentic vendor feedback - Real user experiences with quantified business impact
  • Switching intent detection - Identify companies actively evaluating alternatives
  • Decision-maker complaints - Prioritize signals from VPs, Directors, and C-level
  • Competitor intelligence - See which alternatives are being considered

Available Subtypes

Subtype EnumCategoryDescription
g2ActiveChurnriskExplicit statements about leaving or having left the product
g2CompetitorMentionscompetitiveAny mention of switching to/from competitors
g2CustomerSupportComplaintsfeedbackSlow response, unresolved tickets, poor service quality
g2IntegrationProblemstechnologyBroken APIs, sync failures, compatibility issues
g2MissingFeaturesfeedbackCritical features users need but product lacks
g2PricingConcernsfinancialToo expensive, hidden fees, poor ROI, price hikes
g2RecurringProductIssuesfeedbackSame bug or problem mentioned in 2+ reviews (systemic issue)
g2ReliabilityIssuesriskDowntime, crashes, data loss, instability
g2UsabilityIssuesfeedbackHard to use, steep learning curve, bad UX

Signal Categories

Signals are organized into these categories:

CategoryDescription
feedback
risk
financial
technology
competitive

Schema

{
  "signal_id": "26693532-548d-4898-b96c-b3281bf2cc1b",
  "signal_type": "g2-product-review",
  "signal_subtype": "g2ReliabilityIssues",
  "detected_at": "2026-01-11T23:39:53Z",
  "association": "company",
  "company": {
    "name": "Acme CRM",
    "domain": "acmecrm.com",
    "linkedin_url": "https://www.linkedin.com/company/acme-crm",
    "industries": [
      "CRM Software"
    ],
    "employee_count_low": null,
    "employee_count_high": null,
    "description": "Acme CRM provides customer relationship management solutions for small and medium businesses."
  },
  "data": {
    "summary": "VP of Sales Operations at a >1000 employee company reports monthly outages costing approximately $50K in lost deals. Multiple users confirm 3+ outages per month affecting demo reliability. The reviewer is 'actively evaluating HubSpot' as an alternative.",
    "relevance_score": 88,
    "confidence": "high",
    "themes": [
      "monthly outages",
      "lost revenue",
      "demo failures",
      "reliability concerns"
    ],
    "pain_categories": [
      "revenue_impact",
      "churn_risk"
    ],
    "switching_intent": {
      "detected": true,
      "urgency": "considering",
      "signal_phrase": "actively evaluating HubSpot"
    },
    "quantified_impact": {
      "has_numbers": true,
      "metrics": [
        "$50K lost",
        "3 outages/month",
        "4 hours/week wasted"
      ]
    },
    "decision_maker_complaint": {
      "is_decision_maker": true,
      "title": "VP of Sales Operations",
      "company_size": ">1000 emp."
    },
    "product_info": {
      "product_name": "Acme CRM",
      "product_category": "CRM Software",
      "product_url": "https://www.g2.com/products/acme-crm/reviews",
      "current_rating": 3.8,
      "total_reviews": 156,
      "review_count_90d": 12,
      "rating_distribution": {
        "5_star": 45,
        "4_star": 50,
        "3_star": 30,
        "2_star": 20,
        "1_star": 11
      },
      "top_competitors": [
        "HubSpot",
        "Salesforce",
        "Pipedrive"
      ],
      "competitors_mentioned_in_reviews": [
        "HubSpot",
        "Pipedrive"
      ]
    },
    "evidence": [
      {
        "quote": "cost us at least 2 deals worth $25K each",
        "reviewer_name": "Sarah M.",
        "reviewer_title": "VP of Sales Operations",
        "reviewer_company_size": ">1000 employees",
        "review_date": "2025-12-15"
      },
      {
        "quote": "actively evaluating HubSpot as our primary CRM",
        "reviewer_name": "Sarah M.",
        "reviewer_title": "VP of Sales Operations",
        "reviewer_company_size": ">1000 employees",
        "review_date": "2025-12-15"
      }
    ]
  },
  "insight": {
    "headline": "VP of Sales reports monthly outages costing $50K in lost deals",
    "detail": "VP of Sales Operations at a >1000 employee company reports monthly outages costing approximately $50K in lost deals.",
    "relevance": 0.88,
    "confidence": "high"
  },
  "tags": [
    "reliability",
    "enterprise",
    "revenue impact",
    "active evaluation"
  ],
  "source": "g2_reviews",
  "batch_id": "2026-01-11-17-39-08"
}

Field Reference

Core Fields

FieldTypeRequiredDescription
signal_idstring (UUID)Unique identifier for this signal
signal_typestringAlways "g2-product-review"
signal_subtypestringSpecific signal subtype (g2RecurringProductIssues, g2CustomerSupportComplaints, g2ReliabilityIssues, g2UsabilityIssues, g2PricingConcerns, g2IntegrationProblems, g2MissingFeatures, g2CompetitorMentions, g2ActiveChurn)
detected_atstring (ISO 8601)When the signal was detected
associationstringEntity association type - always "company"
tagsarray[string]Signal tags for filtering
sourcestringData source - always "g2_reviews"
batch_idstringProcessing batch identifier

Company Object

FieldTypeRequiredDescription
company.namestringVendor/seller name
company.domainstringCompany domain
company.linkedin_urlstring (URL)Company LinkedIn URL
company.industriesarray[string]Industry classifications
company.employee_count_lowintegerLower bound of employee count
company.employee_count_highintegerUpper bound of employee count
company.descriptionstringCompany description (truncated to 500 chars)

Data Object

FieldTypeRequiredDescription
data.summarystring2-4 sentence summary connecting WHO complained, WHAT the problem is, QUANTIFIED IMPACT, and WHAT THEY'RE DOING
data.relevance_scoreintegerRelevance score 0-100 (90+ exceptional, 80-89 high value, 70-79 solid, 60-69 moderate, 50-59 weak)
data.confidencestringConfidence level in signal accuracy (high, medium, low)
data.themesarray[string]Key themes extracted from reviews
data.pain_categoriesarray[string]Standardized pain category tags
data.switching_intent.detectedbooleanWhether switching intent was detected
data.switching_intent.urgencystringUrgency of switching intent (immediate, considering, none)
data.switching_intent.signal_phrasestringExact phrase indicating switching intent
data.quantified_impact.has_numbersbooleanWhether quantified metrics were found
data.quantified_impact.metricsarray[string]Extracted metrics (dollars, time, percentages, counts)
data.decision_maker_complaint.is_decision_makerbooleanWhether complaint is from a decision-maker (C-level, VP, Director, Owner)
data.decision_maker_complaint.titlestringReviewer's job title
data.decision_maker_complaint.company_sizestringReviewer's company size
data.product_info.product_namestringG2 product name
data.product_info.product_categorystringG2 product category
data.product_info.product_urlstring (URL)G2 product review page URL
data.product_info.current_ratingfloatCurrent G2 rating (0-5)
data.product_info.total_reviewsintegerTotal number of reviews on G2
data.product_info.review_count_90dintegerNumber of reviews in last 90 days
data.product_info.rating_distributionobjectRating distribution by star count
data.product_info.top_competitorsarray[string]Top competitors listed on G2
data.product_info.competitors_mentioned_in_reviewsarray[string]Competitors mentioned in the analyzed reviews
data.evidencearray[string]Supporting evidence from reviews
data.evidence[].quotestringDirect quote from review (max 500 chars)
data.evidence[].reviewer_namestringReviewer name
data.evidence[].reviewer_titlestringReviewer job title
data.evidence[].reviewer_company_sizestringReviewer company size
data.evidence[].review_datestring (ISO 8601)Date of the review

Insight Object

FieldTypeRequiredDescription
insight.headlinestring12-18 word headline summarizing WHO + ACTION/PROBLEM + QUANTIFIED IMPACT
insight.detailstringDetailed summary (same as data.summary)
insight.relevancefloatRelevance score as decimal (0.0-1.0)
insight.confidencestringConfidence level (high, medium, low)

Coverage

  • Refresh: Weekly
  • Coverage: Products with 5+ reviews on G2