SuperwallKit
AI-powered paywalls, subscriptions and experiments for iOS and Mac apps.
Get started · Manual setup · Docs · API reference · Examples
Add Superwall with a single prompt
Paste this into your coding agent. It installs the SDK, sets up entitlements and adds your first paywall.
Install Superwall into my app using the skill at github.com/superwall/skills
Prefer a guided setup? Run this from your app’s folder. It signs you up or in, then runs Claude Code or Codex for you:
npx superwall integrate
Read the agent integration guide for details.
Moving from a different platform?
Run this from your app’s folder. It follows the same steps, starting from your existing setup:
npx superwall migrate
Manual quick start
Install and configure the SDK yourself. Requires Xcode 26 or later.
1. Install the SDK
In Xcode, choose File ▸ Add Package Dependencies… and add this URL, using Up to Next Major Version from 4.0.0:
https://github.com/superwall/Superwall-iOS
Install with CocoaPods
Add this to your Podfile:
pod 'SuperwallKit', '< 5.0.0'
Then run:
pod install --repo-update
2. Configure the SDK
Create a Superwall account and copy your app’s public API key from the dashboard. Call configure once when your app launches:
import SuperwallKit
Superwall.configure(apiKey: "YOUR_PUBLIC_API_KEY")
3. Register a placement
A placement is a named point in your app where a campaign can show a paywall. On the dashboard, add the premium_feature placement to a campaign and give it a paywall. Then call this where someone opens the feature:
Superwall.shared.register(placement: "premium_feature") {
// Open your feature here.
}
The campaign decides whether a paywall shows. With no paywall set up, the closure runs straight away. See the iOS guide for purchases and testing.
Platforms
| Platform | Support | | --- | --- | | iOS | iOS 15+ · UIKit and SwiftUI | | macOS | macOS 12+ · native AppKit and SwiftUI · Mac guide | | Mac Catalyst · visionOS | Uses the iOS API |
What you get with Superwall
- Paywalls and onboarding flows: build single paywalls or multi-page onboarding in the dashboard and publish changes without an app release.
- Experiments: target audiences with campaigns and A/B test paywalls, prices and flows.
- Web checkout and funnels: sell through Stripe on the web, send US App Store users to web checkout from a paywall, and share web funnels as links.
- Subscriptions and entitlements: StoreKit 2 purchases with server-side validation, or bring your own purchase controller.
- Retention: free trial reminders, cancellation surveys, abandoned-purchase offers and win-back paywalls.
- Customer Center: a ready-made screen where users manage their subscription.
- Revenue analytics: conversions, trials, MRR, churn and LTV, also available over SQL and webhooks.
- Agent tooling: skills, an MCP server and a CLI so your coding agent can set up and run Superwall.
Examples
- Basic: a starting integration.
- Advanced: purchase controllers, user attributes and delegates.
- macOS: a native SwiftUI Mac app.
Upgrading
See the release notes for changes between versions.
Upgrade from V3 to V4
Follow the V4 migration guide.
Support and contributing
Read the docs for setup help, or report a bug with your SDK version and steps to reproduce it. To contribute, read the contributing guide.
SuperwallKit is available under the MIT license.