pex

Driving Product Adoption

This guide sets up an adoption milestone end to end: define what "adopted" means, attach a nudge, and read the lift. See the Adoption Engine concept for the model.

Before you start

You need events flowing into Apex. A milestone is defined over your own event/trait catalog, so wire the event that means "adopted" first — from the web snippet, the mobile SDK, or your backend. Any source works.

1. Define a milestone

Open the DEFINE surface

Go to Settings → Workspace → Analytics → Adoption milestones (beneath the Active User Definition). Start from a template pack, or add one manually.

Say what "adopted" means

Pick the event (e.g. report_run) or trait (e.g. plan = pro) that means the user adopted the feature. Give it a feature key (reporting) and a priority.

Set the gap window

Choose how long after signup an unmet milestone should be nudged (e.g. 3 days).

2. Attach a nudge

Each milestone points at a nudge journey — the email + bell the user gets when they hit the gap. Scaffold a starter journey (the default) or attach an existing published one. Nudges are marketing-class, so they respect opt-out and frequency caps.

New milestones start off. Turn one on to begin nudging.

Info

Apex only sends the single top-priority unmet nudge per user per cadence (default 7 days) — a user behind on five features gets one nudge, not five.

3. Read the lift

Open Engagement → Adoption. For each milestone you'll see the funnel (tracked → nudged → adopted) and the headline number: lift vs holdout. A deterministic ~10% of users are held out and never nudged, so the difference in adoption rate is the real, causal impact of the nudge — not last-touch attribution.

If a milestone's lift is ~0, the nudge isn't helping: retire it or rewrite the message.

Next Steps