Superwall
Campaigns

Standard Placements

Standard placements are events that Superwall automatically manages. The following Superwall Events are registered by the SDK and can be added as placements in campaigns to present paywalls:

app_install

Usage

This is registered when the SDK is configured for the first time. Use it for first-launch onboarding flows or one-time offers.

Parameters

These parameters are always available:

Prop

Type

app_launch

Usage

This is registered when the app is launched from a cold start. Use it to present paywalls on fresh launches.

Parameters

Same as app_install:

Prop

Type

Usage

This is registered when a user opens the app via a deep link. First, you need to make sure to tell Superwall when a deep link has been opened.

You can use the URL parameters of the deep link within your rules. This works for both URL schemes and universal links.

For example, you could make three conditions to match this deep link: myapp://paywall?offer=July20. Here's how:

  1. Add a rule to see if the event is deepLink_open. See the paywall_decline example below for how to add a standard placement.
  2. Add params.offer is equal to whatever you've made, like July20 for a timeboxed offer you made in that month.
  3. Then, you'd also add params.path is equal to the text of a path you setup, like paywall.

Parameters

After the app has emitted the first deepLink_open event for a given URL, these fields become available to audience filters:

Prop

Type

session_start

Usage

This is registered when the app is opened after at least 60 minutes since the last app_close.

Parameters

Same as app_install:

Prop

Type

paywall_decline

Usage

This is registered when a user manually dismisses any paywall. You can combine this with rules to show a paywall when a user closes a specific paywall. First, add the standard placement to a campaign:

Then, create a filter in the audience using it:

Here, when a user closes the paywall named PaywallA, a new paywall will show.

Note that you can't reference parameters that you've passed in to your original register call in your rules for paywall_decline.

Parameters

Audience filters for paywall_decline placements can use the following parameters (empty values mean the field isn't applicable):

Prop

Type

transaction_fail

Usage

This is registered when the payment sheet fails to complete a transaction (this does not include user cancellation). Use it to show an exit offer after a failed attempt.

Parameters

Audience filters for transaction_fail placements can use the following parameters (empty values mean the field isn't applicable):

Prop

Type

The event payload also includes a failure message; see Superwall Events for full details.

transaction_abandon

Usage

This is registered when a user dismisses the store purchase sheet before the transaction completes. If a transaction-abandon paywall matches, Superwall immediately closes the current paywall and presents the new one.

Parameters

Audience filters for transaction_abandon placements can use the following parameters (empty values mean the field isn't applicable):

Prop

Type

For example, to show a transaction-abandon paywall only for onboarding paywalls, add a transaction_abandon placement and set presented_by_event_name to onboarding. To limit it to a single paywall, add paywall_id as an additional condition.

survey_response

Usage

This is registered when a response to a paywall survey has been recorded. First, you need to make sure your paywall has a survey attached.

You can combine this with rules to show a paywall whenever a survey response is recorded or when the user gives a specific response. Again, add the standard placement survey_response to a campaign. Then, add another condition using survey_selected_option_title that's equal to the text of a particular response.

For example, if the user selected a survey option named Too Expensive, you could present another paywall with a discounted option. This is a great opportunity to show a discounted paywall to improve your conversion rate.

Parameters

Audience filters for survey_response placements can use the following parameters (empty values mean the field isn't applicable):

Prop

Type

touches_began

Usage

This is registered when the user touches the app's UIWindow for the first time. It is only tracked if there is an active touches_began placement in a campaign.

Parameters

Same as app_install:

Prop

Type

How is this guide?

Edit on GitHub