Lifecycle flows that
run themselves.
A journey is a small program your audience walks through: enter on a segment or an event, send a push, wait, branch on what the person did, tag them, split them into arms with a holdout. On OpenPush it is free, uncapped, and built in a visual editor that saves every revision.
A small vocabulary, read in one look.
Entrances, sends, waits, branches and goals. Enough to express every lifecycle flow we have ever shipped in a game, and few enough that a new teammate reads a journey in one look.
Segment or event
Enter everyone in a segment as they join it, or enter one person the moment your app records an event like level_up or purchase. Exit rules: on session, on an event, or when they leave the audience. Re-entry after a cool-down you choose.
Send a template
Any template, with personalization tokens, images and actions. Frequency caps and quiet hours apply inside the journey exactly as they do to a broadcast — held, not dropped.
Durable timers
From one minute to a year. Timers survive restarts, and pausing a journey shifts every waiting person by the length of the pause.
Branch on behaviour
Did they click, receive or confirm the last push? Are they in a segment right now? Two arms, evaluated live.
Weighted arms and holdouts
Two to twenty arms with weights that sum to a hundred. An empty arm is a holdout — the control group you need to know whether the journey earns anything.
Write back to the person
Set or merge data tags as people move — so the next segment, and the next journey, already know what happened.
New players, first three days.
A segment entrance for players whose first session was in the last day; three pushes, each one skipped if the previous one was tapped.
first_session within 24 hours; exit when they leave the segment
template "Welcome", with the player's name
yes → skip ahead · no → the nudge
template "Daily Reward"
Illustrative — the exact schema is in the Journeys API reference.
The moment someone levels up.
One line in your app — OpenPush.trackEvent("level_up", ["level": 10]) — enters that person into the journey within seconds. Every qualifying event starts its own run, so two level-ups are two rewards.
where level is greater than or equal to 10
template "Level Up Reward", the level filled in from the event
yes → done · no → one offer
template "Skin Sale A"
Lapsed spenders, and proof it worked.
The journey vendors love to show you — with the part they leave out: a control arm. Without the holdout you cannot tell whether the push brought people back or they were coming anyway.
last purchase over 30 days ago and level at least 20; exit on session
ten percent are the holdout and get nothing
template "Comeback D7"
a session exits the journey early — that is the win
entered, completed, exited early — per arm
Segment and event entrances; push and in-app message steps; wait, wait-until-event and time windows; tag; yes/no on segment membership and on what the person did with the previous push; weighted splits with holdout; Live Activity and webhook steps; goals that end a run when the person converts; exit and re-entry rules; per-node counts; a visual editor with saved revisions; and the REST API. From your coding agent: the MCP server reads journeys and their stats and prepares journey drafts — activation stays with you, in the console. Personal journeys — the AI decision step — are opt-in per app and choose each person's next step from options you define; the step is on for every workspace today, within a small daily budget, and becomes part of Pro and Premium for workspaces created after paid plans go on sale. Email and SMS steps are not part of OpenPush.
Journeys questions.
How many journeys can I run?
As many as you like, with as many steps as you like. There is no plan tier that raises a cap, because there is no cap.
Do caps and quiet hours apply inside a journey?
Yes — exactly as they do to a broadcast. A push a journey wants to send during someone's quiet hours is held and released when the window opens; a push over their frequency cap is held, not dropped, and the journey's report shows it.
Can I see it before I trust it?
Yes. Install the OpenPush.ai App, link your phone, and the sample workspace lets you run the welcome ladder, the level-up trigger and the win-back journey against your own device in minutes — with the waits compressed so you are not waiting a day to see step two. The app →
Can I edit a journey that is running?
Yes. Every save is a revision; a live revision cannot remove a node someone is currently standing on, and pausing shifts every timer by the length of the pause. Resume, and nobody is skipped.