How to monitor Stripe subscriptions in Slack

Get new subscribers, upgrades, downgrades, cancellations, and ending trials posted to Slack. Then read what each Stripe subscription event means and who on the team should act.

The ChargeBell Team

Updated October 1, 2026. 7 min read.

How we check provider claims

To monitor Stripe subscriptions in Slack, connect Stripe and Slack in ChargeBell and turn on four alerts: new subscriber, plan changed, subscription canceled, and trial ending. Route each one to a channel someone owns and send a test alert. The first three are on by default. Trial ending is off until you turn it on.

Short answer

When someone subscribes, check the status and welcome them. When a plan changes, check whether it went up or down. When someone cancels, find out why and whether they are still paying. When a trial is about to end, check that the customer has a card on file. Alerts show an MRR change when Stripe's price data allows it.

  1. 1

    Connect Stripe and Slack

    Give ChargeBell read-only access to Stripe, add it to Slack, and pick a channel for each alert type.

  2. 2

    Turn on the subscription alerts

    New subscriber, plan changed, and subscription canceled are on by default. Turn on trial ending if you offer trials.

  3. 3

    Check delivery

    Send a test alert. When a real subscription event arrives, compare it with the subscription in Stripe.

Which Stripe subscription events reach Slack

Stripe reports the subscription lifecycle with a few events. customer.subscription.created fires for a new subscription. customer.subscription.trial_will_end fires three days before a trial ends. customer.subscription.deleted fires when a subscription has ended. Almost everything else arrives as customer.subscription.updated.

That last event covers plan switches, status changes, and scheduled cancellations, so you have to compare the new state with the previous one to know what happened. ChargeBell does that comparison. It posts a plan changed alert when the price or quantity changes and a cancellation alert when a customer schedules a cancellation. It ignores status flips and metadata edits. Stripe doesn't send an MRR figure, so ChargeBell calculates one when the price and billing interval are available.

New subscribers

A new subscription is good news, but created doesn't mean paid. A subscription can start as trialing or incomplete, and Stripe sends the created event before any payment is due on a trial. Check the status before you count the revenue.

# wins

ChargeBellAPP

🎉 New subscriber: $49.00/mo

acme@example.com · Pro (monthly)

MRR +$49.00 · View in Stripe

  • Who acts. The founder or whoever runs onboarding.
  • What to do. Send a personal welcome and check that the customer reached the first useful step in your product.
  • What to watch. For a trial, whether it converts. For an incomplete subscription, whether the first payment goes through.

Upgrades and downgrades

The plan changed alert shows a signed MRR change when the price data is there. A positive number is an upgrade and a negative number is a downgrade. Check the effective price in Stripe before you report it.

# wins

ChargeBellAPP

⬆️ Plan upgraded to Growth (annual)

+$83.33 per month, effective today

MRR +$83.33 · View subscription

  • Upgrades. The founder or account owner thanks the customer and asks what made them upgrade, such as more seats or a specific feature. That answer tells you what to sell next.
  • Downgrades. The founder or customer success asks what changed. Customers often downgrade before they cancel, so ask while they are still paying.
  • Patterns. Several downgrades from the same plan usually point at pricing or packaging, not at individual accounts.

Cancellations

Stripe records why a subscription ended in cancellation_details.reason. The value is cancellation_requested when the customer chose to leave, payment_failed when payment retries ran out, and payment_disputed after a dispute. Open the subscription in Stripe to see which one applies.

# founders

ChargeBellAPP

😕 A subscriber canceled ($99.00/mo)

Pro plan · subscription ended

MRR −$99.00 · View in Stripe

  • The customer chose to leave. Send an exit question or a win-back offer. If your cancel flow collects feedback, Stripe stores it in cancellation_details.feedback, so read it first.
  • A payment failed. The customer didn't choose to go, and a card update request often brings them back. The failed payment alerts guide shows how to catch these earlier.
  • Who acts. The founder on a small team, customer success on a larger one.

Scheduled cancellations give you time

When a customer cancels at the end of the billing period, Stripe sets cancel_at_period_end and sends customer.subscription.updated. Stripe sends customer.subscription.deleted only when the paid period ends. ChargeBell posts the cancellation alert when the customer schedules it, so you hear about it while they are still paying.

Trials about to end

Stripe sends customer.subscription.trial_will_end three days before a trial period ends, or right away if the trial is shorter than that. It is the only subscription event that arrives before the outcome. Remind the customer what they get and check that they have a card on file. The trial ending alert is off by default.

ChargeBell doesn't post an alert when a trial converts, because that is a status change. Check the subscription in Stripe. A move from trialing to active means it converted. canceled, past_due, or incomplete means it didn't, or the payment failed. Treat a failed payment at conversion like an involuntary cancellation.

Subscription schedules and plan changes

A subscription schedule changes a subscription automatically on set dates. When a schedule moves to a phase with a different price or quantity, Stripe updates the subscription and sends customer.subscription.updated. ChargeBell can then post a plan changed alert, even though nobody clicked anything that day. ChargeBell does not alert on the subscription_schedule.* events themselves.

Reading the MRR change

When an alert has enough price data, ChargeBell converts the change to a monthly amount. An annual plan at $1,000 counts as $83.33 a month. Trial ending alerts have no MRR figure, and a payment alert is not an MRR report. Use Stripe and your accounting rules for the final numbers.

Each change falls into one bucket: new, expansion, contraction, churn, or reactivation. Net new MRR is new plus expansion, minus contraction and churn. The buckets tell you why MRR moved, which the total alone can't. See MRR movements for the definitions.

Where each subscription alert should go

AlertChannelWho actsFirst move
New subscriber#winsFounder or onboardingWelcome them and check trial or paid
Upgrade#winsFounder or account ownerThank them and ask what drove it
Downgrade#foundersFounder or successAsk what changed
Cancellation#foundersFounder or successCheck the reason, then win back or ask for a new card
Trial ending#foundersFounder or onboardingRemind them to add a card
ChargeBell routes each alert type to its own channel, so wins and cancellations don't share a feed.

Keep wins and cancellations apart. People read a #wins channel. A channel that mixes celebrations and cancellations teaches them to skim both.

The weekly MRR digest

Single alerts tell you when to act. The weekly pattern tells you what to change. ChargeBell's weekly digest groups the week's MRR changes into new subscribers, upgrades, and cancellations and downgrades, then reports the net change and the biggest single win:

# founders

ChargeBellAPP

📊 MRR this week: $8,312

MRR $8,312 · +$312 this week

Change: +$312 · Movement: New +$294 · Upgrades +$166 · Cancellations and downgrades −$148

Biggest win: Acme Corp upgraded (+$83/mo)

Digests are on every plan and don't count toward the free plan's 50 alerts a month. For churn rate, LTV, and cohorts, use a metrics tool such as ProfitWell Metrics. ChargeBell tells you when a single subscription needs attention. For payment alerts in the same setup, see how to get Stripe payment notifications in Slack. For the full list of events worth watching, see what Stripe events a founder should monitor.

Key takeaways

  • Turn on new subscriber, plan changed, subscription canceled, and trial ending, and route each to an owned channel.
  • Stripe has no separate upgrade or downgrade event. ChargeBell reads customer.subscription.updated and posts a plan change with the MRR difference.
  • Check the status of a new subscriber before counting the revenue.
  • Check cancellation_details.reason. Send a win-back offer to customers who chose to leave and a card update request to those whose payment failed.
  • Keep wins and cancellations in separate channels, and read the weekly digest for the pattern.

Frequently asked questions

How do I monitor Stripe subscriptions in Slack?

Connect Stripe and Slack in ChargeBell, turn on the new subscriber, plan changed, subscription canceled, and trial ending alerts, and route each to a channel. ChargeBell reads Stripe's subscription events and posts a plain message with the plan and MRR change.

How do I tell an upgrade from a downgrade in Stripe?

Both arrive as customer.subscription.updated. Compare the previous attributes with the new subscription and check the price in Stripe. ChargeBell's plan changed alert shows a signed MRR change when the price data is available, positive for an upgrade and negative for a downgrade.

Is a new subscriber alert confirmed revenue?

Not always. Stripe creates the subscription before any payment is due on a trial, and a subscription can also start as incomplete. Check the status. Active means paying. Trialing means the revenue depends on the trial converting.

Why didn't a scheduled cancellation fire customer.subscription.deleted?

Because the subscription hasn't ended yet. Setting cancel_at_period_end sends customer.subscription.updated. Stripe sends customer.subscription.deleted when the paid period ends. ChargeBell alerts you when the cancellation is scheduled, so you can talk to the customer while they are still paying.

Do Stripe subscription schedules trigger Slack alerts?

Indirectly. When a schedule moves to a phase with a new price or quantity, Stripe updates the subscription, and ChargeBell can post a plan changed alert. ChargeBell does not alert on subscription_schedule events themselves.

Can ChargeBell change my subscriptions in Stripe?

No. ChargeBell connects with read-only Stripe access. It reads subscription events to send alerts, but it can't cancel, upgrade, or edit a subscription, or move money.

Primary sources