Add friction in your product to reduce churn

One of the few cases when adding friction is a good thing is when users are about to cancel their subscription.

Instead of letting them cancel with one click, use this opportunity to make them stay.

Adding an offboarding flow to your cancellation process will help you save some of the churning users and collect qualitative feedback from the rest.

Users signed up for your product for a reason - remind them of the value they’ll lose (data, history, etc.) if they cancel their account (loss aversion).

Then, if they still want to cancel, ask what's the reason they're leaving.

Based on their answer, you can offer them a salvage offer and try to retain them.

Some example offers you can use to make them stay:

  • Downgrade to a lower pricing plan - if price is the reason
  • Let them pause their account - if price is the reason
  • Offer extra training to help them get more value out of the product - if they didn't get the value they expected

Even if you fail to retain them, such offboarding flow will let you collect some valuable feedback that will help you make the experience better for other users.

Are you using an offboarding flow? What worked best for you?

  1. 16

    No offense, this would definitely qualify as a dark pattern.

    You make it difficult for users to cancel, you cement in their minds that your app is untrustworthy and mafia-like.

    They feel helpless and powerless, and that's definitely not the kind of feelings you want to evoke in your users.

    For Zlappo, I've had more than my fair share of users who cancelled and re-subscribed before.

    I made it super-easy for them to cancel, if that's what they choose to do.

    (literally just two clicks, and the second is just to ensure they didn't accidentally click the cancel button)

    I don't do oily things like stopping them in their tracks, hiding the cancel button, making them write in to cancel, etc. etc.

    You want to do offer all that other stuff? Gather feedback?

    Do it after they've cancelled.

    They're more likely to tell you the "not real" reason before they've successfully cancelled, because they just want to tell you what you want to hear to get you off their backs.

    If you ask them a day later, and give them the power of anonymity, you're more likely to get an honest, candid answer.

    Bonus tip

    You want to rescue your cancelled customer?

    Don't cancel their subscription right away -- cancel it at the end of the billing period.

    Let them know clearly that they're welcome to come back and use it until the end of their subscription.

    People do change their minds and cancel their cancellations, if you provide them the opportunity to still benefit from what they already paid for.

    It has happened to me before, that's for sure.

    1. 2

      I guess I didn't make it clear enough - I definitely don't recommend adding so much friction that it will be hard for users to cancel. There's a fine line with such things for sure.

      Adding one extra step to the flow obviously doesn't qualify to be a dark pattern and isn't something your users will hate you for ;)

      What you want to avoid is what WSJ does, which is ridiculous and honestly should be illegal:

      Re: canceling subscription at the end of billing period - sure, I guess that's the standard way of doing it. They paid for the whole period after all.

      1. 3

        Adding one extra step to the flow obviously doesn't qualify to be a dark pattern

        Depends on what the step is. If it's e.g. an offer to downgrade to a lower plan, it's still a dark pattern. The user already looked at the options before making a decision to cancel.

        The step needs to be genuinely helpful to the user (not you). An example of getting it right: this spring, I was about to cancel my TrainerRoad (cycling training app) subscription – I figured I was not going to be using it during the summer months. Before cancellation, they reminded me I was on a grandfathered plan, and I would not be able to return to it. I ran the numbers and concluded I'm better off staying on the grandfathered plan even during the off months.

        1. 1

          The step needs to be genuinely helpful to the user (not you).

          Exactly. My perspective: put yourself in the user's shoes. Do you really like it when you want to cancel and you have to go through several different pages? Surface information that's useful to them. If you think they might be cancelling out of ignorance, you could give them a link to talk to you or select a complaint. But don't make it required.

  2. 5

    I think the better strategy is to take all the effort you’d spend on an offboarding flow, and use it to make your product better so they don’t want to cancel in the first place.

    1. 1

      Offboarding is just another aspect of optimizing your retention.

  3. 3

    I strongly disagree with this.

    I'm a grown up and most users of our products will be grown ups. It's more than likely that they've weighed things up and made a decision to leave.

    When i've ended things in the past and they've tried things like this i still leave, but i do so with a bad taste in my mouth.

    When cancelling is easy and friction free i leave the product acknowledging that they're a class act and with a positive sentiment.

    1. 1

      When cancelling is easy and friction free i leave the product acknowledging that they're a class act and with a positive sentiment.


      By the time they've made the decision to leave, anything obstructing the action to cancel can only damage you further.

      Let them leave first, do the other stuff later after some time has passed, if you so choose (e.g. upsell, downsell, feedback, etc.).

  4. 2

    I make it incredibly easy for users to cancel anytime. Otherwise, get used to payment disputes, emails about refunds, etc.

    This also builds trust. The user knows it's really easy to cancel any time, and is more willing to try out the app because they know if it's not for them they can dip out unnoticed.

    1. 1

      Agreed. Don't make it hard to cancel but know why they're canceling.

      1. 3

        That's exactly what adding friction is though - making something more difficult to do. Maybe a different term would fit better? I would focus more on understanding why your customer are leaving, as well as letting them know their options, in ways that don't impede or slow their ability to cancel (not adding friction)

      2. 1

        Sure. I just have an automated email that goes out and asks them if there's anything I can help with.

  5. 2

    For most IndieHackers, who will (probably) be in the range of 10-100 users, they can take time to do things that don't scale and actually talk to their users before they churn.

    I agree with the other feedback that you should make cancellation frictionless, and then reach out for genuine reasons a day or so later. Most people will just blindly click whatever to cancel.

Trending on Indie Hackers
My SEO experience 26 comments How long did it take to build your MVP? 7 comments The best way to use Webflow (financially speaking) 4 comments PostureNet is Featured on ProductHunt 3 comments My first year of making money on the internet 🤑 This is how it went... 2 comments Giveaway: free Gumroad landing page builder 2 comments