All articles
Lead GenerationBy Efe Berke Çolaker 8 min read

How to Scrape G2 Reviews for B2B Outbound Leads

Learn how to extract competitor reviews from G2, enrich reviewer names into verified emails, and target unhappy users with cold outbound.

ON THIS PAGE
  1. 01The definition and the boundary
  2. 02A worked example of review extraction
  3. 03Where teams get it wrong
  4. 04How to apply it this week
  5. 05Technical extraction methods
  6. 06Sources and method
  7. 07FAQ

By Efe Berke Colaker, Founder at GetleadReviewed by the Getlead editorial team for accuracy. Last updated September 2026.

How to Scrape G2 Reviews for B2B Outbound Leads: the numbers at a glance
How to Scrape G2 Reviews for B2B Outbound Leads: the numbers at a glance

Because G2 hides user emails, you must match extracted identities to corporate addresses using an enrichment provider. Verifying these generated emails protects your sending domain reputation from damaging hard bounces.

KEY TAKEAWAYS
Scraping G2 reviews provides the reviewer name and company, but you must enrich this data to find their email address.
Filtering reviews by date prevents you from targeting users who have already changed jobs.
Using negative reviews of a direct competitor creates a specific angle for your cold email software campaigns.
You must verify all enriched emails, because our data shows only 43.4% of generated addresses pass live SMTP checks.

The definition and the boundary

Scraping G2 reviews is the automated extraction of reviewer names, roles, company sizes, and sentiment. Because G2 hides email addresses, you must run the reviewer name and company through an enrichment provider.

A standard review card contains the author name, job title, and company segment. If the reviewer hides their identity, the platform displays an authenticated user flag, which your script must skip because you cannot enrich anonymous entries.

Extracting data requires a script that paginates through results and targets specific HTML elements. Automated tools use headless browsers like Puppeteer to render JavaScript before parsing the text.

A worked example of review extraction

A sales team targets a competitor with 400 one-star reviews complaining about customer support. They use a Python script to export names to a spreadsheet, then upload this list to an email finder to generate addresses.

The script ignores 50 anonymous reviews, leaving 350 named prospects, and the enrichment provider matches 280 prospects to a corporate domain for verification.

Methodology: we analyzed 383,368 email addresses through live SMTP verification and measured 34,973 tracked outbound sends inside Getlead. Read the full benchmark study for detailed performance metrics.

Consider a campaign targeting users of a legacy CRM platform. The scraper extracts 1,200 reviews posted between January and March, and filtering out 300 anonymous users leaves 900 named profiles.

The enrichment tool matches 650 profiles to a corporate domain using a waterfall logic sequence. This sequence queries three separate databases to maximize coverage across different data sources.

Database A finds 400 emails using standard first and last name permutations. Database B identifies 150 additional emails by cross-referencing LinkedIn profile URLs, while Database C locates 100 more addresses through historical breach data.

The team processes these 650 emails through a live SMTP check to identify deliverability risks. The verifier flags 150 addresses as hard bounces and 50 as catch-all domains, leaving a final list of 450 verified prospects.

toolwinsprice
Raw extracted reviews1,200$0
Named profiles after filtering900$0
Enriched corporate emails650$13
Verified safe addresses450$3
Positive replies booked15$0

Sending 450 emails requires careful volume management to avoid triggering spam filters. The team distributes the list across five sending domains, allocating 90 contacts per domain to maintain safe sending limits.

Each domain sends 15 emails per day over a six day period. This pacing keeps the daily volume below the 50 email safety threshold, ensuring maximum inbox placement.

The campaign generates a 65 percent open rate and a 12 percent reply rate. The sales team books 15 qualified meetings directly from this single review extraction effort.

Calculating the campaign ROI

The enrichment process costs two cents per successful email match using standard API pricing. Matching 650 profiles requires an investment of thirteen dollars for the data enrichment phase.

The SMTP verification costs an additional half cent per email, adding three dollars to the total. The total data cost for this campaign equals sixteen dollars to generate 450 verified prospects.

The sales team closes two deals from the 15 booked meetings, generating 24,000 dollars in annual recurring revenue. This yields a return on investment for a targeted outbound motion.

Sending messages to unverified addresses hits spam traps and hard bounces, destroying domain reputation within a week, so you must clean the list to maintain inbox placement.

43.4%Valid emails in our verification study
150,000Negative G2 reviews analyzed in Reddit dataset
0.51%Average bounce rate on verified outbound lists

Where teams get it wrong

Reviewers frequently change jobs, meaning a review posted two years ago indicates the author left that company. Teams fail when they do not filter the scrape by date.

  • Filtering reviews older than six months wastes enrichment credits on outdated roles.
  • Ignoring the reviewer company size leads to out-of-market prospects.
  • Skipping email verification causes bounce rates to exceed the safe 0.51% threshold.
  • Failing to segment by star rating results in pitching happy customers.

If a reviewer lists their company as 'Acme', the enrichment tool might return emails for five different companies. You must cross-reference the reviewer industry or location to ensure a precise match.

We burned through three domains in a month because we scraped historical reviews and skipped the SMTP check. Half the list had already left their companies.

Head of Sales at a 40-person SaaS

Extracting public data requires adherence to privacy laws and anti-spam regulations. You must ensure your outreach aligns with the professional context of the scraped review to maintain B2B data compliance.

How to apply it this week

Identify three direct competitors with active profiles, then extract all reviews rated three stars or lower from the last 90 days. Export the resulting names and companies to a CSV file.

Enriching the extracted data

Upload your CSV to an enrichment platform to append corporate emails. The platform uses the name and company to guess the pattern before pinging the mail server.

Verify your scraped lists automatically
Run your extracted G2 leads through our live SMTP checker before you send.
Try the bulk verifier

Run the output through a bulk email verifier to remove invalid and catch-all addresses. Draft a cold email referencing the specific pain point the user mentioned.

Load the verified contacts into your cold email software and schedule the campaign. Monitor reply rates and adjust your messaging based on the first fifty responses.

The five step execution sequence

A standard execution sequence requires five distinct steps to convert reviews into meetings. First, you configure a web scraper to target the competitor URL and extract the review container elements.

Second, you filter the extracted dataset to remove reviews older than 180 days. You delete any rows containing a four or five star rating to isolate dissatisfied users.

Third, you upload the cleaned CSV to an enrichment API via a POST request. The API processes the batch and returns a JSON payload containing the predicted email addresses.

Fourth, you upload the enriched list to an SMTP verification service. The service connects to the recipient mail servers and simulates a message delivery to filter out bounces.

Fifth, you write a personalized email sequence referencing the competitor by name. You mention the specific feature they complained about and offer your product as a direct solution.

Writing the cold email sequence

Writing the cold email requires a specific framework to leverage the review data. You start the subject line with the name of the competitor they reviewed.

The first sentence must reference their review to establish relevance. You state that you read their recent comments regarding the missing reporting features to prove you did research.

The second sentence introduces your product as the direct solution to their documented problem. You explain that your platform includes a custom report builder with automated scheduling.

The third sentence serves as a soft call to action to gauge their interest. You ask if they are open to seeing a brief demonstration of the reporting module.

If the prospect does not reply, you trigger an automated follow up three days later. This second email provides a case study of a customer who migrated from the same competitor.

Technical extraction methods

Building a custom scraper requires handling pagination and rate limits because platforms block unrecognized IP addresses. You must route your requests through a proxy network to avoid detection.

Because the DOM structure changes frequently, your script must locate the embedded JSON payload rather than relying on CSS selectors. Extracting the raw JSON provides a cleaner dataset.

Building a Python scraper

To build a Python scraper, you first import the requests and BeautifulSoup libraries. You define the target URL and set custom headers to mimic a legitimate web browser.

Next, you configure a rotating proxy service to assign a new IP address for every request. You create a loop that iterates through the page numbers appended to the base URL.

Inside the loop, the script fetches the HTML content and parses it using BeautifulSoup. It searches for the script tag containing the application state data and extracts the JSON string.

The dictionary contains a nested array of review objects with standardized keys. You iterate through this array to extract the author name, job title, and review body.

After processing all pages, you use the pandas library to convert the master list into a dataframe. You apply data cleaning functions to strip whitespace and remove special characters.

Handling rate limits and proxies

Handling rate limits requires a proxy rotation strategy to maintain extraction speed. You purchase a pool of residential IP addresses because they mimic real user traffic.

You configure your scraper to rotate the IP address after every fifty page requests. If a request returns a 403 Forbidden status code, the script discards that IP.

You also implement random delays between requests to simulate human browsing behavior. The script pauses for a random float value between 1.5 and 4.2 seconds to prevent detection.

To further evade detection, you rotate the user agent string alongside the IP address. You maintain a list of the top twenty most common browser user agents.

Commercial extraction tools handle proxy rotation if you prefer not to write code. These tools operate similarly to scraping LinkedIn Sales Navigator, managing session cookies and exporting a clean spreadsheet.

Always review the terms of service because some platforms prohibit automated data collection. You must balance the technical capability with the legal and operational risks.

Sources and method

The FTC CAN-SPAM compliance guide outlines the legal requirements for commercial email in the United States, mandating clear opt-out mechanisms and accurate header information.

GDPR Article 6 defines the lawful basis for processing personal data in the European Union. You must establish a legitimate interest when processing B2B contact information.

A Reddit analysis of 150k negative reviews demonstrated the scale of competitor sentiment data available. Figures were checked in September 2026.

Frequently asked questions

Are G2 reviews legitimate?

Yes, G2 requires LinkedIn authentication or corporate email verification to post a review. This verification ensures the reviewer is a real person, making extracted names and companies accurate for outbound targeting.

Is G2.com a legitimate website?

G2 is a major software review directory that verifies user identities before publishing feedback. It serves as a primary research tool for B2B software buyers and provides reliable sentiment data.

How much does G2 pay per review?

G2 often offers gift cards ranging from $10 to $25 to incentivize users to leave detailed software reviews. These incentives encourage users to write feedback, providing more context for outbound campaigns.

Can you scrape emails directly from G2?

No, G2 does not display user email addresses publicly on review pages. You must extract the reviewer name and company, then use a separate enrichment provider to find the corporate address.

How do you handle anonymous reviewers?

You must configure your extraction script to skip anonymous reviews entirely. Without a name and a company, an enrichment provider cannot generate a valid email address.

Popular resources

15 best lead generation tools12 best sales prospecting toolsLead scrapers for 10+ sourcesLead scraping tool (50K leads/mo)B2B email lists by industryB2B lead generation guideBest lead gen tools for agenciesZoominfo vs LushaWiza vs LushaReal Estate Agents email list

More in Lead Scraping

How to Scrape Product Hunt for Launch-Day LeadsHow to Scrape Leads from LinkedIn in 2026 (Step-by-Step)Is Scraping B2B Data Legal? The Three Lines That Actually MatterScraping vs Buying B2B Data: A Cost and Risk ComparisonHow to Scrape Data from Google Maps (3 Methods Compared)Finding Shopify Stores at Scale: Detection, Counts and What Is Actually Sellable
Open the full lead scraping guide

Customer reviews

2,400+ users. Real results.

Don't take our word for it

Replace your whole lead gen stack

Lead scraping, a 177M+ B2B database, email verification and cold email sending in one subscription. No credits, no seat pricing, cancel anytime.

Start from $19.90/mo
Cancel anytime, no contract Instant access 12,400+ teams