Daily intent triage queue your SDRs work every morning

By General Input

See which target accounts actually visited your site this week, ranked so one repeat visitor cannot top the list, and work every row to a decision.

Integrations

  • Factors.ai
  • HubSpot
  • Slack

Type

App

Categories

  • Sales

Build me a daily signal triage queue that my SDRs open each morning instead of chasing intent alerts in Slack. It should be a worked surface with per-row state, not a dashboard and not a digest: every account in it ends the morning with a decision recorded in the CRM.

The main view is a ranked list of target accounts. Build the account list from HubSpot using Search Companies, filtered to a target-account property (let me pick which company property and value marks a target account in setup). Add an optional toggle for 'only my accounts' that uses HubSpot List Owners to match the logged-in rep's email to their HubSpot owner record, then filters the company search by hubspot_owner_id. Also exclude any account whose queue-state property says it is snoozed with a future snooze-until date, or marked not a fit.

For each company in that CRM-sourced list, take the company domain and call the Factors.ai Get Account Journey operation for that one domain over the last 7 days. Factors is strictly one domain at a time and has no list-all-accounts endpoint and no pagination, so the app must fan journey lookups out over the domain list that came from HubSpot rather than expecting a feed of all visitors. Run those lookups concurrently with a sensible cap, cache the results for the session so re-ranking does not re-fetch, skip companies with a missing or obviously invalid domain, and treat a 404 from Factors as 'no activity in the window' rather than an error. Show a small progress indicator while the fan-out runs so a rep with a few hundred target accounts sees the list fill in rather than staring at a blank screen.

Each row shows: company name and domain, the account owner from HubSpot, session count in the window, number of distinct visitors, the last-seen date as a relative label like '2 days ago', and the pages that were hit, with the most notable ones surfaced first and the rest collapsed behind a count. Clicking a row opens the full journey timeline for that account, grouped by person rather than as one flat event stream, so the rep can see that three different people looked at pricing instead of one person looking at it three times. Show each person's visits in time order with page and timestamp, and show their Factors user properties where present.

Rank the queue by a recency-weighted score computed across distinct visitors, not raw pageview counts. Each distinct visitor contributes based on how recently they were last seen, with recent activity worth far more than activity at the start of the window, and the account score is the sum across visitors with diminishing returns on repeat sessions from the same person. The rule to bake in is that one noisy repeat visitor must never top the queue over an account where several different people showed up. Show the score as a simple visual rank indicator, and let the rep hover or expand to see the plain-language reason such as 'four people, most recent yesterday'.

Every row carries three dispositions. 'Work it' creates a HubSpot task with Create Task, assigned to that account's owner, associated to the company, with a due date of today and a subject and body that summarize the signal, for example the visitor count, last-seen date, and top pages. 'Snooze' hides the account from the queue for 14 days. 'Not a fit' drops it out of the queue for good. All three save back to a HubSpot company property using Update Company, so the queue state lives in the CRM rather than a side database: write the disposition value, the timestamp, the rep who made the call, and the snooze-until date where relevant. After a write, refresh that single company with Get Company so the row reflects what is actually stored, and let the rep undo a disposition immediately after acting in case of a misclick.

Add a 'Research this account' button on each row and on the detail view that kicks off a background agent. The agent re-reads that account's Factors.ai journey with Get Account Journey, researches the company on the web for recent news, positioning, funding, and hiring signals, then writes a short brief titled 'why they are warm and what to open with' that ties the specific pages those specific people visited to a concrete opening line. The agent posts the brief onto the company record with HubSpot Create Note, and the app renders it inline under the row so the rep reads it in place without opening HubSpot. Show a clear running state while the agent works, and keep previously generated briefs visible so a rep can re-read yesterday's without regenerating.

Next to the brief, add a 'Share' button that sends the same brief to a Slack channel using Send a Message, formatted with the company name, the signal summary, and the suggested opener, with the rep able to pick the channel and add a line of their own before it goes.

Design notes: this is a morning queue, so default the sort to the recency-weighted score descending and make the three disposition buttons the most obvious thing on every row. Keep the empty state honest, saying no target accounts showed activity in the last 7 days rather than showing a fake list. Show a small header count of accounts left to triage today so a rep knows when they are done.

Related prompts

Explore more prompts
Call overdue Xero customers with an AI collections agentWin back LiveChat visitors whose chats went unansweredTurn Mailjet email clicks into ranked HubSpot follow-upsiMessage campaign console with pre-flight checks and delivery boardChat quality review board for LiveChat support leadsA searchable RFP answer library your bid team drafts fromSee which target accounts just started advertising on LinkedInAccount health board that puts product usage next to your CRMLook up a customer's full chat history mid conversationLusha prospecting workbench with credit-safe reveals