Ships most weeks. SDK releases follow semver; dashboard changes land continuously.
Same API shape as iOS, Android and React Native: Onset.configure, then OnsetOnboarding. Renders native Flutter widgets from the server definition.
Known gap: custom fonts must be registered in the app bundle; the dashboard warns when a flow uses one that isn't.
You can now look at a running experiment as often as you like without inflating false positives. Confidence is computed with always-valid sequential bounds instead of a fixed-horizon test.
Existing experiments were migrated; a few that read as "significant" under the old method now read "not yet". That's the point.
Connect an ad account and Onset reads campaign, ad set and creative on install. Map any creative to a flow, and the first screen matches the ad. Completion and trial start are reported back per creative.
Acquisition page added, with CAC-to-trial by flow.
The cached flow is now read before the first network request on cold start, which removes a 200–400 ms blank frame on slow connections.
Fixed a crash when a published flow referenced a deleted screen.
A paywall is now a screen type. Products come from RevenueCat, Stripe or App Store Connect; copy, layout and trial length are editable and testable like any other screen.
Every onboarding answer is a user property and a segment, automatically. Filter any chart by goal, experience, source, or anything else you asked. Exports to CSV and forwards to PostHog, Mixpanel, Firebase and Google Analytics as user properties.
Flows can branch on any answer. The next screen, copy, defaults and paywall can all differ per path. Branches are drawn in the flow editor and tested like variants.