Placements

A placement is a point in your app where you insert content from Adapty. You can invoke a placement at app launch, in front of a premium feature, on a settings screen, or anywhere else.

A placement has one of three types. Two of them are for new work:

  • A flow placement serves a flow: one screen or a sequence of screens, built in the Flow & Paywall Builder. A flow can be an onboarding, a paywall, or an onboarding that ends in a paywall. To build the screen yourself, use a paywall placement instead.
  • A paywall placement passes a paywall — a product configuration you create in the dashboard — to a screen you build on your own.

The third type, onboarding placements, serves onboardings from the legacy Onboarding Builder. Adapty deprecates that builder on October 1, 2026, so build new onboardings as flows.

Rules and pitfalls

  • A placement’s type is fixed when you create it, because each type has its own set of metrics.
  • Placement IDs are unique across your whole app, so the same ID can’t serve a flow in one place and a paywall in another.
  • A manually implemented paywall and a flow can’t share one A/B test, because each needs its own placement type. To compare them, roll the flow out gradually on its own placement and measure the two against each other.
  • To move a paywall placement to a flow, create a new flow placement with a new ID, then ship an app release that calls it. See Migrate to flows.
  • The only thing you hardcode in your app is the placement ID. Everything else you control from the dashboard, without an app release: which flow or paywall it serves, audience segmentation, and A/B tests.
  • The placement ID must match the ID in the dashboard exactly. Copy it without stray whitespace. If the ID doesn’t match, the SDK request fails, and the SDK uses the local fallback file if you’ve set one up.
  • Old Paywall Builder only — turning off Show on device doesn’t remove a paywall from its placement. The placement still resolves to it without a builder configuration, so the app has nothing to render. To stop showing a paywall, remove it from the placement’s audience.
Tip

You can also manage placements programmatically using the Developer CLI.

Placements list

To view all your placements, go to Placements from the Adapty main menu. You will see them categorized by type: Paywalls, Onboardings, and Flows.

Each tab offers a comprehensive view of various locations in the user journey where flows, paywalls, onboardings, or A/B tests can appear. Each item in the list corresponds to a specific placement, allowing easy management and modification.

You can edit placement details, associate them with the desired flow, paywall, onboarding, or A/B test for a specified audience, or remove unnecessary placements. The numbers in the table reflect the analytics for placements since their activation.

placements-list.webp

From here you can:

  • Create a new placement
  • Edit an existing placement
  • Delete an existing placement
  • Download local fallback flows, paywalls, or onboardings. These files are used when a user opens the app and there’s no connection with the Adapty backend (no internet connection, or the rare case when the backend is down) and there’s no cache on the device. The same Fallbacks download covers both flows and paywalls — the SDK version you pick in the download dialog determines whether the bundle includes flows (SDK 4.0+) or just paywalls.