Weekly signal-based outreach drafts for stale accounts

Every Monday morning, surface target accounts that hit a fresh buying signal last week and queue personalized outreach drafts for your reps to review.

Agentic Task
ZoomInfoHubSpotGmailSalesEmail AutomationLead EnrichmentResearch & Monitoring

Build an agent workflow that wakes up every Monday at 8am in my timezone (cron trigger) and queues up signal-based outreach drafts for stale target accounts. The agent should reason its way through accounts, decide which ones have news worth acting on, and produce a personalized email draft plus a follow-up task for the owning rep.

Step 1 — pull the working list from HubSpot. Use HubSpot Search Companies to fetch active target accounts. Filter to: companies owned by SDRs (use List Owners / Get Owner to identify which HubSpot owners are on the SDR team, configurable as either a team id, a list of owner emails, or a property like hs_role) AND companies with no logged activity in the last 30 days (use notes_last_updated, num_notes, hs_lastmodifieddate, or notes_last_contacted as the staleness signal — pick whichever the user prefers, default to notes_last_contacted older than 30 days). Cap the working list at a sensible number per run (default 100) so we don't burn ZoomInfo credits.

Step 2 — pull fresh signals from ZoomInfo for each account. For every company in the working list, call ZoomInfo Get Company Insights to check for funding events, leadership changes, hiring anomalies, and intent spikes, and call ZoomInfo Enrich Scoops to pull recent buying signals (new offices, expansions, product launches, layoffs, etc.). Match HubSpot companies to ZoomInfo by domain first, falling back to company name. Batch where the operations support it (Get Company Insights accepts up to 50 companies).

Step 3 — judge whether the signal is worth acting on. Only proceed for accounts that have at least one meaningful signal dated within the last 7 days. 'Meaningful' should be a configurable threshold the user can tune; default to: any funding round, any VP-level-or-above leadership hire, a hiring spike of 10%+ in the last 30 days, a new office or expansion, or an intent spike on a topic the user has marked as relevant. Skip accounts where nothing material happened — do not draft anything for them, do not create a task, do not log them. The goal is high signal, not coverage.

Step 4 — draft a personalized outreach email in Gmail. For each qualifying account, use Gmail Create a Draft to create a draft email in the owning rep's Gmail (or a shared drafts inbox if the user prefers). The draft should: (a) open with a hook that names the specific event (e.g. "Saw you just closed your Series B — congrats" or "Congrats on bringing on [Name] as your new VP of Engineering"), (b) connect that event to a plausible reason it matters for our product in one or two sentences, and (c) end with a low-friction ask (15 minutes next week, a relevant resource, etc.). Keep it short, human, and specific to the event — no generic templates. Set the To: field to the best primary contact at the account (use HubSpot's primary contact for the company, or skip the To: and leave it blank if no good contact exists so the rep fills it in). Set a subject line that references the event.

Step 5 — create a HubSpot follow-up task. Use HubSpot Create Task to create a task on the company record, assigned to the owning rep, with subject like "Review signal-based outreach draft: <event summary>", a due date of today, priority HIGH, and a task body that summarizes (1) which signal fired, (2) the date of the signal, and (3) a link or reference to the Gmail draft (paste the draft id and a https://mail.google.com/mail/u/0/#drafts/<id> link). Associate the task to the company record.

Step 6 — log a short run summary. At the end of the run, the agent should record how many accounts were scanned, how many had qualifying signals, how many drafts were created, and which accounts were skipped and why. This is for the user to monitor over time and tune the threshold.

Configurable knobs the user should be able to set: the schedule, which HubSpot owners or team counts as 'SDRs', the staleness window in days, the working-list cap per run, the signal threshold (which event types count, minimum funding size, minimum seniority for leadership hires, hiring spike percentage), the lookback window for signals in days (default 7), the Gmail account or shared drafts inbox to write into, and intent topics to watch.

Additional information

What does this prompt do?
  • Pulls your active target accounts from HubSpot every Monday at 8am, focused on companies owned by your SDRs that have gone quiet in the last 30 days.
  • Checks each account against ZoomInfo for fresh signals from the past week: funding rounds, new executive hires, hiring surges, and office expansions.
  • Drafts a personalized outreach email in Gmail for every account with a meaningful signal, opening with a specific hook tied to the event.
  • Creates a HubSpot task on the account so the owning rep can review the draft, polish it, and send. Accounts with no real news are skipped to keep noise low.
What do I need to use this?
  • A HubSpot account with companies, owners, and tasks enabled, plus the ability to read company activity and create tasks.
  • A ZoomInfo seat with access to company insights and scoops.
  • A Gmail account for the rep or shared inbox where draft emails should land.
How can I customize it?
  • Adjust the schedule. Many teams want this on Sunday night, mid-week, or twice a week instead of Monday at 8am.
  • Tune the signal threshold. Decide which events count as worth reaching out about (any funding, only Series B and later, only senior leadership hires, etc.) and how recent they must be.
  • Change the staleness window. The default skips accounts with activity in the last 30 days, but you can widen or tighten that based on your motion.
  • Swap the output. Instead of a Gmail draft plus a HubSpot task, send a Slack DM to the rep, post in a channel, or write the draft straight into a HubSpot engagement.

Frequently asked questions

Will my reps get spammed with drafts every Monday?
No. The agent only drafts an email when an account has a meaningful signal from the last week. If nothing material happened at an account, it is skipped, so reps only see drafts that are worth their time.
Does this send the email automatically?
No. Every message lands as a Gmail draft and a HubSpot task is created for the owning rep to review, edit, and send. The rep stays in control of what actually goes out.
Which signals does it look at?
It uses ZoomInfo company insights and scoops, which cover funding rounds, leadership changes, hiring spikes, office openings, and other buying signals. You can narrow this down to just the events you care about.
What if my SDRs already touched the account recently?
The agent filters out accounts with activity in the last 30 days by default, so it focuses on truly stale relationships. You can shorten or extend that window to match your cadence.
Can I scope this to one team or one SDR?
Yes. You can limit the account pull to specific owners, teams, lists, or pipeline stages so the workflow only runs against the book of business you care about.

Turn buying signals into ready-to-send outbound every Monday.

Connect HubSpot, ZoomInfo, and Gmail once, and Geni quietly serves up personalized outreach drafts for every stale account that just had real news.