Weekly ABM warm accounts digest to Slack

By General Input

Every Monday at 8am, score your target account list by last week's web and intent activity, then post the top movers to a Slack channel for the team.

Integrations

  • Factors.ai
  • Google Sheets
  • Slack Bot

Type

Agentic Task

Categories

  • Sales
  • Marketing

Build me a weekly ABM warm accounts digest that runs every Monday at 8am on a cron trigger. The workflow should be an agent that uses Google Sheets, Factors.ai, and Slack Bot.

Step 1. Read my target account list from Google Sheets. Use the Get Values operation against my target accounts spreadsheet. The sheet has one row per company and at least a column named 'domain'. Treat the domain column as the canonical identifier for each account. Capture any other useful columns (company name, owner, tier) and carry them through so we can show them in the final message.

Step 2. For each domain from the sheet, call Factors.ai using the Get Account Journey operation for the trailing 7 days (from = today minus 7 days, to = today). Factors identifies accounts by their domain, not by an internal ID, so the sheet column maps directly. Collect the returned user-level timeline: events, event names, distinct user identifiers, and last_seen timestamps.

Step 3. Score each account by engagement. Use a transparent rubric: count of sessions in the window, presence of high-intent events (anything containing 'pricing', 'demo', 'contact', 'book', or 'trial'), number of distinct users from the account, and how recent the last_seen timestamp is. Drop accounts with zero activity. Rank the remaining accounts by score, descending.

Step 4. Post a single Slack message to the #abm-pipeline channel using the Slack Bot Send a Message operation. Format it as a digest with the top 10 ranked accounts. For each account, write a one-liner that includes: company name (or domain if no name), the headline activity from the past 7 days, the named contacts seen (user names or emails from Factors when available), and a short 'why now' hook explaining what's interesting about the signal (e.g. 'three people from the account, two pricing visits, hadn't seen them in a month').

Step 5. Below the top 10, include a 'Watchlist movers' callout that lists any accounts which had zero activity in the prior 7 days but became active this week. This is the cold-to-warm transition list. Keep it to at most 5 movers.

Formatting notes for the Slack message: use Slack mrkdwn (single asterisks for bold, not double). Lead with a short header that includes the date range. Use a bulleted list for the top 10. Put the 'Watchlist movers' callout in its own section under a bold label. Keep the whole message under Slack's practical readability limit (one screen on desktop), and prefer concise one-liners over multi-line bullets.

Edge cases: if Factors returns 404 for a domain, treat it as no activity (don't fail the run). If the sheet is empty, post 'No target accounts configured this week' and stop. If every account is silent, post a short 'Quiet week, no warm accounts to surface' message instead of an empty digest. Cap the number of Factors calls per run at the sheet size, and process them serially to be polite to the API.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentLocal listing health board for every location you manageLet support send one-off Loops emails without an engineerA brand asset library your marketing team actually searchesTurn Mailjet email clicks into ranked HubSpot follow-upsClean out the Looker dashboards and Looks nobody opensStop cold emails to anyone with a live deal in PipedriveLiveKit live operations console for room moderationWake up dormant Keap leads with a researched reasoniMessage campaign console with pre-flight checks and delivery board