Push
Push element indicates a point to communicate to a customer with a push notification.
To send a push message at the right moment in the journey, add the Push element after the event or condition that should trigger the message.
Select or create push content
Anchor link toThen, select a preset from your Pushwoosh account or create one. Learn more about creating push presets.
To change the order of presets, click the sort button next to Preset. The list shows the newest presets first until you pick another order. Your choice is saved in your browser and also applies to push preset dropdowns outside journeys, such as one-time pushes and geozones.
If content approval is on for your account, only Approved versions can be selected here. Other versions show their status and stay disabled.

Send push stories
Anchor link toYou can select a push stories preset in the Push element. Push stories render only on iOS devices with Pushwoosh iOS SDK 7.0.46 or later and a Notification Content Extension for stories. Recipients who don’t have that app update yet see a regular push with the title, subtitle, and message from the preset, without the Stories images.
When you select a push stories preset, a banner in the element lists these requirements. Click Setup guide in the banner to open the iOS push stories developer guide and share it with your iOS team.

Set message type
Anchor link toChoose Marketing message or Transactional message:
- Marketing message: For campaigns and promos. All rules and limits apply. Respects: frequency capping and the silence period. Excludes: the control group users.
- Transactional message: For operational or service messages. Rules and limits don’t apply. Bypasses: frequency capping. Sent to: the control group users.
No message type is preselected. Until you choose one, the element shows a Message type not selected warning.

If the element is reached only from an Audience-based entry, Marketing message is shown with a Default badge. Choose Transactional message if the message is a service one.

Learn how message type affects delivery.
Personalize messages with Dynamic Content and Liquid Templates
Anchor link toFor greater relevance of your messages to users in the journey, you can add personalized content based on users’ behavior. For example, when sending an Abandoned Cart push, add the product name for better conversion. That reminds users of what they wanted to purchase and makes your message more convincing.
Learn more about personalization of journey messages
Use vouchers
Anchor link toYou can personalize push notifications by attaching a voucher code from a predefined pool. This is useful for promotions, discounts, and loyalty incentives.
For this, create a push preset that includes the placeholder {{voucher}} in advance.
To include a voucher:
- Toggle Vouchers to ON.
- In the Voucher Pool field, select the pool containing your available voucher codes. Make sure to add the pool of vouchers in advance.
- (Optional) Use the Assign Tag field to apply a tag to users who receive a voucher. This tag can be used for segmentation or reporting.
Learn more about vouchers
Save to inbox
Anchor link toToggle Save to inbox to keep a copy of this push in the app’s inbox. Users still get the push. They can open the same message later if they dismiss or miss the banner.
- Toggle Save to inbox.
- In Remove from Inbox, choose how long the message stays (max 30 days).
- Optionally set a message icon.
- Choose Action when inbox clicked.
- Click Apply.

Full field details and an example: Save a push to Inbox.
Configure message delivery settings
Anchor link toSet time to live for push delivery
Anchor link toUse Time to live in Delivery settings to control how long Pushwoosh retains a push notification for delivery if the recipient is offline at the time of the send attempt.
In Time to live, choose a preset period for how long Pushwoosh keeps this message available for delivery, from 1 hour to 3 weeks.

You can also choose Custom range and enter a specific number of hours, days, or weeks. The maximum period is 4 weeks.

Set frequency capping
Anchor link toUse Frequency capping to limit how often users receive push messages, preventing over-messaging and reducing churn. In the Push element settings, choose one of the following options:
-
Use global frequency capping settings
Apply the project-wide limits configured in your Global frequency capping settings.
For example, if the global limit is set to 3 messages in 9 days, additional messages exceeding this limit will be skipped.
-
Send messages without global frequency capping
The user will receive this message even if they’ve exceeded the channel’s message limits. Use this option with caution to avoid over-messaging.
-
Use custom frequency capping
Set a custom message limit for this message. If the user exceeds this custom cap, the message will be skipped, and the user will proceed to the next step.
Choose a counting mode for this custom limit: Rolling window or Calendar day.
Set send rate limits
Anchor link toThe Send rate setting controls how quickly messages are delivered to your audience. Adjusting the send rate helps you manage delivery speed, prevent backend overload, and improve overall deliverability.
Choose one of the following options:
- Use global send rate settings
Applies the send rate limits configured in your project’s message delivery settings. If no limits are set, all messages will be sent immediately. Use this option when you want delivery speed to follow your project’s default rules. Learn more about global send rate limits

- Send messages without global send rate
Sends messages as fast as possible, ignoring any global send rate limits. Use with caution to avoid overloading your backend or creating delivery spikes.

- Use custom send rate
Overrides the global send rate for this message only. Allows you to specify the number of messages sent per minute, giving you full control over delivery speed. Messages will be sent at the custom rate you define in the message element.

Enable Best time to send
Anchor link toIf you want each user to receive a push notification when they are most likely to interact with pushes, enable the Best time to send option. The time for sending the message to each user will be calculated based on their behavior and previously sent messages’ performance.

The accuracy of calculating the best time for each user depends on how many pushes you sent to this user earlier.
If there is not enough data on the user, they will receive a push at the Default time you specify according to their timezone.
Send to all user devices (from UserID)
Anchor link toWhen enabled, the message will be sent to all the devices associated with an ID of a user who reaches this journey element. Thus, if a user has several devices, all associated with a single userID, that user will receive several messages, one per device.

Send to last active device
Anchor link toTurn on Send to last active device. The message will be sent only to the device with the most recent app open under the user’s ID.

This option is mutually exclusive with Send to all user devices (from UserID). When you turn one on, the other turns off.
The same toggle is also available when sending a one-time push.
Split flow after a push
Anchor link toUse Flow options in the Push element to branch the journey when users open the push, when the push is delivered to the device, or when you use both checks.
Split flow by opens or ignores
Anchor link toSplit the remaining journey flow based on whether this push is opened or ignored. For example, email users who don’t open pushes or send another push to those who did.

To set it up:
- Turn on Split flow if message is opened. The canvas adds the Opened and Not opened branches.
- Set How long to wait to check message opens using days, hours, and mins. The maximum wait time is 7 days.
- On the canvas, connect Opened and Not opened to the next elements in your journey.

If the wait time ends while the journey is paused, the user waits at this step. Once you resume the journey, the user continues along the Not opened branch.
A user waiting on this split is lost if you pause the journey for longer than 7 days (this happens silently, with no log entry or metric), if you select Stop campaign while the journey is paused, or if you delete this Push element during editing. See What happens to users already in the journey when you pause it for details.
Split flow by message delivery
Anchor link toThis flow option depends on whether Pushwoosh can confirm that this push was delivered to the user’s device. Send users on the Not delivered branch to a fallback channel such as SMS, email, or in-app messaging so they still get your message.
To set it up:
- Turn on Split flow if message is delivered. The canvas adds the Delivered and Not delivered branches.
- Set How long to wait to check message delivery using days, hours, and mins. Use the same pattern as for the open split. The maximum wait time is 7 days.

- On the canvas, connect Delivered and Not delivered to the next elements in your journey (for example a fallback message on Not delivered).

Delivery split results appear in journey analytics on the canvas, including user counts and the percentage on each branch.
When both delivery and open splits are enabled
Anchor link toIf both splits are enabled, devices with delivered pushes proceed to either the Opened or Not opened branch. Devices whose pushes are not delivered proceed to the Not delivered branch.

When you finish configuring this Push element, click Save.