How to track renewals and expansion with AI

Customer Support3 AI tools6 steps6 friction points

Tracking renewals and expansion is one of those workflows that starts simple and compounds into a real problem. You have customers on annual or monthly contracts, some with upsell potential, and you need to know who's coming up for renewal, who's a churn risk, and who might actually buy more. Miss a renewal window or forget to follow up on an expansion conversation, and the revenue quietly walks out the door.

The workflow feels like an AI problem because the underlying task is pattern-matching across a lot of text and dates. You're reading email threads, pulling contract end dates, scanning CRM notes, and trying to surface 'who needs attention this week.' That's exactly the kind of synthesis a language model is good at — reading signals across scattered inputs and producing a prioritized list of next actions.

ChatGPT, Claude, and Gemini can genuinely help here. You can paste in CRM exports, email threads, or deal notes and ask the model to flag renewal dates, score expansion likelihood, or draft outreach. The analysis you get is often solid. The limitation is that you have to manually gather and paste the inputs every single time, the model has no memory of last week's run, and nothing happens automatically when a renewal date crosses a threshold.

Customer Support3 AI tools6 steps6 friction points
AI walkthrough

How to do it with AI today

A practical walkthrough using ChatGPT, Claude, and other off-the-shelf LLMs — what they're good at, what you'll have to do by hand.

Tools that work for this
ChatGPTClaudeGemini
Step-by-step
1 Export your current customer list from your CRM or a spreadsheet — include columns for contract start date, renewal date, ARR, last contact date, and any expansion notes — and save it as a CSV.
2 Open ChatGPT or Claude and paste the CSV contents directly into the chat window along with the current date, so the model can calculate days-to-renewal accurately.
3 Ask the model to identify accounts renewing in the next 60 days, flag accounts with no contact in the last 30 days as churn risks, and list accounts that have grown usage or headcount as expansion candidates.
4 Take the model's prioritized account list and paste in the last 2-3 email threads or call notes for each high-priority account. Ask the model to summarize relationship health and suggest a specific next action for each.
5 Use the model to draft renewal outreach or expansion conversation starters for each account — give it the account name, ARR, renewal date, and any relevant context from the notes you pasted.
6 Copy the outputs into a doc or spreadsheet manually, share with your team, and set calendar reminders for follow-ups. Next month, repeat from step one.
Prompts you can copy
Here is my customer list with renewal dates and last contact dates. Today is [date]. Flag every account renewing in the next 60 days and sort them by ARR descending.
These are the CRM notes for [Account Name], renewing in 45 days with $24k ARR. Summarize relationship health and write a renewal outreach email that references their specific use case.
Based on this account list, which customers have gone 30+ days without any contact and are renewing within 90 days? List them with renewal date, ARR, and last contact date.
This customer has added 4 new users in the past quarter and is on our Starter plan. Write a short expansion conversation opener for our next check-in that doesn't feel pushy.
Look at these 10 accounts. Which ones show the strongest expansion signals based on the notes — increased usage, new team members mentioned, or comments about needing more features?
Reality check

Where this gets hard

The walkthrough above works — until your numbers change, the LLM hallucinates, or you have to re-paste everything next month.

No live connection to your CRM or billing data — every run requires you to manually export, clean, and paste the latest account list before the model can do anything useful.
The model has no memory between sessions — next month's renewal review starts completely from scratch, with no continuity from the analysis you ran last month.
Large customer lists hit context limits fast — paste in 150 accounts with notes and you'll either get truncated output or have to split the analysis into multiple sessions manually.
Outputs aren't consistent across runs — the prioritization logic or output format you got last week may shift this week, making it hard to compare results or track whether the list is getting better.
Nothing happens automatically when a renewal date crosses a threshold — the model only acts when you sit down and run the prompt, so accounts can slip through in busy weeks.
Drafting outreach for 20 accounts means 20 separate conversations or one very long prompt — there's no built-in way to batch-process personalized emails based on live account context.

Tired of the friction?

Starch runs the whole workflow on live data — no copy-paste, no hallucinated numbers, no re-prompting next month.

See the Starch version →
Starch alternative

The same workflow on Starch

Starch is an agentic operating system — it builds and runs the persistent renewal-tracking app your team needs, connected to your live CRM, email, and billing data, so accounts don't slip through because nobody ran the prompt this week.

Start with the CRM starter app — it syncs your contacts, companies, deals, and email thread history on a schedule, so your renewal dates and last-contact data are always current without manual exports.
Describe the renewal tracker you need in plain English — 'show me all accounts renewing in the next 90 days, sorted by ARR, with a churn risk flag for any account with no contact in 30 days' — and Starch builds that view as a persistent dashboard.
Connect Gmail or Outlook through Starch's integration catalog; the agent reads email threads to surface relationship signals — who's gone quiet, who mentioned a budget freeze, who asked about adding seats — and pulls those into the renewal view automatically.
Set an automation that runs every Monday and sends you a Slack summary of the week's renewal priorities, expansion candidates, and accounts overdue for contact — no prompt to re-run, no manual assembly.
Use the Sales Agent CRM app if you're already on HubSpot or Apollo — Starch connects directly to those, pulls live deal and contact data, and layers the renewal-tracking logic on top of what you already have.
Ask Starch to draft personalized renewal outreach for every account renewing in the next 30 days, pulling account name, ARR, and recent email context — then review and send, rather than writing each one from scratch.
Get closed-beta access →
Toolkit

Starch apps for this workflow

Pick your role

See this workflow by operator

Run track renewals and expansion on Starch

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