Skip to main content

Renewals

The renewals table tracks upcoming and historical contract renewals. Each renewal carries an 8-variable risk score and follows a 7-state disposition lifecycle.

Core Fields

FieldTypeSourceDescription
idUUIDSystemUnique identifier
account_idUUIDSystemParent account (FK to accounts)
opportunity_idUUIDSystemLinked opportunity (FK to opportunities), nullable
arrDECIMAL(14,2)CRM SyncAnnual Recurring Revenue at stake
renewal_dateTIMESTAMPCRM SyncContract renewal date
dispositionENUMSystemCurrent renewal disposition state
risk_scoreINTEGERComputed0-100 renewal risk (higher = riskier)
risk_levelVARCHAR(20)Computedlow, medium, high, critical
owner_idUUIDCRM SyncRenewal owner (FK to users)
auto_renewBOOLEANCRM/ManualWhether the contract auto-renews
save_play_idUUIDSystemActive save play if risk is elevated
outcome_reasonTEXTManualReason for final outcome (churn reason, etc.)

8-Variable Scoring Inputs

These fields feed the renewal risk scoring model:
FieldTypeWeightDescription
usage_trendINTEGER25%Percent change in MAU (negative = declining)
stakeholder_healthINTEGER5%0-100 stakeholder stability
support_burdenINTEGER20%0-100 support escalation burden
contracting_momentumINTEGER15%0-100 contracting activity level
executive_sponsor_engagedBOOLEAN10%Whether exec sponsor is active
nps_scoreINTEGER10%Net Promoter Score (0-10)
payment_healthVARCHAR(20)5%on_time, late_payment
market_contextVARCHAR(30)10%growth, stable, budget_flat, budget_cuts, budget_crisis, fiscal_review

Disposition Lifecycle

NOT_YET_DUE → APPROACHING → URGENT → SAVE_IN_PROGRESS → RESOLVED/RENEWED/CHURNED
DispositionDescription
NOT_YET_DUERenewal is >90 days out
APPROACHING30-90 days until renewal
URGENTunder 30 days until renewal
SAVE_IN_PROGRESSActive save play running
RESOLVEDRisk mitigated, renewal expected
RENEWEDContract renewed (terminal)
CHURNEDCustomer lost (terminal)

Indexes

IndexColumnsPurpose
renewals_account_idxaccount_idFilter by account
renewals_date_idxrenewal_dateSort by renewal date
renewals_disposition_idxdispositionFilter by state
renewals_risk_idxrisk_scoreSort by risk level