---
title: "seats(_:)"
framework: StoreKit
role: symbol
role_heading: Type Method
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/purchaseoption/seats(_:)"
---

# seats(_:)

Sets the total number of seats for a multiseat subscription purchase.

## Declaration

```swift
@backDeployed(before: iOS 27.3, macOS 27.3, tvOS 27.3, watchOS 27.3, visionOS 27.3)
static func seats(_ targetSeatQuantity: Int) -> Product.PurchaseOption
```

## Parameters

- `targetSeatQuantity`: The total number of seats the subscription has after the purchase completes.

## Mentioned in

Supporting multiseat purchases in your app Testing multiseat subscriptions Managing the life cycle of multiseat subscriptions

## Return Value

Return Value An instance of Product.PurchaseOption to use in purchase(options:).

## Discussion

Discussion Use this option to buy a multiseat subscription, or to add seats to one. Pass the total number of seats the subscription has after the purchase, not the number of seats to add. When you add seats, the total needs to be higher than the subscription’s current number of seats. For example, to add 4 seats to a subscription that has 8, pass 12: let result = try await product.purchase(options: [.seats(12)]) Use this option only for a product whose supportsMultiSeatPurchase value is true. To reduce the number of seats, the group purchaser uses Manage Subscriptions. Present it with showManageSubscriptions(in:) or, on macOS, showManageSubscriptions(from:), or direct the group purchaser to their subscriptions in Settings. For more information, see Supporting multiseat purchases in your app. On the App Store, a customer can buy up to 100 seats in a single purchase. Customers can buy multiseat subscriptions on iOS, iPadOS, and macOS. To set the quantity of a consumable or a non-renewing subscription, use quantity(_:) instead.

## See Also

### Purchasing multiseat subscriptions

- [multiSeatInvitationSheetSuppressed(_:)](storekit/product/purchaseoption/multiseatinvitationsheetsuppressed(_:).md)
