Rescue stalled HubSpot deals with new stakeholder research

Every weekday morning, find HubSpot deals that have gone cold, surface fresh senior stakeholders at the company, and drop a Slack briefing for the deal owner.

Agentic Task
HubSpotRocketReachSlack BotSalesLead EnrichmentNotifications & AlertsResearch & Monitoring

Build me a stalled-deal rescue agent that finds new stakeholders to re-engage when a HubSpot opportunity goes cold.

Trigger: cron, every weekday (Monday through Friday) at 8:00am in the workspace's local timezone.

On each run, do the following:

1. Call HubSpot Search Deals to pull all open deals (deals not in a closed-won or closed-lost stage) where the deal stage has not changed in 21 or more days and the amount is above a configurable threshold (default $25,000). Filter on hs_lastmodifieddate as a safety net and on the deal stage's last-changed timestamp so freshly-edited deals do not slip in. Cap the run at a configurable maximum (default 25 deals) to stay polite with downstream APIs.

2. For each stalled deal, use HubSpot Get Company on the deal's associated company to read the company domain and key firmographics, and HubSpot Get Contact on the deal's primary contact to capture the existing champion's name, title, and email.

3. Call RocketReach Search People to find decision-makers at that company. Target senior titles (VP and above, plus C-level and Head-of) in the functions most likely to unblock the deal. The function mix should depend on the deal's product line: pick RevOps, Finance, and Procurement for revenue-tooling deals; Engineering, Security, and IT for technical deals; and Operations or People for HR-tech deals. Exclude anyone whose email or LinkedIn already matches the existing champion or any other contact already associated with the deal.

4. For the top two or three search results per deal, call RocketReach Person Lookup to get verified email and phone. Respect RocketReach's soft cap of 5 requests per second across the whole run, and honour any Retry-After header on 429s. Use lookup_type "standard" by default; do not over-spend credits.

5. Compose a short re-engagement brief per deal containing: the deal name, amount, current stage, days stalled, and a HubSpot deep link to the deal; who the existing champion is; the two or three new stakeholders with title, verified email, verified phone (when found), and LinkedIn URL; a one-line rationale for why each new contact might unblock the deal; and a suggested two-sentence opening line tailored to that person's role.

6. Use Slack (slackbot) Send a Message to post the brief in the deal owner's Slack channel (configurable: a per-owner channel like #deals-<owner-handle>, a shared #deal-rescue channel, or a DM to the owner). Tag the deal owner by Slack user ID so they get pinged. Use Slack mrkdwn for formatting and make the deal name a clickable link to the HubSpot deal.

7. Use HubSpot Create Note to append the same brief (plain text, no Slack mrkdwn) as a note on the deal so the research lives in the CRM. Associate the note with the deal id.

Configurable inputs the user should be able to set: stall threshold in days (default 21), minimum deal amount (default 25000), maximum deals per run (default 25), the function-to-titles mapping per product line, the Slack channel routing rule, and the timezone for the 8am trigger.

Skip and log (do not crash) any deal where: the company has no domain, RocketReach returns zero qualifying stakeholders, or all returned stakeholders fail verification. At the end of the run, post a single summary line to the rescue channel: "Reviewed N stalled deals, posted briefs for M, skipped K (reason breakdown)."

Additional information

What does this prompt do?
  • Scans your HubSpot pipeline each weekday for sizeable deals that have been frozen for three weeks or more.
  • Researches each stalled deal's company and surfaces two or three new senior decision-makers who could re-open the conversation.
  • Pulls verified email and phone for each new contact so the rep can reach out the same day.
  • Posts a Slack brief to the deal owner with a deep link back to the deal and a suggested opening line for each stakeholder.
  • Saves the research as a note on the HubSpot deal so the work lives in the CRM, not in a one-off message.
What do I need to use this?
  • A HubSpot account where you can read deals, companies, and contacts and write notes back to the deal.
  • A RocketReach plan with API access for finding new stakeholders and verified contact info.
  • A Slack workspace, plus the channel or DM where each deal owner should receive their briefings.
How can I customize it?
  • Change the stall window (default 21 days) and the minimum deal size you want the workflow to bother with.
  • Tune which senior roles get pulled per product line, like RevOps and Finance for one product, Engineering and Security for another.
  • Pick where the brief lands: a single shared rescue channel, a DM to each deal owner, or a per-owner channel.
  • Move the run time or cadence, for example Tuesday and Thursday only, or 7am instead of 8am.

Frequently asked questions

Will this re-ping the existing contact on the deal?
No. The point is to find net-new stakeholders. The existing champion is referenced for context, but the workflow only researches and suggests outreach to people who are not already on the deal.
How does it decide which deals count as stalled?
It looks at how long it has been since the deal last moved stages and the deal amount. You set both thresholds, so a small deal sitting for a week will not trigger a rescue, but a six-figure deal sitting for 21 days will.
What if RocketReach cannot find verified email or phone for a stakeholder?
The Slack brief still goes out with whichever stakeholders were identified. It clearly flags any contact that is missing email or phone, so your rep knows which leads are ready to action and which need more digging.
Will it run on weekends?
By default it runs Monday through Friday at 8am. You can switch to any cadence, including weekends, in the schedule settings.
Does the research get saved anywhere besides Slack?
Yes. The same briefing is appended as a note on the HubSpot deal, so the new stakeholders and the rationale stay attached to the CRM record long after the Slack message scrolls off.

Stop letting six-figure deals die in your pipeline.

Connect HubSpot, RocketReach, and Slack once. Every weekday at 8am, Geni finds the deals going cold and hands your reps a fresh way in.