Reference library · App Review

Guideline 3.1.2 Subscriptions: the EULA link, the billed amount, and what a subscription must offer

Most 3.1.2 rejections are about two links and one price label. A few are about whether your app should be a subscription at all.

Guideline 3.1.23. Business · SubscriptionsApple text last updated June 8, 2026
Updated 8 min read

Checked against Apple's App Review Guidelines (last updated June 8, 2026) and Apple's auto-renewable subscriptions guidance, on Oct 3, 2026.

The short answer

Guideline 3.1.2 governs auto-renewable subscriptions. The usual rejection is missing information: the app and its App Store metadata must both link to your Terms of Use (EULA) and privacy policy, and the paywall must show the plan name, length and the amount actually billed as its most prominent price. Less often, Apple rejects a subscription that doesn't provide ongoing value.

Shortest period allowed
7 days
3.1.2(a)
Links required
2, in 2 places
Terms of Use and privacy, in the app and the metadata
Active plans per group
1
People can only buy one subscription in a group at a time
Your share
70% → 85%
After a subscriber's first paid year

01The three parts of 3.1.2

Apps may offer auto-renewable in-app purchase subscriptions, regardless of category on the App Store.
— App Store Review Guidelines, 3.1.2

Any category may sell subscriptions. The guideline then sets three conditions, and a rejection message names the one you failed:

Guideline 3.1.2 at a glance
PartRuleHow indie apps fail it
3.1.2(a) Permissible usesOngoing value, at least seven days, available on all the user's devicesA one-off feature unlock sold as a weekly plan; features gated behind sharing or check-ins
3.1.2(b) Upgrades and downgradesA seamless switch between plans; no accidental double subscriptionsMonthly and annual plans in separate subscription groups
3.1.2(c) Subscription informationSay clearly what the user gets for the price, per Schedule 2 of the license agreementMissing Terms of Use or privacy links; the weekly equivalent shown bigger than the annual charge

Payment method rules — using in-app purchase at all, and linking out to web checkout — sit in the neighbouring guideline, covered in our page on Guideline 3.1.1. This page is about the subscription itself.

The finding, in one line
According to ASOitis, most 3.1.2 rejections indie apps receive are about missing disclosure, not the business model: reviewers want Terms of Use and privacy policy links in both the app and the App Store metadata, and the metadata half can be fixed without a new build.

02The common one: "did not include all the required information"

The submission did not include all the required information for apps offering auto-renewable subscriptions.
— App Review rejection under 3.1.2, posted on Apple Developer Forums, January 2026

What follows that sentence is a list, and it has two halves: what's missing "within the app" and what's missing from "App Store metadata". A version from August 2024 spells out the in-app half — the subscription's title, its length, its price "and price per unit if appropriate", and "functional links to the privacy policy and Terms of Use (EULA)" — then adds that the metadata needs the same two links.

Where each 3.1.2 item lives
ItemInside the app (new build)In App Store Connect (no build)
Plan name and lengthOn the paywall, next to each option—
Price billedOn the paywall, as the largest price—
Terms of Use (EULA)A tappable link on or near the paywallStandard EULA: a link in the App Description. Custom EULA: App Information > License Agreement
Privacy policyA tappable link on or near the paywallThe Privacy Policy URL field under App Privacy
Restore or sign inA visible button for existing subscribers—
Apple's subscriptions guidance puts it in one line: "your app and App Store metadata must include links to your Terms of Use and Privacy Policy."

If you build the paywall with StoreKit's SubscriptionStoreView, the subscriptionStorePolicyDestination modifier adds the Terms of Use and privacy links to the store view itself. Paywall tools such as RevenueCat and Superwall have their own footer components — check they're switched on in the template you used.

03The price label: show what will actually be charged

In the purchase flow, the amount that will be billed must be the most prominent pricing element in the layout.
— Apple Developer — Auto-renewable subscriptions

This is the paywall pattern that trips most subscription apps. Apple's example is an annual plan: you may show what it works out to per week or per month, or a percentage saving, but those "should be displayed in a subordinate position and size to the annual price".

Gets flagged

  • "$0.96/week" in large type, with "$49.99 billed yearly" in small grey text
  • A trial button that says "Try free" with no price after the trial
  • "Save 80%" as the biggest element on the card
  • The renewal price only on a second screen

Passes

  • "$49.99 per year" as the headline price, with "$0.96/week" underneath in smaller text
  • "3 days free, then $49.99 per year" on or right beside the button
  • Savings badges smaller than the price they refer to
  • Every option showing its own billed amount

For trials, Apple asks you to "clearly indicate how long the free trial lasts and the price billed once the free trial is over." Trials themselves are configured in App Store Connect as introductory offers — the guideline points there rather than letting you build your own.

04Does your app qualify for a subscription? (3.1.2(a))

If you offer an auto-renewable subscription, you must provide ongoing value to the customer, and the subscription period must last at least seven days and be available across all of the user’s devices.
— App Store Review Guidelines, 3.1.2(a)

Apple's examples of appropriate subscriptions are new game levels, episodic content, multiplayer support, apps with "consistent, substantive updates", large or continually updated media libraries, software as a service, and cloud support. The list is "not exhaustive", and in practice most productivity, health and AI apps qualify through ongoing service or sync. The rules that do get enforced are narrower:

  • No chores to unlock what was paid for. Subscribers must get what they paid for "without performing additional tasks, such as posting on social media, uploading contacts, checking in to the app a certain number of times".
  • Every device. If the app runs on iPhone and iPad, the subscription must work on both. Apple's guidance says to make subscriptions "available across all device types that your app supports."
  • Don't take back what people bought. Moving a paid app to subscriptions, you "should not take away the primary functionality existing users have already paid for". Keep previous buyers unlocked.
  • No bait-and-switch. Apps that trick users into subscribing "will be removed from the App Store", and the developer may be removed from the Developer Program.

If the honest answer is that your app does one fixed thing and won't change, a one-time purchase (a non-consumable) is the safer model. It's also the model some categories' users prefer: in our habit tracker snapshot, several of the top apps sell a lifetime unlock.

05Upgrades, downgrades and subscription groups (3.1.2(b))

3.1.2(b) asks that users "should not be able to inadvertently subscribe to multiple variations of the same thing." StoreKit enforces this for you if your plans share one subscription group. Apple's guidance: "Since people can only buy one subscription within a group at a time, creating a single group is the best practice for most apps."

How plan changes behave inside one subscription group
ChangeWhat happensSet it up by
UpgradeImmediate, with a prorated refund of the old planRanking the richer plan at a higher level
DowngradeTakes effect at the next renewal dateRanking the cheaper plan lower
Crossgrade, same durationImmediatePutting equal plans on the same level
Crossgrade, different durationTakes effect at the next renewal datePutting monthly and annual of the same tier on the same level
Source: Apple's auto-renewable subscriptions guidance. Plans in different groups are billed separately — useful for genuinely separate products, such as two channels, and a 3.1.2(b) risk otherwise.

06Fixing a 3.1.2 rejection and replying

  1. Split the message into its two lists

    Items under "within the app" need a new build. Items under "App Store metadata" are fixed in App Store Connect.

  2. Fix the metadata first

    Add the Terms of Use link to the description (or the custom EULA under App Information) and fill in the Privacy Policy URL. If that's all the message lists, reply and resubmit the same build.

  3. Fix the paywall

    Plan name, length, billed amount as the largest price, trial length and post-trial price, Restore, and both links on the same screen.

  4. Test the purchase path the reviewer takes

    Fresh install, sandbox account, from onboarding to purchase to restore. A product that fails to load is a separate rejection under Guideline 2.1.

  5. Tell the reviewer where the paywall is

    In the review notes, give the exact taps to reach it and say which links are on it.

Reply in App Store Connect — Guideline 3.1.2text
Hello App Review team,

Thank you for the feedback on Guideline 3.1.2.

App Store metadata (updated, no new build needed for these):
- Added a Terms of Use (EULA) link to the end of the App Description:
  [URL]
- Privacy Policy URL is set under App Privacy: [URL]

In the app (build [number]):
- The paywall now shows each plan's name, length and the billed
  amount as the main price, e.g. "$49.99 per year".
- Terms of Use and Privacy Policy links sit under the purchase button.

To reach the paywall: launch the app > skip onboarding > tap [button].

Thank you,
[Name]

Frequently asked questions

Where do I put the Terms of Use (EULA) link in App Store Connect?

If you use Apple's standard EULA, add a link to it in your App Description. If you use your own, add it under App Information > License Agreement. The link must also appear inside the app, on or near the paywall.

Can I resubmit the same build after a 3.1.2 rejection?

Only if everything listed is metadata — for example, a missing Terms of Use link in the description. If the message lists items missing "within the app", such as links or prices on the paywall, you need a new build.

Can I show the weekly price on an annual plan?

Yes, as a secondary element. Apple says the amount that will be billed must be the most prominent price, and any per-week breakdown or saving should be smaller and below the annual price.

What's the shortest subscription I can sell?

Seven days. Guideline 3.1.2(a) says the subscription period must last at least seven days, so weekly is the shortest auto-renewable plan.

Can I switch my paid app to a subscription?

Yes, but 3.1.2(a) says you should not take away primary functionality existing users already paid for. Keep earlier buyers unlocked — Apple's example is honoring a "full game unlock" bought before the change.

Where to go next

Sources

  1. App Store Review Guidelines — 3.1.2 Subscriptions — Apple Developer
  2. Auto-renewable subscriptions — Apple Developer
  3. Apple standard EULA — Apple
  4. Forum: 3.1.2 rejection, links within the app and in metadata (Jan 2026) — Apple Developer Forums
  5. Forum: 3.1.2(c) required information in the binary (Aug 2024) — Apple Developer Forums
  6. Forum: missing a functional link to the Terms of Use (EULA) — Apple Developer Forums

Published Oct 3, 2026 · last checked Oct 3, 2026. Found something out of date? Tell us and we'll fix it within a day. Machine-readable version: /app-review/guideline-3-1-2-subscriptions.md