Manage subscriptions

Set up offer codes

Offer codes provide a free or discounted price for auto-renewable subscriptions on the App Store for a specific duration. You can create codes for a maximum of 1,000,000 redemptions per app, per quarter.

There are two types of offer codes:

  • One-time-use codes: Unique, one-time-use codes generated in App Store Connect and redeemable through a redemption URL, within your app on iOS 14.2 and iPadOS 14.2, or later (if your app supports the presentCodeRedemptionSheet method), or by entering the code in the App Store code redemption flow. These codes are useful for small-scale distribution or when code access needs to be restricted. They expire after a maximum of six months from the date they’re created.

  • Custom codes: Uniquely named custom codes — for example, SPRINGPROMO — each of which can be redeemed through a redemption URL or within your app on iOS 14.1 or iPadOS 14 or later (if your app supports the presentCodeRedemptionSheet method). You can set a maximum redemption limit and choose whether or not to set an expiration date. Custom codes are ideal for large campaigns that require mass distribution.

Customer eligibility is determined by you in App Store Connect and can include new, active, and expired users. Consider your offer’s eligibility requirements before creating and distributing offer codes.

Learn about offer types and which one to choose.

Get business guidance for auto-renewable subscriptions.

Configure offer codes

Learn how to provide offer codes using the App Store Connect API.

Required role: Account Holder, Admin, App Manager, or Marketing. View role permissions.

Set up offers

  1. From Apps, select your app.

  2. In the sidebar, click subscriptions.

  3. Choose the subscription group containing your subscription.

  4. Select the subscription from the list.

  5. In the Subscription Prices section, click the add button (+).

  6. From the menu, click Create Offer Codes, then click the add button (+).

  7. Enter a reference name for the offer. You’ll use this reference name to manage the offer in App Store Connect and to identify sales associated with offers in Sales and Trends reports, and in StoreKit transactions.

  8. Select the customer eligibility for your offer. You can select one or more of the following:

    • New: Users who have never subscribed to any subscription product within the group.

    • Existing: Users who are currently subscribed to a product within the group.

    • Expired: Users who were previously subscribed to a product within the group, but whose subscription has expired.

  9. If your subscription has an introductory offer, determine whether people redeeming your codes should be eligible to redeem both a code and the introductory offer by choosing from the following options:

    • Yes. New users will redeem your app’s introductory offer first, then automatically renew to the offer they redeemed with the code.

    • No. New users will redeem the offer code first, then automatically renew to the standard subscription price without using the introductory offer. If they cancel and resubscribe at any point, they’re still eligible to redeem an introductory offer.

  10. Click Next.

  11. Choose the appropriate country or region for your offer, then click Next.

  12. Choose Pay as you go, Pay up front, or Free, then choose the appropriate duration, country or region, and price, then click Next. To search from a larger list of price points, click See Additional Prices.

    App Store Connect provides comparable prices for all 175 App Store countries and regions, taking into account taxes and foreign exchange rates. If you want to set different prices for specific storefronts, make the changes and click Next.

  13. Make sure the details of your offer are correct and click Submit.

    Note: Once you create an offer, you won’t be able to edit it. If changes to customer eligibility are needed, create a new offer.

Create one-time use codes

In order for users to redeem codes, your app must be in the Ready for Sale state.

  1. From Apps, select your app.

  2. In the sidebar, click subscriptions.

  3. Choose the subscription group containing your subscription.

  4. Click the subscription, then go to the Subscription Prices section and click View all Subscription Pricing.

  5. In the menu bar, click Offer Codes.

  6. Select your offer from the list.

  7. Click the “Create One-Time Use Codes” button.

  8. In the pop-up window, select the number of codes you want to create. You must select a minimum of 500 and a maximum of 25,000. If you need more than 25,000 codes, you can create multiple batches of codes for the same offer.

  9. Choose an expiration date to determine how long the codes are valid. One-time use codes can be valid for a maximum of six months. Codes expire at 12:00 a.m. PT on the expiration date.

  10. Click Create. It may take up to an hour before codes are redeemable by customers.

Download one-time use codes

Once your one-time use codes are created, you’ll need to download them from App Store Connect so you can share them.

  1. From Apps, select your app.

  2. In the sidebar, click subscriptions.

  3. Choose the subscription group containing your subscription.

  4. Click the subscription, then go to the Subscription Prices section and click View all Subscription Pricing.

  5. In the menu bar, click Offer Codes.

  6. Locate your offer in the list and click the reference name.

  7. Locate the codes you want to download and click Download.

  8. Open the extracted text (.txt) file in a spreadsheet application.

Create custom codes

  1. From Apps, select your app.

  2. In the sidebar, click subscriptions.

  3. Choose the subscription group containing your subscription.

  4. Click the subscription, then go to the Subscription Prices section and click View all Subscription Pricing.

  5. In the menu bar, click Offer Codes.

  6. Select the offer from the list.

  7. Click the “Create Custom Codes” button.

  8. Enter a custom code up to 64 characters and without any special characters. Once you’ve created your custom code, you won’t be able to edit it. Custom codes can’t be used for other offer campaigns or subscriptions for the app. To create a custom code that is already being used by a different offer for the same app, you must first deactivate the code.

  9. Choose a redemption limit. This is the total number of people who can redeem this custom code. You can choose a limit of up to 25,000 at a time. If you need more, use the same custom code multiple times for the same offer.

  10. Choose an expiration date to determine how long the codes will be valid (with a maximum of 6 months for codes with an expiration date). Codes expire at 12:00 a.m. PT on the expiration date. To create codes with no expiration date, choose No Expiration Date from the date picker. Expiration dates may not be edited.

  11. Click Create. It may take up to an hour before codes are redeemable by customers.

Distribute offer codes

You are responsible for distributing offer codes to your users. You can utilize your own channels, such as email or offline marketing campaigns.

  • Give codes to users directly: Codes can be shared through online or offline channels. For example, you might print the codes on cards that you give out at an event. People can redeem one-time use codes by entering them in the “Redeem Gift Card or Code” page in their App Store account settings, or redeem custom codes within your app if you’ve implemented the presentcoderedemptionsheet API. Learn more.

  • Create a unique redemption URL: Codes can be used to create redemption URLs that you can share directly. When someone visits the URL, they'll land on a page where they can redeem your code. People who haven't installed your app will first be prompted to download the app before redeeming the code.

    To create these URLs for one-time use codes, copy the example link from your offer details page, then add each code to the end of the URL. One-time use code URLs are also included in the downloadable text file.

Distribute offer code

Deactivate offer codes

  1. From Apps, select your app.

  2. In the sidebar, click subscriptions.

  3. Choose the subscription group containing your subscription.

  4. Click a subscription, then go to the Subscription Prices section and click View all Subscription Pricing.

  5. In the menu bar, click Offer Codes.

  6. Click the reference name of the offer.

  7. Locate the codes you want to deactivate and click Deactivate. The codes will expire immediately. Subscribers who have already redeemed the codes won’t be affected. Unredeemed codes will also expire and will not be reapplied to the 1,000,000 quarterly limit.

Deactivate offers

You can have up to 10 active offers per subscription SKU at a time in App Store Connect. If you wish to deactivate an offer, please note that the offer can't be reactivated later. All codes associated with the offer will be invalidated. Subscribers who have already redeemed codes for the offer will not be affected.

  1. From Apps, select your app.

  2. In the sidebar, click subscriptions.

  3. Choose the subscription group containing your subscription.

  4. Click a subscription, then go to the Subscription Prices section and click View all Subscription Pricing.

  5. In the menu bar, click Offer Codes.

  6. Click the reference name of the offer.

  7. In the upper corner, click Deactivate.

    You can view your deactivated offers anytime, as well as download expired codes associated with deactivated offers.