Here’s how:

  1. Configure SuperwallKit, Superwall’s SDK within your app.
  2. SuperwallKit presents the right paywall at the right time, based on your dashboard settings.

Subscription logic is handled automatically by SuperwallKit but you can implement your own via StoreKit, RevenueCat or any other payments SDK.

If you haven’t already, sign up for a free account to start building.

Updating from v2 of the SDK? Take a look at our migration guide.

How it Works

Superwall is built on 3 core principles:

  1. Placements
  2. Audiences
  3. Paywalls

When your app registers a placement, evaluate the audience to decide which paywall to show the user.

Placements and audiences are grouped in a concept we call Campaigns.

Rapid Iteration

Paywalls and Campaigns are all defined in the Superwall Dashboard.

Integrating SuperwallKit into your app is usually the last time you’ll have to write paywall related code.

This allows you to iterate on 5 key aspects of your monetization flow, without shipping app updates:

  1. Design
  2. Text / Copy
  3. Placement
  4. Pricing
  5. Discounts


All paywalls are websites. Superwall uses a script called Paywall.js to turn these websites into paywall templates. SuperwallKit loads these websites inside a UIWebView and executes javascript on them to replace text and template product information. This gives you the flexibility to turn any design into a paywall and update it remotely.

Since building websites can be tedious, we maintain a growing list of highly converting paywall templates for you to choose from. These designs are used by some of the biggest apps on the App Store and are perfect to get you up and running in no time.

However, if you’d like to build your own paywall website from scratch, we recommend using Webflow. We maintain a cloneable Webflow template that includes ~50 of the most prominent paywall elements we’ve seen across thousands of apps, which you’re welcome to use. Another alternative is to just wait for us to build you a free paywall 👇

Everyone gets a free paywall

Superwall has built hundreds of paywalls for clients and has a unique vantage point on the industry. As a token of gratitude for signing up, we create a paywall for each customer, using best practices we’ve picked up along the way. Check your email for updates, we’ll add it to your dashboard when it’s ready.


Rules allow you to conditionally show a paywall to a user. For example, you may want to only show users paywalls if they have no remaining credits or if their account is over 24 hours old.

Rule evaluations happen client side, so no network requests are fired to determine whether or not to show a paywall.


Events are added to campaigns and are registered via SuperwallKit. SuperwallKit listens for these events and evaluates their rules to determine whether or not to show a paywall.