Pause
What this offer does
Pause stops new invoices from generating for a fixed window. The subscription stays status='active' and the customer keeps access through what they already paid for. Billing resumes automatically on the resume date. See The five offers — Pause for the full description.
Pause is monthly-only (interval='month' AND interval_count=1). See Unusual subscriptions for the rationale.
Configuration
In your Unchurn dashboard, under Widget → Pause, you configure:
| Field | Type | Range |
|---|---|---|
pause_enabled | boolean | toggles the entire offer |
pause_durations | integer array | each value is months, 1–6, max 6 entries |
pause_cooldown_days | integer | 0–365 (per-customer, applied after resume) |
Pause durations
Each entry in pause_durations becomes a button on the pause screen (“1 month”, “3 months”, etc.). The default is [1, 3]. The customer picks one and we set resumes_at = now + months * 30 days.
Cooldown
After a customer resumes, the widget won’t offer pause again for pause_cooldown_days days. This stops the pattern where a customer pauses, resumes for a day, and pauses again indefinitely. The default is 90 days.
Behavior is locked to void
We always send behavior: 'void' to Stripe. Stripe’s other option (mark_uncollectible) can apply customer balance before marking invoices as uncollectible, which produces an ambiguous outcome. Merchants can’t change this. See Unusual subscriptions.
What gets called on Stripe
When the customer accepts, we pause collection on the subscription. resumes_at is calculated using calendar-month math, not a fixed 30-day window — pausing on Jan 31 for one month resumes on Feb 28.
// app/lib/offers/pause.ts
import dayjs from 'dayjs';
const resumesAt = dayjs.utc().add(months, 'month').unix();
await stripe.subscriptions.update(subscriptionId, {
pause_collection: { behavior: 'void', resumes_at: resumesAt },
});New invoices during the window are voided immediately. The subscription itself stays active. See the Stripe pause-payment reference .
When this offer is hidden
The widget hides the pause tile for non-monthly subscriptions, subscriptions with an active discount, and subscriptions with unresolved open invoices. Stripe doesn’t void pre-existing invoices during a pause, so pausing while invoices are still being retried gives the customer a confusing partial result. See Supported subscriptions for the complete list.
Common configurations
Three options, 90-day cooldown. Short, medium, and long pauses — a standard SaaS setup.
{
"pause_enabled": true,
"pause_durations": [1, 2, 3],
"pause_cooldown_days": 90
}Single 3-month pause, longer cooldown. Fewer choices, and a longer wait before the next pause is available.
{
"pause_enabled": true,
"pause_durations": [3],
"pause_cooldown_days": 180
}Pitfalls
- Annual customers never see this offer. If you have a meaningful annual cohort, expect the dashboard to show pause as unavailable for those sessions.
- Any unresolved invoice blocks pause. Resolve open invoices before the customer tries to pause.
- Cooldown counts from the resume date, not the accept date. A customer who pauses for 3 months with a 90-day cooldown can’t pause again for 6 months total.
Next steps
- Plan switch — the typical second offer when pause is declined
- The five offers — the conceptual overview
- Supported subscriptions — full eligibility rules