Trustpilot & G2 Scraper: Negative Reviews & B2B Leads avatar

Trustpilot & G2 Scraper: Negative Reviews & B2B Leads

Pricing

from $1.00 / 1,000 review extracteds

Go to Apify Store
Trustpilot & G2 Scraper: Negative Reviews & B2B Leads

Trustpilot & G2 Scraper: Negative Reviews & B2B Leads

B2B scraper for Trustpilot and G2 reviews. Extracts 1-3 star negative reviews, competitor churn signals, pain point tags, and company profiles, then enriches official company websites for business emails, phones, LinkedIn, CMS/tech stack, and ad pixels.

Pricing

from $1.00 / 1,000 review extracteds

Rating

0.0

(0)

Developer

Juno Artha Dinamika

Juno Artha Dinamika

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Security

Limited permissions

Share

Trustpilot & G2 Negative Review Intent & Churn Lead Enricher

Turn 1-to-3 star competitor reviews on Trustpilot and G2 into B2B sales leads.

This Actor extracts negative reviews for any company, scores each review for churn intent (CRITICAL, HIGH, MEDIUM, LOW) by analyzing switching signals (pricing hikes, billing disputes, bugs, downtime, poor support), and enriches the target company's website with contact emails, phone numbers, social links, and installed software stack.


What data can you extract?

Data FieldDescriptionExample
Review Content & RatingStar rating (1–5), review title, full text, published date, verified status, direct review URL1 ★ — "Impossible to downgrade or cancel"
Competitor ResponseWhether the company replied (hasCompanyReply), reply text, and reply timestamphasCompanyReply: false (unanswered complaint)
Churn Intent ScoringNumeric score (0–100), urgency tier (CRITICAL, HIGH, MEDIUM, LOW), pain-point categories, and matched trigger phrasesScore: 88 (CRITICAL) — ["Active Churn / Cancellation", "Customer Support Failure"]
Reviewer ContextReviewer name, location/country, total reviews count, and parsed B2B role/industry hints when mentionedDaniel K. (US)
Company Website & ContactsTarget company domain, business emails, phone numbers, and social profiles (LinkedIn, X/Twitter, Instagram, YouTube, Facebook)zendesk.com, press@zendesk.com, linkedin.com/company/zendesk
Tech Stack & Ad PixelsInstalled pixels (Meta, TikTok, GTM, Google Ads, Klaviyo) and site stack (Next.js, Webflow, HubSpot, Intercom, Shopify)googleTagManager: true, Next.js

Common B2B Use Cases

  1. Competitor Displacement Campaigns (SaaS & Agencies): Monitor your top 5–10 competitors for new 1–2 star reviews mentioning "canceling", "switching from", "overpriced", or "terrible support".
  2. Reputation Management & PR Outreach: Identify businesses struggling with unanswered 1-star Trustpilot reviews (hasCompanyReply: false) and pitch review management, customer support automation, or AI helpdesk tools.
  3. Product & Sales Battlecards: Aggregate real customer complaints (painPointCategories) across competing software products to see exactly why users churn.

Input Parameters

ParameterTypeDefaultDescription
targetUrlsstring[]["https://www.trustpilot.com/review/hubspot.com", ...]Trustpilot (https://www.trustpilot.com/review/<domain>) or G2 (https://www.g2.com/products/<slug>/reviews) URLs.
companyDomainsstring[]["hubspot.com", "zendesk.com"]Shorthand company domains (automatically mapped to Trustpilot review pages).
maxStarRatinginteger3Maximum star rating to collect (1 = only 1-star reviews; 3 = 1, 2, and 3-star reviews).
painPointKeywordsstring[][]Optional custom keywords to boost intent scores (e.g., ["api limit", "migration", "hidden fee"]).
enrichCompanyContactsbooleantrueCrawl the company domain to extract emails, phone numbers, social profiles, and tech stack.
maxReviewsPerTargetinteger25Maximum qualifying reviews to extract per target company.
maxTotalChargeUsdnumber10.0Hard spending cap in USD for Pay-Per-Event billing.

Example Input JSON

{
"targetUrls": [
"https://www.trustpilot.com/review/zendesk.com",
"https://www.trustpilot.com/review/mailchimp.com"
],
"maxStarRating": 2,
"painPointKeywords": ["cancel", "switching", "support", "price increase"],
"enrichCompanyContacts": true,
"maxReviewsPerTarget": 25,
"maxTotalChargeUsd": 5.0
}

Output Example

{
"platform": "trustpilot",
"targetCompanyName": "Zendesk",
"targetCompanyDomain": "zendesk.com",
"targetReviewPageUrl": "https://www.trustpilot.com/review/zendesk.com?stars=1&stars=2",
"reviewId": "6714f9a28c19b40218e54c10",
"reviewUrl": "https://www.trustpilot.com/reviews/6714f9a28c19b40218e54c10",
"starRating": 1,
"reviewTitle": "Impossible to downgrade or cancel without 30 days notice",
"reviewText": "We have been paying $1,400/month and support takes 5 days to reply to basic tickets. When we tried to remove seats before renewal, billing locked us into another annual term. We are actively migrating our team to a new helpdesk.",
"publishedAt": "2026-10-18T14:22:10.000Z",
"dateOfExperience": "2026-10-15",
"isVerifiedReview": true,
"hasCompanyReply": false,
"companyReplyText": null,
"companyReplyDate": null,
"reviewerName": "Daniel K.",
"reviewerLocation": "US",
"reviewerTotalReviews": 4,
"reviewerCompanyHint": null,
"reviewerRoleHint": null,
"painPointCategories": [
"Pricing & Billing Dispute",
"Customer Support Failure",
"Active Churn / Cancellation"
],
"matchedKeywords": ["billing", "locked", "support", "migrating"],
"activeSwitchSignal": true,
"intentScore": 88,
"urgencyTier": "CRITICAL",
"recommendedOutreachAngle": "Highlight transparent month-to-month billing, fast onboarding migration, and responsive human SLA support.",
"companyEnrichment": {
"domain": "zendesk.com",
"scannedUrls": ["https://zendesk.com", "https://zendesk.com/contact"],
"emails": ["press@zendesk.com", "security@zendesk.com"],
"phones": ["+18886704887"],
"socials": {
"linkedin": "https://www.linkedin.com/company/zendesk",
"instagram": "https://www.instagram.com/zendesk",
"tiktok": null,
"youtube": "https://www.youtube.com/user/Zendesk",
"twitter": "https://x.com/Zendesk",
"facebook": "https://www.facebook.com/zendesk"
},
"adPixels": {
"metaPixel": true,
"tiktokPixel": false,
"googleTagManager": true,
"googleAds": true,
"klaviyo": false
},
"platformStack": ["Next.js"]
},
"extractionTier": "tier1_live_json",
"scrapedAt": "2026-10-21T16:45:02.119Z"
}

Pricing (Pay-Per-Event)

Company domain enrichment is deduplicated — if you extract 50 reviews for zendesk.com, company-contact-enriched is charged only once.

Event NamePrice (USD)Triggered When
actor-start$0.005Charged once when the run starts.
review-extracted$0.001A review matching your maxStarRating filter is extracted with churn & pain-point scoring.
company-profile-analyzed$0.002Charged once per target company profile analyzed for rating distribution & aggregate metrics.
company-contact-enriched$0.004Charged once per unique company domain when contact/tech-stack enrichment succeeds.

Integrations & Automation Workflows

Plug competitor churn signals directly into your revenue engine:

  • Clay.com / Smartlead / Instantly: Enrich negative review signals and route recommendedOutreachAngle, painPointCategories, and companyEnrichment.emails into automated competitor-displacement sequences.
  • Make.com / n8n / Zapier / Slack: Set up daily or weekly monitoring on your top 10 competitors and send real-time Slack alerts to Account Executives whenever a CRITICAL or HIGH churn review is posted.
  • CRM & Battlecards (HubSpot / Salesforce / Notion): Export structured pain-point breakdowns via CSV or JSON API to build live competitive intelligence dashboards.

FAQ

Do I need to enter full URLs or just company domains?
Either works. Pass simple domains in companyDomains (e.g., ["klaviyo.com", "activecampaign.com"]) or full review page URLs in targetUrls.