Rheo
Rheo growth platform with Analytics, Convert, and Engage on a shared customer profile
Company

Rheo is a growth platform: Analytics, Convert, and Engage on one SDK

Analytics, Convert, and Engage share one customer profile and one SDK. Rheo does not replace RevenueCat, Superwall, or Stripe: it connects growth work to revenue.

Most subscription apps do not have a revenue problem on day one. They have a fragmentation problem. Product analytics lives in one tool. Paywalls and onboarding ship through another. Lifecycle email and in-app nudges sit in a third. Attribution reports in the MMP. Billing truth in RevenueCat or Stripe. Each layer works. The growth team still cannot answer a simple question in one sitting: which campaign produced users who paid, and what did we change in the journey when we learned they did not?

Rheo is now positioned as a growth platform with three products on one SDK and one customer profile: Analytics, Convert, and Engage. This post explains why we grouped them, what each product owns, what we deliberately do not replace, and who gets the most value from the unified model.

If you have followed Rheo since launch, read Introducing Rheo for the original story on remote native flows. This announcement is the next chapter: the same journey layer, extended with first-party analytics and lifecycle messaging so diagnosis and action share identity.

The fragmented growth stack

A mature subscription app often runs a stack like this:

LayerTypical toolsQuestion it answers
AttributionAppsFlyer, Adjust, SingularWhich install came from which campaign?
Product analyticsMixpanel, Amplitude, PostHogWhat did users tap and when?
BillingRevenueCat, Stripe, native StoreKitDid they subscribe or renew?
Paywall presentationSuperwall, RevenueCat Paywalls, nativeWhich offer UI converted?
JourneysHardcoded screens, Rheo, remote configWhat path did they walk before paying?
LifecycleCustomer.io, Braze, MailchimpDid we email or push them after churn?

Each vendor is strong in its lane. The cost shows up in glue: exporting cohorts, matching anonymous ids, rebuilding segments in three UIs, and waiting on app releases when analytics finally points at onboarding step four.

Fragmentation is not a failure of engineering. It is what happens when growth work spans install, product behavior, payment, and messaging: and each category matured as its own market.

Three products, one profile

Rheo groups growth work into three products that share the same end-user identity and SDK instrumentation:

Analytics

Analytics is first-party product analytics with revenue attribution tied to acquisition context. Funnels, retention, and segments are built on the same profile that saw your onboarding flow, your paywall step, and your win-back surface: not a spreadsheet join you run every Monday.

Analytics answers: where users drop off, which channels produce paying subscribers, and whether a cohort retains after trial.

Convert

Convert is journey experimentation: multi-step native flows, branching, targeting, and flow-level A/B tests without an App Store release for every copy or structure change. Onboarding, paywall timing, cancellation surveys, ATT branches, and stories-style sequences live on the visual canvas.

Convert answers: what to change in the path, which variant wins on trial starts and purchases, and how step-level lift connects to revenue.

Engage

Engage is lifecycle messaging and automation: in-app prompts, campaigns, and durable workflows triggered by traits, funnel state, and billing milestones: on the same profile Analytics already uses.

Engage answers: who to nudge after day-one drop-off, how to win back canceled subscribers, and how to coordinate email and in-app without maintaining duplicate audiences.

One SDK means acquisition fields captured at first open can still drive a segment six weeks later when RevenueCat reports a renewal or a cancel.

What Rheo does not replace

Clarity here saves integration pain.

ToolRheo relationship
RevenueCatEntitlements, offerings, receipts, subscription charts remain RC. Rheo orchestrates when users hit a paywall node; RC (or your integration) still presents purchase UI and owns billing truth.
SuperwallPaywall templates and paywall-centric tests can stay on Superwall. Rheo owns multi-step journeys around those moments; many teams use RC or Superwall at the paywall step inside a Rheo flow.
StripeWeb and hybrid billing on Stripe stays on Stripe. Rheo can attach purchase and customer events to the same profile for analytics and segments; it does not process cards or manage subscriptions for you.
Your MMPInstall and campaign attribution still flow through AppsFlyer, Adjust, or similar. Rheo ingests first-touch and campaign dimensions for Analytics and targeting; it does not replace SKAN reporting or media buying dashboards.

Rheo is not asking you to rip out a billing stack that works. It asks you to stop duct-taping growth decisions across tools that never shared a user id.

For placement in a full subscription stack, see Where a flow platform fits in your subscription stack.

Shared SDK, shared attributes

The integration model is intentionally boring:

  1. Install the Rheo SDK once in your iOS, Android, React Native, or web host.
  2. Connect RevenueCat, Superwall, Stripe, and your MMP in Rheo app settings where supported.
  3. Publish flows on Convert channels; read funnels and revenue by campaign in Analytics; enroll users in Engage automations when traits or events match.

Acquisition dimensions (media source, campaign, creative) normalize into profile fields early. Billing events attach as the user progresses. Experiment assignment on a flow channel travels with step analytics so you are not guessing which variant produced revenue.

Rheo flow canvas with screens connected in the visual editor

Engineering does the one-time wiring. Growth owns iteration on the canvas, readouts in Analytics, and lifecycle logic in Engage without opening a ticket for every headline test.

Who this is for

The unified platform matters most when:

  • Paid UA is live and you need channel-level subscription revenue, not just install CPI.
  • Onboarding and paywall iteration is blocked on release trains.
  • Lifecycle campaigns should respect the same segments you use for funnel diagnosis.
  • Step-level drop-off must connect to billing outcomes without a warehouse project for every experiment.

Indie teams with hardcoded onboarding and no ad spend may start with Convert alone and add Analytics when campaigns start. Scale teams often connect all three and keep RevenueCat and the MMP as systems of record.

How the three products work a week in your team

A concrete rhythm:

DayAnalyticsConvertEngage
MondayReview weekend funnel by campaignShip variant B on onboarding channel:
WednesdaySegment: trial started, no day-2 sessionHoldout on paywall timing testEnroll day-1 drop-off in in-app nudge
FridayCompare channel ROAS on first paid periodRoll winner to 100% trafficTrigger win-back branch for canceled users

The point is not a single dashboard vanity metric. It is one customer profile carrying context from install through payment through messaging.

Honest limits

Rheo is not a data warehouse, not an MMP, and not a replacement for deep product analytics if you already standardized on Mixpanel for every squad's event taxonomy. Teams with mature warehouse + BI setups may still export Rheo events; many keep Rheo as the subscription funnel and lifecycle layer while BI owns company-wide reporting.

We are also not claiming Engage replaces a full marketing automation suite for every email program. Engage is aimed at product-led lifecycle tied to in-app state and subscription milestones.

Rheo started as a way to ship native flows over the air. The growth platform framing is the recognition that shipping without measuring and following up leaves money on the table: and that measuring in one tool while acting in another recreates the glue problem we set out to solve.

Start for free