The 90-60-30 Triage: Auditing a Renewal-Risk Account List
Objective: Given a synthetic 20-account renewal list with renewal dates and last-contact dates, apply the lesson's day-90/60/30 structure to flag which accounts are already overdue for a health check.
You're on the retention marketing team at Mailchimp, reviewing renewal readiness across 20 mid-market accounts whose contracts end this quarter.
Compute days-to-renewal and days-since-last-contact for every account, then flag anyone inside the day-90 window with zero logged contact as an urgent health-check.
Before you start
What you'll need
Free path (everything below is enough to finish)
Free, no account friction, handles a 20-row export easily
The process
1 step
Step 01 of 01
The lesson's structure is day-90 internal health check, day-60 value conversation (QBR), day-30 commercial close, and it has to flex around the customer's own budget-planning window, not just your contract date.
Of the 20 accounts, 6 are inside 90 days of renewal with no logged contact since their last QBR. Which accounts get triaged first, and why does 'no contact' matter more than 'days remaining' alone?
Procedure
- Import the 20-row export and freeze row 1
- Add a days-to-renewal column: renewal_date minus today
- Add a days-since-last-contact column: today minus last_contact_date
- Filter to days-to-renewal <= 90 AND days-since-last-contact > 30
- Sort the flagged rows by days-to-renewal ascending
URGENT HEALTH CHECK (6 accounts, sample) Acct-114 | renews in 42 days | last contact 61 days ago Acct-108 | renews in 58 days | last contact 74 days ago Acct-121 | renews in 71 days | last contact 55 days ago ...3 more rows ON TRACK (14 accounts) Acct-101 | renews in 88 days | last contact 12 days ago ...13 more rows
Healthy
Every account inside the day-90 window has a logged contact within the last 30 days.
Unhealthy
Acct-114 renews in 42 days, already inside the day-30 commercial-close window, with no contact logged in over two months.
What this means
Days-to-renewal alone hides risk. An account with 90 days left but no recent contact is in worse shape than one with 60 days left and an active QBR on the calendar.
So what do I do about it?
| Symptom | Action | Effort |
|---|---|---|
| Renewal list sorted only by days-to-renewal | Re-sort by days-since-last-contact within the 90-day window first | 5 min |
| Account inside day-30 window with zero prior contact | Escalate for an emergency health check today, not a scheduled QBR | 30 min |
Final deliverable
A triage sheet flagging every account inside the 90-day window with no recent contact, sorted by urgency.
See a reference example
Squarespace Renewal Triage, Q3 (excerpt) URGENT (renews < 90 days, no contact > 30 days) 1. Studio Plan accounts, agency tier, renews in 38 days, last touch 65 days ago 2. Enterprise storefront accounts, renews in 51 days, last touch 70 days ago ON TRACK 3. accounts with a QBR logged in the last 30 days
Success criteria
You're done when you can:
- Correctly computes both date columns for all 20 accounts
- Flags every account meeting both conditions, not just the earliest renewal dates
- Explains why days-since-last-contact matters more than days-to-renewal alone