How to clean up stale deals in your pipeline as Small Customer Success Teams

Sales & CRMFor Small Customer Success Teams3 apps12 steps~24 min to set up

Your expansion pipeline lives in HubSpot, but no one's touched half those deals in 60+ days. You know the ones — the account that went quiet after the kickoff call, the upsell you flagged in a QBR that never got followed up, the renewal that's technically 'open' but the champion left three months ago. A 3-person CS team covering 250 accounts doesn't have time to audit the pipeline manually every week. So stale deals pile up, your forecast looks rosier than reality, and you're making renewal prioritization decisions based on data you haven't refreshed since last quarter.

Sales & CRMFor Small Customer Success Teams3 apps12 steps~24 min to set up
Outcome

What you'll set up

A live stale-deal tracker that surfaces any CS deal untouched for 30+ days, pulled directly from HubSpot and your Gmail thread history, so you can see the real pipeline in one view instead of cross-referencing tabs
An automated weekly digest that flags each stale account with its last contact date, open renewal value, and a one-line suggested next action — delivered to Slack every Monday morning before your team standup
A triage workflow that lets any team member mark a deal as 'reactivating,' 'at risk,' or 'closing lost' directly from the Starch app, writing the status back through HubSpot so your CRM stays current without a separate data-entry step
The Starch recipe

Apps, data, and prompts

The combination of Starch apps, the data sources they pull from, and the prompts you use to drive them.

Data sources & config

Starch syncs your HubSpot data on a schedule (contacts, companies, deals, and owners) and syncs your Gmail on a schedule (message threads and labels) — both update automatically so your stale-deal view reflects data from earlier today, not last export. Slack is connected from Starch's integration catalog; the agent queries it live when posting your Monday digest. Intercom and Zendesk are reachable from Starch's integration catalog if you want to pull support ticket recency as an additional staleness signal.

Prompts to copy
Show me every open deal in our CS pipeline where the last activity date is more than 30 days ago, grouped by renewal value, and flag any where the primary contact's email address is no longer showing activity in Gmail.
Every Monday at 8am, pull all stale deals from HubSpot, check Gmail for any recent thread with each account, and post a ranked list to our #cs-team Slack channel with: account name, days since last touch, ARR at stake, and a one-sentence suggested action.
Build me a CS pipeline view that shows deal stage, days stale, assigned CSM, and a health indicator based on last email date — let me filter by CSM and sort by renewal date.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Connect HubSpot — Starch syncs your deals, contacts, companies, and owners on a schedule. No manual export needed; the data refreshes automatically and sits in Starch's database ready to query.
2 Connect Gmail — Starch syncs your team's inboxes on a schedule, pulling message threads so it can check the last time anyone on your team actually emailed each account, not just the last time someone clicked 'log activity' in HubSpot.
3 Connect Slack from Starch's integration catalog so the Monday digest has somewhere to land. Takes about 90 seconds.
4 If you use Intercom or Zendesk for support tickets, connect either from Starch's integration catalog — the agent can query ticket recency live as a secondary signal for whether an account is truly dormant or just quiet on the sales side.
5 Start with the Sales Agent CRM app as your base — it already handles deal tracking and Gmail context. Customize the schema to add CS-specific fields: renewal date, ARR, CSM owner, health status.
6 Tell Starch what 'stale' means for your team: 'A deal is stale if no Gmail thread with the primary contact exists in the last 30 days AND no HubSpot activity has been logged in the last 30 days.' Starch writes this as a persistent rule, not a one-time filter.
7 Build the Monday automation: describe it in plain language — 'Every Monday at 8am, pull all deals matching our stale rule, rank them by renewal ARR descending, and post the top 10 to #cs-team in Slack with last touch date and a one-line suggested action.' Starch builds and schedules this automatically.
8 Add a triage action to each deal row: a dropdown where any CSM can set 'Reactivating / At Risk / Closing Lost.' Wire this to update the HubSpot deal stage directly, so the action in Starch doesn't create a second source of truth.
9 Build a lightweight Task Manager integration: when a CSM marks a deal 'Reactivating,' Starch automatically creates a follow-up task assigned to that CSM with a due date 5 business days out. Tell Starch: 'When a deal status changes to Reactivating, create a task for the assigned CSM: Re-engage [account name] — due in 5 business days.'
10 Run a one-time audit: ask Starch 'How many open deals in HubSpot have had zero Gmail activity in the last 60 days, and what's the total ARR at stake?' Use the answer to right-size your pipeline before the next forecast conversation.
11 Review the digest together in your Monday standup — the ranked list becomes the meeting agenda. Each CSM owns their accounts on the list and commits to a next action in the meeting, logged immediately in Starch.
12 Revisit the staleness threshold each quarter. If your team's average deal cycle changes, update the rule in plain language: 'Change the stale threshold from 30 to 45 days for enterprise accounts over $50k ARR.' Starch updates the logic without touching a config file.

See this running on Starch

Connect your tools, describe what you want, and the agent builds it. Closed beta is free.

Try it on Starch →
Worked example

Q1 2026 Stale Pipeline Audit — March 3 Monday Digest

Sample numbers from a real run
Meridian Logistics (renewal April 1)48,000
Coldstream Analytics (renewal March 15)22,500
Hartwell Properties (upsell open 67 days)14,000
Sequoia Fleet (expansion flagged in QBR, no follow-up)9,800
Paragon Health (champion left Jan 12, deal still open)31,000

On March 3, your Monday digest landed in #cs-team at 8:02am. Five accounts, $125,300 in ARR, all stale by the 30-day rule. Meridian Logistics had a renewal in 28 days but the last Gmail thread was from January 19 — six weeks of silence before a $48k renewal. Coldstream had a renewal in 12 days; no HubSpot activity, no Gmail thread since February 4. Paragon Health's deal was technically open but the champion who signed the original contract left in January and nobody had updated the contact or reached out to the new VP. In your standup, each CSM took ownership: Meridian and Coldstream got same-day outreach, Hartwell and Sequoia got follow-up tasks due by Friday, and Paragon got marked 'At Risk' with a new stakeholder-mapping task. Total time spent in the meeting: 18 minutes, versus the 90-minute manual HubSpot audit you'd been doing monthly. The HubSpot deal stages updated automatically when CSMs changed status in Starch — no double entry.

Measurement

How you'll know it's working

Days since last customer touch per open deal (by CSM and by account tier)
Total ARR in deals flagged stale, tracked week-over-week to see if the backlog is shrinking
Reactivation rate: percentage of stale deals that convert to a logged activity within 5 business days of appearing in the Monday digest
Forecast accuracy: difference between pipeline ARR at month-start and actual closed/renewed ARR — stale deal cleanup directly improves this
Time-to-triage: how quickly after a deal goes stale does a CSM take a logged action (target: under 5 business days)
Comparison

What this replaces

The other ways teams handle this today, and how the Starch version compares.

Gainsight or ChurnZero
Built specifically for CS health scoring and renewal tracking, but start at $40k+/year, require a CS-ops person to configure, and assume a team large enough to justify the overhead — a 3-person team will spend more time administering the tool than using it.
HubSpot deal filters + manual audit
Free if you're already paying for HubSpot, but 'last activity date' in HubSpot only counts logged activities — it misses the Gmail thread your CSM sent from their personal inbox, which is usually where real conversations happen.
Spreadsheet + calendar reminders
Works until you're covering 100+ accounts; after that the spreadsheet is always stale and the calendar reminders pile up faster than anyone acts on them.
Salesforce + Sales Cloud automation
Powerful staleness rules and workflow triggers are possible, but you need an admin to build them and the licensing cost for a 3-person CS team rarely makes sense unless your company is already Salesforce-standardized.
On Starch RECOMMENDED

One platform — sales agent crm, crm, task manager all running on connected data. Setup in plain English; numbers stay current via scheduled syncs and live agent queries.

Try it on Starch →
FAQ

Frequently asked questions

We already have HubSpot. Does Starch replace it or work alongside it?
Alongside it. Starch syncs your HubSpot data on a schedule — deals, contacts, companies, owners — and lets you build surfaces on top that HubSpot doesn't ship, like a stale-deal digest that cross-references Gmail thread recency. Your CSMs keep logging in HubSpot. Starch just makes the data more useful and automates the Monday audit you're currently doing by hand.
What counts as 'last activity' — does Starch look at HubSpot activity logs or actual emails?
Both, and you decide which ones count. Because Starch syncs both HubSpot and Gmail on a schedule, you can define staleness as 'no logged HubSpot activity AND no Gmail thread with the primary contact in the last 30 days.' This catches the common gap where a CSM emailed from their Gmail account but forgot to log it in HubSpot.
What if an account's primary contact left and we don't know who to reach out to now?
That's exactly the kind of thing the stale-deal audit surfaces. You can tell Starch: 'Flag any deal where the primary contact's email hasn't generated a thread in 60 days as a contact-risk.' From there, Starch can use LinkedIn — connected through browser automation — to look up who currently holds the relevant role at that company, so your CSM has a name before they pick up the phone.
We use Zendesk for support tickets. Can Starch factor in support activity when deciding if an account is stale?
Yes. Connect Zendesk from Starch's integration catalog; the agent queries it live. You can then build a staleness rule that says 'last touch includes any open or recently resolved Zendesk ticket' — so an account with active support volume isn't incorrectly flagged as abandoned just because no CSM has emailed them.
Is Starch SOC 2 certified? We're dealing with customer data.
Not yet — Starch is not currently SOC 2 Type II certified. That's worth factoring in depending on your customers' data handling requirements. If your contracts include specific data security provisions, check with your legal team before syncing CRM data through any new platform.
What if we want the stale-deal digest to go to individual CSMs, not a shared Slack channel?
Tell Starch exactly that: 'Instead of posting to #cs-team, send each CSM a direct Slack message with only their own stale accounts.' The automation updates without rebuilding anything — Slack is queried live from Starch's integration catalog and the routing logic is just part of the natural-language description of the automation.
Can we track whether reactivation efforts actually worked, or is this just a to-do list?
You can close the loop. Build a view in Starch that shows: account flagged stale on date X, CSM action taken on date Y, deal outcome (renewed / expanded / closed lost) on date Z. Over a quarter, you'll have actual data on which reactivation plays work for which account types — something your current HubSpot setup can produce in theory but rarely does in practice for a small team without a RevOps person to pull the report.

Ready to run clean up stale deals in your pipeline on Starch?

Request closed-beta access. Everything is free during beta.

You're on the list! We'll be in touch soon.