Show the whole story on the lock screen
Pushwoosh starts and updates a live card for an order, a ride or a match, from the same campaign and Journey as the rest of your push. iOS keeps it on the lock screen and in the Dynamic Island for as long as the event runs.
Trusted by 80,000+ companies to scale their engagement
The format in full
A plain push says something happened, once. A Live Activity keeps saying it — the same card on the lock screen rewrites itself for as long as the order, the ride or the match is still going.
Local start
Start the activity from inside your app with ActivityKit, iOS 16.1 and later.
Push-to-start
A token-based push opens the activity with the app closed, iOS 17.2 and later.
Live content updates
/updateLiveActivity rewrites the same card in place as the event moves along.
One card for the whole segment
Push once to a shared activity ID and every device running that activity updates together.
Synced across the lock screen and Watch
One activity, kept in sync across surfaces, including the Apple Watch Smart Stack on watchOS 11.
One token helper
setup() tracks and refreshes your push-to-start and push-to-update tokens automatically.
Where a Live Activity sits between a push and a screen
| When the message is | Send | Where it lives |
|---|---|---|
| One change of state, said once | A plain push | The banner, then the lock screen list |
| One change worth a picture | A rich media push | The expanded notification |
| A choice the user can make in a tap | An interactive push | Buttons on the notification |
| An ongoing event, minutes to hours | A Live Activity | One card on the lock screen and in the Dynamic Island, rewriting itself in place |
| A record the user comes back to later | Message Inbox | A list inside the app |
| Detail, a form or a layout | An in-app message | A full screen in the app |
The job it does inside a journey
One Journey for both platforms
A Live Activity is an attribute of a message you’re already sending, not a separate integration. The audience, the trigger, the segment and the customer profile stay where they are, and the format decides what that message looks like while the event is still running.
iPhones get the Live Activity, Android 16 phones get a Live Update, and older devices get a standard push, all from the same Customer Journey that runs your push, in-app and email.
An order worked end to end
The restaurant accepts the order, and the Journey opens the Live Activity with a push-to-start call.
A silent push warms the courier data in the background, invisible to the user, so the first update lands with a real name and a real ETA. Cooking, courier assigned and two minutes away then rewrite that same card. Apple keeps Live Activities to the current event only, so any upsell for the next order runs as an in-app message on the same Journey, not on the card itself. The delivered event ends the activity and leaves the receipt in Message Inbox.
What to use it for
A Live Activity earns its place when something is genuinely underway and the user already started it — an order, a trip, a match already in progress. Apple restricts the surface to that: no announcements, no offers, nothing the user didn’t set in motion.
| Moment | What the card carries | What the user does |
|---|---|---|
| Food delivery · an order in progress | Accepted, cooking, courier assigned, minutes away | Glances at the lock screen instead of reopening the app |
| Ride-hailing · a trip underway | Driver en route, ETA, trip progress | Checks the Dynamic Island instead of the map screen |
| E-commerce · after the purchase | Shipped, out for delivery, stops away, delivered | Follows the parcel from the lock screen and knows when to be in |
| Marketplaces · several orders at once | One card per shipment, each from its own seller | Keeps track of parcels landing on different days |
| Airlines · the day of the flight | Gate, boarding, delay, baggage belt | Checks the gate from the lock screen in a loud terminal |
| Car-sharing · an active rental | Session running, fuel or charge, time left, return point | Watches the session countdown without opening the app |
| Live sports · a match in play | Score, clock, period | Follows the match with the phone locked |
| Sports betting · an in-play bet | Bet status, live odds, cash-out window | Acts on the cash-out before the window closes |
Sports betting, trading, banking and telemedicine use cases need a compliance sign-off before launch — loop in your Pushwoosh CSM early.
Platform & technical coverage
Live Activities are an iOS-only surface, and the version floors are the first thing to check against your own install base. The last column says where the push is the format itself, and where it only drives something your app already ships.
| Capability | iOS | Android | Delivered by |
|---|---|---|---|
| An ongoing card that updates in place | iOS 16.1+, as a Live Activity | Android 16 (API 36), as a Live Update | The push, rendered by the SDK against the OS live-activity API |
| Remote start without opening the app | iOS 17.2+, push-to-start | Yes, from the server | Token-based APNs only — certificate-based configuration isn't supported for Live Activities |
| Content updates | /updateLiveActivity | OPERATION_UPDATE in the Messages API | Same activity ID ties every update to the running card |
| Updating everyone on the same activity | Push once to the shared activity ID | Android updates per device | Every device holding that activity ID re-renders on the next push — there's no separate broadcast channel |
| Always-visible compact indicator | Dynamic Island (iPhone 14 Pro+), Apple Watch Smart Stack | Status bar chip | The OS, from the live activity |
| Widget code | A Widget Extension with SwiftUI/WidgetKit, built by a developer | pushwoosh-liveupdates SDK module ships the default style | Apple requires your own widget UI; Android ships the OS progress style |
/updateLiveActivityOPERATION_UPDATE in the Messages APIpushwoosh-liveupdates SDK module ships the default styleSecurity & hosting
Pushwoosh runs on its own hardware in the US and Germany, under GDPR and BDSG.
How it works
Building the widget is a one-time engineering step. After that, the three operations run from the Control Panel and the API like any other message in the Journey.
-
Build the widget once (developer)
Add a Widget Extension with ActivityKit and SwiftUI/WidgetKit, following Apple's Live Activity attributes model. This step needs a developer — Apple requires your own UI code for the card.
-
Drive the whole lifecycle from the server (API)
Push-to-start opens the activity,
/updateLiveActivityrewrites it, and an end call closes it, all through the Messages API with one activity ID tying the operations together.setup()manages the push-to-start and push-to-update tokens for you. -
Orchestrate it (no-code)
Fire those operations from the same Customer Journey as the rest of your messaging, against the same segment and the same customer profile. The Android half of the same story runs from that Journey too, through Live Updates.
Limits worth knowing
Explore related products
Live Updates put an order, a ride or a delivery on the Android 16 lock screen as one card that refreshes itself. Pushwoosh starts, updates and ends it from the server, from the same campaign and Journey as any other push.
Mobile push notifications by Pushwoosh — every-device reach, rich content, precise targeting, cross-channel Journeys and 99% uptime. Turn notifications into loyal, paying users.
Map out and streamline your campaigns with one visual tool. Communicate, engage, retain, convert, segment, and experiment using Pushwoosh Customer Journey Builder.
In-app messaging by Pushwoosh — onboard, upsell, announce and collect feedback right when app users are paying attention. No-code editor, native SDK layouts, per-element analytics. Free to start.
Explore a smart way to reach out to a massive number of customers at the right time. Cater the best possible value at the least possible cost to your mobile app users.
Offload your app and web messaging to Pushwoosh API. We manage push, email, SMS, and data streams — you build successful products without limits.