How to track renewals and expansion as Small Customer Success Teams

Customer SupportFor Small Customer Success Teams2 apps12 steps~24 min to set up

Your team of three is tracking renewals for 250 accounts in a combination of HubSpot deal stages, a shared Google Sheet someone built two years ago, and personal memory. Expansion signals — a contact asking about a second seat, usage spiking on a feature tied to an upsell — get noticed if the right person happened to be on the call. Churn risk lives in a usage dashboard that updates weekly, which means you're always a week behind. Gainsight and Catalyst would solve this, but they cost six figures and need a CS-ops person to configure. So renewals slip through, expansions get discovered late, and your Q4 forecast is a guess with a spreadsheet attached.

Customer SupportFor Small Customer Success Teams2 apps12 steps~24 min to set up
Outcome

What you'll set up

A renewal tracker that pulls live deal and contact data from HubSpot and surfaces accounts expiring in the next 90 days, organized by health score and last touch date — no manual entry required.
An expansion-signal feed that flags accounts showing upsell indicators (ticket volume drop, feature adoption, seat-limit messages) by connecting HubSpot, Intercom, and Zendesk through Starch's integration catalog.
A weekly renewal digest sent to your team's Slack that summarizes at-risk accounts, upcoming renewal dates, and open expansion opportunities — built entirely from the data you already have.
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.

Apps used
Data sources & config

Starch syncs your HubSpot data on a schedule (contacts, companies, deals, owners) and your Gmail data on a schedule (email threads and last-touch context). Connect Zendesk and Intercom from Starch's integration catalog — the agent queries them live when your renewal tracker or expansion feed runs. Slack is connected from Starch's integration catalog for the weekly digest automation.

Prompts to copy
Build me a renewal tracker that pulls from HubSpot — show every account with a renewal date in the next 90 days, their last activity date, their open support ticket count from Zendesk, and a health score based on those inputs. Let me filter by CSM owner and sort by risk.
Create an expansion-signal dashboard that flags accounts where usage has increased more than 20% month-over-month, where contacts have asked about additional seats in any email thread, or where they've hit a plan limit. Pull contact data from HubSpot and email context from Gmail.
Every Monday at 8am, send a Slack message to #cs-team with: accounts renewing in the next 30 days, accounts flagged as at-risk, and any accounts that showed an expansion signal this week. Pull from HubSpot for renewal dates and Zendesk for ticket trends.
Run these in Starch → or paste them into your favorite agent
Walkthrough

Step-by-step

1 Connect HubSpot — Starch syncs your contacts, companies, deals, and deal owners on a schedule. This becomes the spine of your renewal tracker: account names, contract values, renewal dates, CSM assignments.
2 Connect Gmail — Starch syncs your email threads so the renewal tracker can surface last-touch date per account without you logging it manually. If a CSM emailed an account two days ago, that shows up.
3 Connect Zendesk from Starch's integration catalog. The agent queries ticket volume and open issue counts live when your health score calculation runs — so a spike in tickets flags an account as at-risk before the CSM notices.
4 Connect Intercom from Starch's integration catalog. The agent queries conversation history live to catch expansion signals — contacts asking about more seats, hitting limits, or asking how to do something your next tier already supports.
5 Describe your renewal tracker in plain language. Tell Starch the fields that matter: renewal date, ARR, health score inputs, CSM owner, last outreach date, number of open tickets. Starch builds the app.
6 Set your health score logic conversationally — 'accounts with more than 3 open Zendesk tickets, no CSM email in 45 days, or usage down 15% are red; otherwise yellow or green.' Starch wires the logic without you writing a formula.
7 Build your expansion-signal view. Tell Starch what signals matter to your business — seat-limit messages in Intercom, feature adoption crossing a threshold, upsell mentions in Gmail threads — and it surfaces the matching accounts.
8 Set up the Monday morning Slack digest. Describe exactly what you want in the message: renewing in 30 days, at-risk accounts, expansion flags. Starch schedules the automation and formats the output for #cs-team.
9 Use the CRM app to assign follow-up tasks per account directly from the renewal tracker. When an account turns red, you can log a next action and own the account through renewal without switching tools.
10 Before each QBR cycle, ask Starch to generate a summary for a specific account: 'Show me Meridian Logistics — renewal date, ARR, support ticket history, last three email threads, open expansion signals.' Use that as the QBR input instead of building it from scratch.
11 Review and adjust the health score weights after your first renewal cycle. Tell Starch 'weight ticket volume more heavily and reduce the impact of last-touch date' — it updates the logic without a dev ticket.
12 Share the renewal tracker view with your manager or VP of Sales for the quarterly forecast conversation. The data is live from HubSpot — no export, no stale spreadsheet.

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

Q2 2026 Renewal Push — 18 accounts, $340K ARR

Sample numbers from a real run
Meridian Logistics48,000
Capsford Health31,000
Bluehill Partners27,500
Terrace Software22,000
Aldwick Manufacturing19,500
13 additional accounts192,000

In March 2026, your team had 18 accounts up for renewal in Q2 totaling $340K ARR. Before Starch, this list lived in a HubSpot saved view that nobody fully trusted and a Google Sheet the team lead updated manually on Fridays. Three accounts — Meridian Logistics ($48K), Capsford Health ($31K), and Bluehill Partners ($27.5K) — had gone dark for over 40 days with no CSM email logged. The Starch renewal tracker surfaced all three as red on day one because it pulled Gmail sync data directly rather than relying on manual HubSpot activity logging. Capsford Health had also submitted four Zendesk tickets in the prior two weeks — the Starch health score flagged it automatically. The Monday digest that week called out all three accounts to the #cs-team channel before anyone had to pull a report. The team reached out, discovered Capsford was evaluating a competitor, ran an emergency QBR using the Starch account summary (which pulled the full ticket history and last five email threads in one view), and saved the renewal. Bluehill Partners, flagged by Intercom conversation data showing they'd hit their seat limit twice in February, converted to an expansion conversation — the signal had been sitting in Intercom for six weeks before Starch surfaced it. Total renewals closed in Q2: $318K of $340K. The two losses were accounts that had gone silent before the tracker was in place.

Measurement

How you'll know it's working

Gross renewal rate (GRR) by quarter — percentage of ARR up for renewal that actually renewed, excluding expansions
Net revenue retention (NRR) — renewal ARR plus expansion ARR minus churn and contraction, expressed as a percentage of prior-period ARR
Average days to first CSM touch after renewal flag — how quickly your team acts on an at-risk signal
Expansion pipeline value — total ARR of accounts with an active expansion signal identified in the quarter
Accounts with no outreach in 45+ days — a leading indicator of churn risk your weekly Slack digest surfaces automatically
Comparison

What this replaces

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

Gainsight
Purpose-built CS platform with deep health scoring, but starts around $60K/year and assumes a dedicated CS-ops person to configure and maintain it — not built for a three-person team.
ChurnZero
Strong churn prediction and playbook automation, but similarly priced for enterprise CS teams and takes months to implement correctly without a CS-ops hire.
HubSpot Service Hub
You're probably already paying for HubSpot, and Service Hub adds ticket tracking, but it doesn't synthesize renewal health across HubSpot deals, support tickets, and email threads into a single ranked view without significant manual setup.
Google Sheets + HubSpot saved views
Free and already in place, but the renewal list is always stale, expansion signals get noticed by accident, and the weekly digest is someone's Friday afternoon job.
Catalyst
Cleaner UX than Gainsight for smaller CS teams, but still priced and scoped for companies with dedicated CS operations — not a three-person team covering 250 accounts without a CS-ops function.
On Starch RECOMMENDED

One platform — crm, sales agent crm 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. Why can't we just build this there?
HubSpot is great at storing deal and contact data. It's not built to synthesize that data with your Zendesk ticket volume and Gmail thread history into a live health score and a ranked renewal list. You can build saved views and reports in HubSpot, but pulling in support ticket trends as a health signal requires manual field updates or a HubSpot Operations Hub subscription. Starch connects to HubSpot, Zendesk, and Gmail and builds the surface on top — the tracker, the digest, the account summary — without replacing any of them.
Does Starch sync our full HubSpot history or just new activity?
Starch syncs your HubSpot contacts, companies, deals, and owners on a schedule — including historical records. For Gmail, Starch syncs messages and labels on a schedule. For Zendesk and Intercom, those are queried live from Starch's integration catalog when your app runs, so ticket data is current at query time rather than stored in Starch.
What if our renewal data is split between HubSpot and a spreadsheet right now?
Start with HubSpot as the source of truth and describe to Starch which deal stage or custom field holds your renewal date. If some accounts only exist in the spreadsheet, Starch can import from Google Sheets — connect it from Starch's integration catalog and tell Starch to merge records by company name or domain. It's not magic — you'll need to review duplicates — but it's faster than doing it by hand.
Is Starch SOC 2 certified? We have enterprise customers who will ask.
Not yet — Starch is not currently SOC 2 Type II certified. If your enterprise customers require a signed BAA or SOC 2 report before you can connect their account data, that's a real constraint to flag. Starch is the right fit for teams where that's not a blocker for internal tooling.
Can Starch actually write the Monday Slack digest or does someone still have to format it?
Starch writes and sends it. You describe what you want in the message — 'accounts renewing in 30 days, sorted by ARR; accounts flagged red this week; any expansion signals from Intercom or Gmail' — and Starch schedules the automation. The digest goes to your Slack channel at the time you set. Nobody formats it; nobody has to remember to run a report.
What's the difference between the CRM app and the Sales Agent CRM app for this use case?
The CRM app is the better starting point for a renewal tracker because it's built around contacts, companies, and deal history with Gmail and LinkedIn enrichment. The Sales Agent CRM connects to HubSpot and Apollo and is oriented more toward new-business pipeline. For tracking renewals and expansion on existing accounts, describe your use case to Starch using the CRM app as the base and customize from there — or build the renewal tracker as a standalone app on top of your HubSpot connection without using either template.

Ready to run track renewals and expansion on Starch?

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

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