Implementing Introductory Offers in Your App

Offer introductory pricing for auto-renewable subscriptions to eligible users.


Apps with auto-renewable subscriptions can offer a discounted introductory price, including a free trial, to eligible users. You can make introductory offers to customers who haven’t previously received an introductory offer for the given product, or for any products in the same subscription group.

Start by setting up introductory offers in App Store Connect, as described in App Store Connect Developer Help. Then, in your app, determine if the user is eligible to receive an introductory offer. When the app queries the App Store for a list of available products, display the introductory pricing if the user is eligible to receive them.

Set Up Introductory Offers

Before you can display introductory offers in your app, you must first configure the offers in App Store Connect. For more information, see Set an introductory offer for an auto-renewable subscription.

Choose from one of three types of introductory offers, which differ in their mode of payment. All subscriptions renew at the regular price when the introductory period is over. The offer types are “pay as you go”, “pay up front”, and “free trial”.

Pay As You Go

The SKProductDiscountPaymentModePayAsYouGo value represents the pay as you go offer type. In this introductory offer, new subscribers pay an introductory price each billing period for a specific duration (for example, $1.99 per month for 3 months).

Pay as you go timeline

Pay Up Front

The SKProductDiscountPaymentModePayUpFront value represents the pay up front offer type. In this introductory offer, new subscribers pay a one-time introductory price for a specific duration (for example, $1.99 for 2 months).

Pay up front timeline

Free Trial

The SKProductDiscountPaymentModeFreeTrial value represents a free trial offer type. In this introductory offer, new subscribers access content for free for a specified duration. Subscriptions begin immediately but subscribers won’t be billed until the free trial period is over.

Free trial timeline

Determine Eligibility

To determine if a user is eligible for an introductory offer, check their receipt:

  1. Validate the receipt as described in Validating Receipts With the App Store.

  2. In the receipt, check the values of the Subscription Trial Period and the Subscription Introductory Price Period for all in-app purchase transactions. If either of these fields are true for a given subscription, the user is not eligible for an introductory offer on that subscription product or any other products within the same subscription group.

You typically check the user's eligibility from your server. It's best to determine eligibility early—for example, on the first launch of the app, if possible.

Diagram showing that introductory offers are available to new subscribers, and to lapsed subscribers who receive an introductory offer for the first time.

Based on the receipt, you will find that new and returning customers are eligible for introductory offers including free trials as follows:

  • New subscribers are always eligible.

  • Lapsed subscribers who renew are eligible if they haven't previously used an introductory offer for the given product (or any product within the same subscription group).

Display the Introductory Offer

Once you determine the user is eligible for an introductory offer, query the App Store for available products, and present the offer to the user:

  1. Retrieve localized information from the App Store about a specified list of subscription products using the SKProductsRequest class. Products that have an available discount defined in App Store Connect always include an introductoryPrice object.

  2. Use the properties in the introductoryPrice object to display the discounted price for the subscription. Based on the type of the introductory offer (represented by SKProductDiscountPaymentMode), display UI that describes the offer accordingly.

For design guidance, see Human Interface Guidelines > In-App Purchase.

See Also

Providing Introductory Offers

Testing Introductory Offers

Test your introductory pricing in a variety of user scenarios.


The details of a discount offer for a subscription product.