Skip to content
AppWinners

Search

Find apps, developers, countries and categories, or paste a store link

Photo by Nathan Dumlao on Unsplash

Subscription Refunds, Trial Abuse and Churn: Your Levers

Updated 19 Oct 2026 7 min readFrom the communitySubscriptions

Refunds, trial resets and card failures are the three leaks every subscription app has, and developers consistently overestimate how much of each they can fix. The stores decide refunds, store accounts decide trial eligibility, and the levers that are fully yours are grace periods, win-back offers and how fast your server reacts to a notification.

Who decides a refund on each store

On the App Store, customers request refunds at reportaproblem.apple.com and Apple tells them to expect an answer within 24 to 48 hours; eligibility "might vary by country or region" and nothing is guaranteed 1. Developers cannot issue App Store refunds themselves, which RevenueCat's documentation states flatly: customers must contact Apple Support 9. What you can do is respond to a CONSUMPTION_REQUEST server notification with consumption data and a refund preference; Apple treats it as one input and makes the final call 9. The response window is documented as 12 hours unconfirmed, so this cannot be a nightly batch job.

Google Play splits the job. Users can self-serve a refund within 48 hours of purchase; after that, Google's help page tells them to "contact the developer to troubleshoot and find out if you can get a refund" 5. Developers can refund from the Play Console or the Developer API, and should pair the refund with a revoke so the order appears in the Voided Purchases API and the entitlement is removed; a refund without revoke is not surfaced there 7. A cancelled Play subscription is not refunded for the current period by default; some countries require prorated refunds by law 6.

How refunds hit your payout and reports

Apple's Summary Sales Report records a refund as a row with negative Units and Customer Price, so 50 refunds of a $0.99 item show as -50 units at -0.99; upgrades produce the same negative row for the old plan plus a sale for the new one 4. Sales and Trends is next-day and preliminary; Financial Reports are final, and Apple warns the two may not match 4. Apple also notes that subscription refunds "may be prorated or partial," so the clawback can be smaller than the original price 4.

On Google Play, refunds and chargebacks reach you through RTDN and the Voided Purchases API, which only covers the last 30 days regardless of the startTime you pass, so a backend that polls weekly will see them, but one that polls quarterly will not 7. Whether the store's commission is returned to you on a refund is not spelled out on either vendor's public pages we could reach unconfirmed; plan on the full gross amount leaving your proceeds and treat any commission credit as a bonus.

Dashboards add lag of their own: RevenueCat detects Apple subscription refunds automatically, but Play Console refunds can take up to 24 hours to appear, and refunds on never-acknowledged Google purchases are not detected at all 9.

Trial-abuse patterns and what mitigates them

The classic pattern is the serial trial: subscribe, cancel on day 0, reinstall, repeat. On iOS this is weaker than developers assume, because introductory-offer eligibility is tied to the Apple Account and the subscription group, not the device or install; a reinstall or a new iPhone with the same account does not reset it (unverified against the live StoreKit reference, but consistent with isEligibleForIntroOffer behaviour). A fresh Apple Account does reset it, and nothing you ship can stop that.

Google is looser by default. Resubscribing to the same SKU ends trial and intro-price eligibility, but eligibility is otherwise per SKU unless you tick "Allow one free trial per app" in the Play Console, which Google's docs recommend for win-back SKUs 6. Three plans with trials and an unticked box means three trials.

What actually moves the number is trial design. RevenueCat's 2026 report finds 55.4% of 3-day trial cancellations happen on day 0, versus 31.1% for 30-day trials, and longer trials convert better: a median 42.5% trial-to-paid at 17–32 days versus 25.5% at four days or less 10. A Hacker News thread about Rogue Amoeba's accidental 15-minute trial (the bug "saved the company") captured the other side: several developers argued that short trials catch buyers at peak intent, and one noted that time-limited trials are "hard to enforce durably" because the start date must live somewhere a user can edit 11. The consensus: store it server-side or trust the store's eligibility flag, never the device.

On Android, Google also recommends attaching an obfuscatedAccountId to every purchase so Play can block suspicious transactions, and a staged response to voided purchases: warnings first, restrictions only for repeat offenders 7,8.

Grace periods: the lever that is fully yours

Involuntary churn is the leak with the clearest fix. Apple's Billing Grace Period keeps a subscriber's access while Apple retries the card for 3, 16 or 28 days (capped at 6 days for weekly plans); if payment recovers inside the window, neither the subscriber's paid days nor your revenue are interrupted 3. Without it, Apple still retries for 60 days, but the subscriber loses access and resubscribing after 60 days resets the one-year clock back to the 30% commission tier 2. The setting is per app, not per product, and your server must honour DID_FAIL_TO_RENEW with the GRACE_PERIOD subtype instead of cutting access on the first failure 2,3.

Google's model has two stages: a grace period (on by default, length configurable, minimum one silent day) during which you keep access, followed by account hold, whose length is 60 days minus the grace period and during which you should remove access 6. Google warns that setting a grace period shorter than the default "may reduce the number of subscriptions recovered," and offers an in-app messaging API that nudges the user to fix their card once per day 6. Pause is on by default too, so users can suspend for one to three months instead of cancelling 6.

Win-back offers and resubscribe

Apple's win-back offers target lapsed subscribers and are surfaced by Apple itself on the product page, in editorial and personalised recommendations, in Subscription settings, and as an automatic in-app sheet that needs no extra code 2. Promotional offers (up to 10 per subscription) cover the "about to cancel" case: Apple recommends watching for auto-renew being switched off and responding with an offer or a cheaper tier 2.

Google's resubscribe path is split by state: before expiry, "restore" keeps the same purchase token and simply clears the cancellation; after expiry, resubscribe from the Play Store is a brand-new purchase that you must acknowledge within three days even if the user never opens the app, or it refunds automatically 6. Win-back SKUs with trials need the per-app trial setting above.

What developers are asking

  • "Can I decline a refund?" No. On both stores you express a preference; Apple and Google decide 9.
  • "Why did my proceeds drop weeks after the sale?" Refunds post as negative rows whenever Apple grants them; Financial Reports, not Sales and Trends, are final 4.
  • "Can users reset an iOS trial by reinstalling?" Not with the same Apple Account unconfirmed; a new account can.
  • "Why do Android users get multiple trials?" Trials are per SKU unless you tick "Allow one free trial per app" 6.
  • "Should I turn on grace period?" Yes; 16 days is the common pick unconfirmed, and weekly plans are capped at 6 days 3.
  • "How do I detect refunds server-side for a paid-upfront app?" As of this month, an Apple Developer Forums thread asking exactly this has no answer 12.

How this shows up in the charts

Refunds and trial churn are invisible in download rankings but visible in grossing. Day-0 trial cancellations that never convert do nothing for Top Grossing position, and a refund spike after a misleading paywall actively reverses it. RevenueCat's data shows involuntary billing failures account for 31% of Google Play cancellations against 14% on the App Store, so an Android app that skips account-hold handling leaks more revenue at the same download count 10. The same report puts the median yearly price at $34.80 and finds only 4.6% of new subscription apps reach $10,000 a month within two years 10; at those margins, a 16-day grace period and a one-trial-per-app setting are worth more than any ASO tweak.

Sources

  1. Apple Support — Request a refund for apps or content you bought from Apple
  2. Apple Developer — Auto-renewable subscriptions (commission, grace period, win-back offers)
  3. App Store Connect Help — Enable Billing Grace Period
  4. App Store Connect Help — Summary Sales Report (refund rows)
  5. Google Play Help — Refunds for apps, games and in-app purchases
  6. Android Developers — Subscription lifecycle (grace period, account hold, pause, resubscribe)
  7. Google Play Developer API — Voided Purchases
  8. Android Developers — Verify purchases before granting entitlements
  9. RevenueCat Docs — Refunds
  10. RevenueCat — State of Subscription Apps 2026
  11. Hacker News — 'A bug saved the company' discussion (Aug 26, 2025)
  12. Apple Developer Forums — Server-side refund and revocation verification (Oct 2026)

Keep reading