Over the past few years Apple and Google have opened the door for app-to-web, allowing developers to use external purchase flows for in-app subscriptions; making it possible to bypass app store fees and have more flexibility with pricing, promotions, and checkout experiments.

This has largely come about from court rulings like Epic Games v. Apple in the US and the Digital Markets Act in the EU, ultimately forcing Apple and Google to loosen strict requirements around in-app purchases (IAP). 

For app teams, this opens up a new realm of app-to-web possibilities — but when it comes to the regulations surrounding app-to-web, it’s not quite so clear cut. New guidelines are constantly appearing and evolving, varying by country and app category, so it’s difficult to keep up with what’s allowed (or not).

To help, we’ve broken down the latest options, eligibility requirements, and commissions/fees for external payments around the world, on both the Apple App Store and Google Play Store. Here’s everything you need to know. 

How external purchases with app-to-web work

Here’s a quick overview on how external purchases work, and the two primary ways to incorporate them in your app. 

If you want to jump straight to Apple and Google’s purchase guidelines, click here.

Your app includes a link or button that sends the user to an external website (or opens a webview) where the user completes the purchase. The app then unlocks content/features based on that external purchase (usually by syncing with your backend). 

Apple refers to this as using an External Purchase Link. For instance, a streaming app might have a “Subscribe on our website” button that opens its web checkout. After payment, the user can log into the app with the new subscription.

2. Third-party payment (in-app)

Your app integrates a non-Apple/non-Google payment gateway directly in the app’s UI. The purchase happens within the app, but not via App Store/Google Play billing. This is sometimes called alternative in-app payment

A common example is using Stripe for in-app purchases, or showing a country-specific credit card form at checkout in lieu of App Store purchase dialogs. 

While this used to be far trickier to implement, Apple v. Epic has meant third-party payments are much easier to use these days. However, Apple and Google have strict rules if you choose either of these paths:

Implementing third-party payment with Apple

  • You’ll need to request Apple’s special entitlements before offering any kind of external purchase flow
  • Depending on what you’re building, you’ll use either the External Purchase Link API (to send users to your web checkout) or the External Purchase Entitlement (to run a third-party payment flow inside the app)
  • Before users leave the app or pay through a non-Apple method, Apple shows a built-in disclosure sheet letting them know the purchase isn’t handled by the App Store
  • In some cases, if you use an external purchase entitlement, you cannot also offer Apple IAP in the same app in that region — it’s one or the other on a given storefront

Implementing third-party payment with Google

  • Google’s User Choice Billing means the user is offered a choice between Google Play’s billing and an alternative billing method during checkout
  • Developers must integrate Google’s alternative billing API to present this option
  • For External Offers (EEA only), the app can directly link out to a purchase web page (and Google will display a ‘leaving Play’ prompt to users on tap)
  • Like Apple, there are cases where you’re not allowed to mix standard Google Play Billing IAP with external offers

In-app purchases vs. external purchases: guidelines and regulations for Apple and Google

Most apps on both the Apple App Store and Google Play Store use the platform’s built-in billing system for subscriptions and digital goods. By default, you’re not allowed to direct users to a different payment flow inside your app unless you qualify for (and opt into) one of the external-purchase programs covered below. 

For standard in-app purchases, each app store takes a cut. The standard commission for both Apple and Google Play is 30%, but both stores reduce this to 15% for developers making less than $1M/year from IAP. On Google Play, the 15% rate is also applied to recurring subscriptions after the first year. 

To avoid these fees, apps are allowed to offer external purchases, as long as they adhere to the following guidelines: 

Apple App Store external purchases guidelines

Region/programEligible appsWhat’s allowed for external paymentsCommissions/feesNotes and references
United States: External Purchase Links All app categories in the US App Store (including games)Can include external payment links in-app to a web checkout0% 

Standard App Store commission (15–30%) still applies to any purchases made via IAP
App Store Review Guidelines (United States)
EU/EEA: communication and promotion of offers Alternative terms/StoreKit External Purchase LinkAll apps on an EU or EEA storefrontExternal purchases or payments allowed via link-out or third-party processingIf using IAP: 

10-17% commission+ 3% payment processing

If using external purchases:

2% Initial Acquisition fee 

+ 5-13% (depending on optional store services)

+ €0.50 Core Technology Fee per first annual install over 1M
Requires opt-in to the Alternative Terms Addendum for Apps in the EU and/or StoreKit External Purchase Link Entitlement for EU storefronts

Communication and promotion of offers on the App Store in the EU
EEA: music streaming services entitlementMusic streaming appsExternal subscription link or button allowed to your websiteUp to ~27% commission (roughly the normal 30% cut minus ~3% payment processing)

If you instead opt into the EU Alternative Terms, external purchases are subject to the EU fee stack above (2% + 5–13% + 5% etc.) rather than a flat 27%
Music streaming services entitlement (EEA)
Netherlands: dating appsDating apps exclusive to the NL storefrontAlternate in-app payments and/or external link to web purchase are allowed alongside Apple IAPNormal App Store commission minus 3% (e.g. 27% instead of 30%, 12% instead of 15% for small business/long‑running subs)Distributing dating apps in the Netherlands
South Korea: StoreKit External Purchase EntitlementAll apps distributed solely on the South Korea App Store using a qualifying third‑party PSPAlternate in-app payment providers allowed (no Apple IAP required)

You cannot also offer IAP in the same SK app
26%Distributing apps using a third‑party payment provider in South Korea
Global: reader apps (External Link Account Entitlement)‘Reader’ apps whose primary purpose is providing magazines, newspapers, books, audio, music, or video, and that let users sign in to access previously-purchased content Can include one link to your website for account creation and management

The link must open in a browser 

Cannot offer IAP in the same app 
0%Distributing reader apps with a link to your website

Google Play Store external purchases guidelines

Region/programEligible appsWhat’s allowed for external paymentsCommissions/feesNotes and references
User choice billing: Australia, Brazil, Indonesia, Japan, South Africa, United Kingdom, United States and EEANon-game apps in Australia, Brazil, Indonesia, Japan, South Africa, United Kingdom, and United States

All apps in EEA, South Korea, India
‘User choice billing’ (UCB): apps can offer users a choice between Google Play’s billing and an alternative in-app billing methodIf using IAP: 

15% for the first $1M/year in revenue

30% above $1M/year 

If using external billing system: 

Normal service fee minus 4% (e.g. 11% instead of 15%, 26% instead of 30%)
User choice billing on Google Play 
EEA: alternative billing only (no Google Play Billing in the app)Apps targeting users in the EEA that want to remove Google Play Billing entirely and use only their own billing in‑appYou complete in‑app transactions through your own (or third‑party) billing system only 

You are not allowed to offer Google Play Billing as an option in the same app
Standard Google Play service fee minus 3% (e.g. 12% instead of 15%, 27% instead of 30%)EEA alternative‑billing program
EEA: external Offers Program (link‑out program)Apps in the EEA that want to promote offers in‑app and send users outside the app (browser, other store, webview) for purchases/subscriptionsYou can show in‑app promotional units and hyperlinks (‘linkouts’) that take users to your site or other destinations to purchase digital items or subscriptions3% Initial Acquisition fee 

+ 10% (required) Tier 1 service fee

+ 3% / 10% (optional) Tier 2 fee (10% for IAP or +3% for subs) 

+ Variable per-install fees depending on app category
Fees are additive, so a typical Tier‑1 setup is roughly 13% on external sales, while Tier 1+2 can reach the mid‑20% range for some offers

Changes to the external offers program for users in the EEA (includes IA %, Tier 1/2 fees, per‑install fee tables)

Adding web checkout options to your app

If you’re reading this far, you’re probably already sold on app-to-web. The hard part isn’t why; it’s how to ship it quickly, stay compliant, and not turn your purchase flow into a science project.

RevenueCat Web is the simplest way to add a web checkout to a subscription app. Instead of stitching together a payment processor, entitlement sync, identity mapping, and analytics on your own, you get a full web billing stack that plugs into the RevenueCat setup you already use for mobile. Users can buy on the web and unlock access in iOS or Android right away, with one subscriber record and one source of truth.

Here’s how the pieces fit together:

Web Billing as your billing engine: Web Billing is RevenueCat’s native billing engine for web subscriptions. It manages the subscription lifecycle on the web and stays fully integrated with your RevenueCat products, customers, and entitlements. You don’t have to build or maintain separate web billing logic.

Web checkout surfaces that you can launch in minutes: once Web Billing is on, you can direct users to web checkout in a few different ways:

  • Web Purchase Button inside your in-app paywall: add a button component to any RevenueCat Paywall; tapping it sends users to a web checkout
  • Web Purchase Links: RevenueCat-hosted checkout URLs you can drop anywhere, including behind the Web Purchase Button — they work out of the box and support identified or anonymous flows
  • Web Paywalls shown via the Web SDK: if you have your own web app or landing pages, you can render a RevenueCat Paywall directly on your site through Purchases.js, then complete checkout there

Everything stays connected. The Web overview dashboard shows you everything in one place, and your web and mobile offerings live in the same catalog, entitlements sync automatically, and events flow into the same analytics layer.

How to keep app-to-web conversion strong

Teams usually worry that a web step will convert worse than native checkout. This can be easily avoided by sending users to a web paywall that completes the purchase on the same page (aka, RevenueCat’s Express Purchase button). 

If Apple Pay or Google Pay is available in the browser, a wallet button shows on the web paywall. The user taps once, confirms in their wallet, and the purchase completes. RevenueCat then syncs access back to the app automatically.

This keeps the handoff short: paywall in app → paywall on web → wallet confirmation = access unlocked.

Examples of app-to-web

  • In-app upgrade with a web option: your in-app paywall includes a ‘Continue on web’ button. The web paywall opens with the same plan selected, and a wallet button appears when supported. Users who want a faster checkout finish in one tap.
  • Win-back discount: a churned user sees a targeted in-app paywall with a comeback offer. The web button routes to a separate web offering with the discount already applied, so the user doesn’t need to hunt for the right plan.
  • Campaign traffic you can measure: You share a Web Purchase Link in ads or email with UTM parameters intact. After purchase, a redemption step links the subscription to the user’s app account and unlocks access right away. You get clean attribution without custom glue code.

Ready to experiment with app-to-web?

As app-to-web guidelines continue to shift, your success depends on keeping checkouts flexible and compliant. We’ll keep this guide updated as Apple and Google refine their policies, so bookmark it and check back whenever you’re planning your next app-to-web iteration.

Whether you experiment with custom checkout code or get RevenueCat Web to do the heavy lifting, app-to-web can be an efficient and flexible purchase flow. Good luck, and happy testing!