---
title: isEligibleForIntroOffer
framework: StoreKit
role: symbol
role_heading: Instance Property
platforms: [iOS 15.0+, iPadOS 15.0+, Mac Catalyst 15.0+, macOS 12.0+, tvOS 15.0+, visionOS 1.0+, watchOS 8.0+]
path: storekit/product/subscriptioninfo/3803203-iseligibleforintrooffer
---

# isEligibleForIntroOffer

A Boolean value that indicates whether the customer is eligible for an introductory offer.

## Declaration

```swift
var isEligibleForIntroOffer: Bool { get async }
```

## Discussion

This value is `true` if the customer is eligible for an introductory offer on this auto-renewable subscription, or any auto-renewable subscription in the same subscription group; this value is `false` otherwise. This value may be `true` even if you haven’t set up an introductory offer in App Store Connect. The following example illustrates checking the [subscription](../subscription.md) property of a product to determine whether the user is eligible for an introductory offer.

```swift
func eligibleForIntro(product: Product) async throws -> Bool {
    guard let renewableSubscription = product.subscription else {
        // No renewable subscription is available for this product.
        return false
    }
    if await renewableSubscription.isEligibleForIntroOffer {
        // The product is eligible for an introductory offer.
        return true
    }
    return false
}
```

To specify a customer’s eligibility for an introductory offer, see [introductoryOfferEligibility(compactJWS:)](../purchaseoption/introductoryoffereligibility(compactjws:).md).

## See Also

### Getting introductory offer details

- [isEligibleForIntroOffer(for:)](iseligibleforintrooffer(for:).md)
- [introductoryOffer](introductoryoffer.md)
- [Product.SubscriptionOffer](../subscriptionoffer.md)
