# Free trial canceled immediately on iOS: why and what to do

> On iOS, many free trials get canceled within a minute, but access stays open until the end. Here's why, and what Apple lets you do to keep those trials.

Original page: [Free trial canceled immediately on iOS: why and what to do](https://devoria.fr/en/blog/free-trial-canceled-immediately-ios)
Author: [Mehdi Azizi](https://devoria.fr/en/mehdi-azizi)
Published: 2026-11-04
Content last revised: 2026-11-04


On iOS, a free trial canceled within a minute isn't a lost trial. **Canceling only turns off auto-renewal: the person keeps access until the trial ends, and can turn it back on.** Canceling early costs them nothing, and Apple tells them to cancel at least 24 hours before the end. To keep those trials, make the value visible before the end date, keep every promise written on your paywall, and only use the levers Apple allows.

I publish my own iOS apps, and this guide is based on my numbers. On TradaZen, my trading simulator, two out of three annual trials started between October 20 and 23, 2026 were canceled. On Nolera, my AI outfit try-on app, every trial started over one month was canceled, between 2 and 42 minutes after it began. The rules quoted here come from Apple's pages, reread on November 3, 2026.

## What "canceled" means on iOS

When someone taps Cancel Subscription during their trial, the subscription doesn't stop. On the server side, Apple sends a [renewal status change notification](https://developer.apple.com/documentation/appstoreservernotifications/notificationtype): `DID_CHANGE_RENEWAL_STATUS`, with the subtype `AUTO_RENEW_DISABLED`. Expiration comes later, in a different notification, `EXPIRED` with the subtype `VOLUNTARY`: the subscription expired after the customer turned off renewal.

Apple tells the user too. On the App Store page [About in-app purchases](https://apps.apple.com/fr/story/id1436214772): "If you cancel, your subscription will end at the end of the current billing cycle." Until then, the person can come back and turn renewal back on.

If you use RevenueCat, the event is called `CANCELLATION`. Its [events documentation](https://www.revenuecat.com/docs/integrations/webhooks/event-types-and-fields) gives the reason in `cancel_reason`. `UNSUBSCRIBE` means the subscriber canceled themselves, at the moment they do it, not at expiration. `BILLING_ERROR` means the store couldn't charge the payment method.

> On TradaZen, more than one "cancellation" in four, over one month, was a payment failure, not a cancellation. Before concluding anything, separate the two.

## Why so many trials get canceled within a minute

### Apple tells people to cancel early

[Apple's cancellation help page](https://support.apple.com/fr-fr/118428) says: "If you signed up for a trial subscription and you don't want to renew it, cancel it at least 24 hours before the trial ends." Since access continues until the end, canceling right away costs nothing. **A cancellation within the minute may just be insurance against forgetting, not a verdict on your app.**

I didn't find any Apple page that promises a reminder email before a trial ends. Don't count on it, and don't promise it to your users on Apple's behalf.

### The payment sheet catches people off guard

The purchase ends on Apple's payment sheet, which your app doesn't control. If your paywall highlights a weekly price, the sheet shows, on my apps, the annual amount charged at the end of the trial. That gap surprises people. On its [subscriptions page](https://developer.apple.com/app-store/subscriptions/), Apple actually asks you to clearly show the trial length and the price charged afterward in the purchase flow.

On Nolera, the paywall was highlighting the weekly price at the time. From October 12 to 20, 2026, more than four out of five people who tapped the trial button closed Apple's sheet without confirming. The confirmed trials were then all canceled.

### The trial is taken "to see," before seeing anything

On Nolera, cancellations came early, often before the app had delivered on its promise. One person left the app 40 seconds after the trial started. Another photographed 10 clothing items in 5 minutes without seeing a single outfit, then stopped on the screen asking for a full-body photo. Another left 90 seconds after their first try-on. Another spent 30 minutes on the main screen, where a "Manage my trial" card was visible. None of the people who canceled came back to the app.

### It's not a notification

TradaZen sends no notifications during the trial. That's a rule of the app, checked in the code. The quick cancellations still happened: so it wasn't an app notification that triggered them.

## Two cancellations you shouldn't mix up

Canceled trials don't all tell the same story. On TradaZen, a quarter of cancellations came in under 10 minutes, and three quarters after 5 to 63 hours of use. Here's the grid I use to read them.

| When the cancellation happens | My reading                        | The lever                                     |
| ----------------------------- | --------------------------------- | --------------------------------------------- |
| Within the minute             | Caution, or surprise at the price | Clear price, visible trial status             |
| During the first session      | The promise isn't delivered yet   | Show the result before any effort             |
| After several sessions        | They like the app, not the price  | A cheaper plan, an honest message             |
| One or two days later         | The person never reopened the app | A reason to come back, allowed and opted into |

The third case surprised me. On TradaZen, people who canceled late were just as active as the ones who paid: as many sessions, as many lessons. **Usage didn't separate them. The offer did.** Several even kept playing after canceling. They like the app, they reject the price.

The fourth case is different. These people have a big first session, never reopen the app, then cancel from Settings a day and a half to two days later. No screen in the app can keep them, since they never see it.

## What Apple allows to keep a trial

| Lever                                                     | What Apple says                                      |
| --------------------------------------------------------- | ---------------------------------------------------- |
| Show the trial length and the price charged afterward     | Required in the purchase flow                        |
| Show the subscription status in the app                   | Recommended, with a simple way to manage it          |
| Open subscription management from the app                 | `showManageSubscriptions(in:)` allows it             |
| Offer a retention offer to someone who turned off renewal | Suggested as long as the subscription hasn't expired |
| Offer a different subscription level                      | Suggested, if it fits the person better              |
| Ask for the reason for canceling                          | A survey is given as an example                      |
| Show a message on the cancellation screen                 | Possible with Retention Messaging                    |

These rows come from [Apple's subscriptions page](https://developer.apple.com/app-store/subscriptions/), except the last one, taken from the Retention Messaging API documentation. The subscriptions page also asks you to always keep easy access to the system screen where people cancel. **Keeping a trial means giving a reason to stay, never making it harder to leave.**

Two levers need more detail.

**The reminder before the trial ends.** A notification requires the person to have allowed it. If it's used to sell, [guideline 4.5.4](https://developer.apple.com/app-store/review/guidelines/#4.5.4) requires explicit consent, shown in your app, and a way to opt out. The details are in my guide on [push notifications](https://devoria.fr/en/blog/guideline-4-5-4-push-notifications-rejection).

**The message on the cancellation screen.** Apple's [Retention Messaging API](https://developer.apple.com/documentation/retentionmessaging) shows your message when the person taps Cancel Subscription, on a confirmation page (Confirm Cancellation). The cancel button stays there. In RevenueCat, an "Is in free trial" rule lets you target trials, according to its [documentation on this API](https://www.revenuecat.com/docs/platform-resources/apple-platform-resources/apple-retention-messaging-api). You have to request access to the API from Apple: I requested it for my apps on October 25, 2026, and on the 28th, the answer still hadn't come. Formats, limits and setup are in my guide on the [Retention Messaging API](https://devoria.fr/en/blog/apple-retention-messaging-api-message-before-cancel).

One lever doesn't work here: the win-back offer. According to [App Store Connect Help](https://developer.apple.com/help/app-store-connect/manage-subscriptions/set-up-win-back-offers), it targets former subscribers based on a minimum paid subscription duration, of at least one month. A trial that was never paid doesn't qualify.

## What's forbidden

| Practice                                               | Apple rule                                                                                     |
| ------------------------------------------------------ | ---------------------------------------------------------------------------------------------- |
| Hiding the trial length or the price charged afterward | [3.1.2(c)](https://developer.apple.com/app-store/review/guidelines/#3.1.2), subscriptions page |
| Getting people to subscribe under false pretenses      | 3.1.2(a), removal from the App Store                                                           |
| Requiring a task to get what's paid for                | 3.1.2(a): posting, sharing contacts                                                            |
| Tricking, pressuring, piling up obstacles              | [5.6](https://developer.apple.com/app-store/review/guidelines/#5.6), code of conduct           |
| Promising a reminder that nothing actually delivers    | 5.6, in my reading: a misleading practice                                                      |

5.6 is broad. It forbids tricking customers into unwanted purchases, and any other manipulative practice, in the app or outside it. On TradaZen, I got a 5.6 rejection for a paywall whose close button opened an offer instead of closing the screen. Apple didn't point to the element in question: I explain what I fixed in [guideline 5.6 and the paywall](https://devoria.fr/en/blog/guideline-5-6-paywall-app-store-rejection). The required paywall disclosures are in [guideline 3.1.2](https://devoria.fr/en/blog/guideline-3-1-2-app-rejected-subscription).

## What I changed on Nolera

**Keep the written promise.** Nolera's flow promised "I'll let you know 24 hours before you're charged." When the app stopped sending notifications during the trial, that sentence couldn't stay with nothing behind it. A trial card, on the app's main screen, keeps the promise: end date, price, and a "Manage my trial" button. It stays there, even though it makes canceling easier.

**Show the outfit before asking for effort.** After the purchase, there were nine work screens before the first outfit: camera, clothes, full-body photo, measurements, try-on. Half the cancellations came before or right after the first try-on. The full-body photo and measurements were removed from the first flow. The first clothing item goes straight to try-on, on a stand-in figure provided by the app. That leaves seven screens instead of nine.

I don't have enough trials on this version yet to say whether it retains better. I'll go through the cancellations screen by screen once I do.

## The checklist to read your own cancellations

- **Separate cancellations from payment failures.** In RevenueCat, read the `cancel_reason` of each `CANCELLATION`.
- **Measure the delay** between the start of the trial and the cancellation: the minute, the first session, the following days.
- **Note the last screen seen** before the cancellation, version by version.
- **Compare usage** between late cancelers and paying users. If it's the same, it's the offer you need to rework, not the app.
- **Look at who keeps using the app** after canceling: they're your best candidates for a different plan.
- **Reread your paywall**: the trial length and the price charged afterward must be readable without searching.
- **Check every promise** on the paywall: if you announce a reminder, something has to deliver it.
- **Keep the management link** visible in the app, even if it costs you a few cancellations.

The other paywall mistakes that drive people away before the trial even starts are in [the 7 iOS paywall mistakes](https://devoria.fr/en/blog/ios-paywall-beginner-mistakes). Setting up the trial itself is covered in [the App Store Connect introductory offer](https://devoria.fr/en/blog/introductory-offer-app-store-connect-ios-free-trial).

## An honest paywall from the start

The [iOS & Android Kit](https://devoria.fr/en/kits/ios) starts from my apps' starter code: onboarding, paywall and subscriptions are already coded. The four-step path takes you all the way to the App Store, at your own pace. The whole chain is described on the [iOS in-app subscription](https://devoria.fr/en/expertise/ios-in-app-subscription) page.

If you're preparing your first release, [take the free diagnostic](https://devoria.fr/en/diagnostic): it tells you what's really blocking your project and sends you my Apple anti-rejection checklist.

## Frequently asked questions

### Why do users cancel the free trial right after starting it?

Canceling right away costs them nothing: access continues until the scheduled date, and Apple tells them to cancel at least 24 hours before the end. A surprise at the price charged after the trial, or an app that hasn't shown its value yet, also play a part.

### Does a user who cancels their free trial keep access?

Yes, until the end of the current period. Canceling first turns off auto-renewal, then the subscription expires on the scheduled date. The App Store page says so: a canceled subscription ends at the end of the current billing cycle.

### Is a trial cancellation final?

No. As long as the trial hasn't expired, the person can turn renewal back on from their subscription settings. Apple then sends you a `DID_CHANGE_RENEWAL_STATUS` notification with the subtype `AUTO_RENEW_ENABLED`.

### Does Apple send a reminder before the free trial ends?

I didn't find any Apple page that promises one. Apple's help only advises the user to cancel at least 24 hours before the end. If your paywall promises a reminder, it's up to your app to deliver it.

### Can you make an offer to someone who cancels their trial?

Apple suggests an in-app retention offer for a subscriber who turned off renewal, as long as the subscription hasn't expired. Retention Messaging also shows a message on the cancellation screen. The win-back offer, on the other hand, requires at least one month of paid subscription.

### Is it forbidden to push to keep a user on a trial?

Pushing through pressure, yes. Guideline 5.6 forbids tricking or manipulating customers, and Apple asks you to keep easy access to the cancellation screen. An honest message about the app's value, or a cheaper plan, is still allowed.


## Your project

[iOS & Android Kit](https://devoria.fr/en/kits/ios): Build your iPhone and Android app with Claude Code: the starter code from my apps, the path all the way to the stores, and every kit. $109.

[Diagnostic: what's between you and your iPhone app](https://devoria.fr/en/diagnostic): 7 questions, 60 seconds: find out what's really stopping you from publishing your iPhone app, get your 4-step path and the kit that fits you.
