Guide
Custom Attributes in Cancellation Flow Routing
Plan and interval get you far, but many teams need richer signals: industry, sales-assist vs self-serve, experiment cohort, or “strategic account” flags from Salesforce. Custom attributes let your app pass those signals into cancel-flow routing at session time.
Cluster hub: cancellation flow segmentation. Stripe wiring after the flow: build a Stripe cancellation flow.
Last updated October 13, 2026
What to pass as custom attributes
| Attribute type | Example use | Risk if stale |
|---|---|---|
| Boolean flags | is_enterprise_contract, beta_cohort | Wrong flow if CRM sync lags |
| Numeric thresholds | health_score, seats_active | Needs documented refresh cadence |
| String enums | sales_channel = assisted | self_serve | Typo breaks matching |
Design rules that stay maintainable
- Prefer a small set of documented keys shared with engineering and CS
- Combine custom rules with plan rules only when both are necessary
- Log which flow matched in session metadata for debugging misroutes
- Avoid one-off flows per customer — use CRM outreach instead
Session-time context
ChurnIntel evaluates audience rules when the widget session starts, using subscription context from Stripe plus customer attributes your backend supplies. Attributes must be present at that moment — a nightly batch update is too late for a cancel click five minutes later.
Do not pass PII you do not need in routing (full email, government IDs). Use opaque account flags.
Test routing before launch
- Matrix-test representative accounts per flow priority
- Confirm default flow when attributes are missing
- After deploy, spot-check misroute reports from support
Custom attributes in audience rules
ChurnIntel supports custom attribute conditions on priority-ordered cancellation flows alongside Stripe plan and interval rules.