Daily competitor review monitor for G2, Trustpilot, and Capterra
Every day at 8am, surface new G2, Trustpilot, and Capterra reviews of your competitors and post a Slack digest with the harshest takes and what they imply.
Every day at 8am, monitor my competitors' public review pages on G2, Trustpilot, and Capterra and post a Slack digest of any new reviews.
Trigger: a cron schedule that fires once per day at 8am in my local timezone.
Inputs from Google Sheets. Use Get Values on a tab called 'competitors' that lists the competitor name in column A and the review page URL in column B (one row per competitor per review site, so a single competitor can have up to three rows: G2, Trustpilot, Capterra). Use Get Values again on a tab called 'seen' that holds a running log with columns for review ID, competitor, source site, posted date, title, rating, reviewer role, body, and the agent's take.
For each competitor review URL, call ScrapingBee's Extract Data with AI to pull the most recent reviews on the page. For each review extract: a stable review ID (the URL fragment, anchor, or a hash of source + competitor + posted date + reviewer + title if no native ID is exposed), review title, star rating, body text, reviewer role or job title, and posted date. Render JavaScript and use premium proxy when needed so G2 and Capterra don't block the request.
Dedupe the scraped reviews against the IDs already in the 'seen' tab. Only the reviews whose IDs are not already logged should move forward.
For each genuinely new review, write a one to two sentence agent take that classifies the sentiment (positive, mixed, or negative) and names the single biggest praise or complaint theme (for example: onboarding friction, pricing surprise, integrations gap, support quality, performance, missing feature). Keep the take grounded in the review body, do not invent details.
Append the new reviews to the 'seen' tab with Append Values so they are not reported again tomorrow. One row per new review with all the fields above plus the agent's take.
If there is at least one new review, send a Slack message to the configured channel using Slack's Send a Message. The digest should:
Lead with a one-line summary of how many new reviews landed and across which competitors.
Highlight the most critical reviews first (lowest ratings or harshest sentiment), with competitor name, source site, star rating, a short quote, and a link to the review.
List notable positive reviews after the critical ones, kept brief.
End with a one-paragraph 'what this implies' read per competitor that ties the new reviews together into a working theory about that rival's current weaknesses.
If no genuinely new reviews are found across any competitor that day, skip the Slack post entirely. Do not send an 'all quiet today' message.
Make competitor list, source URLs, the Google Sheet ID, the Slack channel, and the run time easy to change without editing the agent instructions.
Additional information
What does this prompt do?
- Checks the public review pages of every competitor you list once a day and pulls out any review you haven't seen before.
- Reads each new review and writes a short take on the sentiment and the main praise or complaint behind it.
- Posts a Slack digest that leads with the most critical reviews and ends with a one-paragraph read on what they imply about each rival's weaknesses.
- Logs every review it finds back to your Google Sheet so the same review never appears in the digest twice.
What do I need to use this?
- A ScrapingBee account so the workflow can render and read public review pages.
- A Google Sheet with one tab listing the competitor review URLs you want to track and a second tab the workflow can append a running log to.
- A Slack workspace and a channel where the morning digest should land.
How can I customize it?
- Add or remove competitors by editing the URL list in your Google Sheet, no workflow changes needed.
- Change the run time from 8am to whenever your team kicks off the day, or move it to weekly.
- Point the digest at a different Slack channel, or have it skip days when no new reviews appeared (the default).
Frequently asked questions
Which review sites does this work with?
Do I need a paid ScrapingBee plan?
Will the same review ever show up in the digest twice?
What happens on days with no new reviews?
Can I get the digest in email instead of Slack?
Stop missing what customers say about your rivals.
Connect Google Sheets, ScrapingBee, and Slack once. Geni watches G2, Trustpilot, and Capterra every morning and only pings the team when something new lands.