Log in

The Complete Guide to Mobile Push Notifications in 2023

What Are Push Notifications and Why Do They Matter?

We do everything on mobile devices these days. We chat with friends, listen to music, watch videos, read books, place orders, and even work and conduct banking, all online. And while 9% of that is done on a desktop device, the remaining 91% is done using mobile apps.

For businesses and app developers who want to stay at the forefront of their users’ minds, push notifications are essential.

Push notifications are short messages that let users know about key events or actions they can take in the app. They’ll pop up on the user’s screen, triggered by a timed event or by certain parameters or actions the user has met, and when clicked will take the user to a specific screen within the app.

And here’s why they matter: Push notifications can increase user retention by as much as 3 to 10x. Added to this, personalized push notifications that come from user behavior triggers can actually drive up to 48% of users to make in-app purchases.

What's the Difference Between In-App Messages and Push Notifications?

Unlike mobile push notifications, in-app messages are displayed within the app itself during an active session. In-app messages are only visible to those who are currently using the app: their goal is encourage a user to take a certain action in the app (for example, leave feedback in AppStore or buy a subscription).

Three Case Studies Showcasing Successful Push Notification Campaigns

There are plenty of outstanding case studies out there that demonstrate how successful push notifications can be at increasing desired user actions. There are three we want to highlight.

These case studies show that push notifications can bring real, significant results.

The Pros and Cons of Push Notifications

Like everything else, there are both pros and cons to using push notifications for your business. Let’s take a look at each.

The Pros

High Visibility

Mobile push notifications appear on your smartphone screen even when the phone and mobile app aren’t in use. Because of this, mobile push notifications attract more attention than other communication channels, allowing you to capture user interest and bring them to your app.

Since users check their mobile phone an average of 63 times a day and most users spend over 4 hours per day on their phone, capturing some of that attention is invaluable.

These notifications don’t require users to do anything; they show up automatically, and users can click the ones they’re interested in.

Fast Response Times

On average, a mobile push is read within an hour of being sent. For comparison, email may take up to 6 hours to be read. This can mean faster response times and more immediate results.

Free to Send

Unlike SMS or Viber, mobile push notifications are sent free of charge, reducing your overall communication expenses. For example, many brands first try to send a push notification, and if that doesn’t work an SMS is sent.

Flexible Segmentation with Automation

Even with minimal information about the user, you can create effective push notifications by looking at different segmentation options. You can use all available data about your contacts, including the following:

Nearly all marketing processes can be automated, and push notifications in a mobile app are no exception. Think about the following options when combined with segmentation:

The Cons

App Development

Push notifications are sent through the app. If you don’t have an app, you won’t be sending push notifications. But it’s important to keep in mind that even if it exists, the app needs to be finalized, and you need to integrate platforms that distribute push notifications with your software. Therefore, you’ll often need to work with both iOS and Android developers.

Permission to Distribute Push Notifications to iOS Users

Android is simple: Install the application and subscribe to push notifications. Easy peasy.

That’s not so true for Apple.

iOS requires each individual user’s consent to receive push notifications; they need to actively opt in. This means that you will have to work on the conversion from app installation to push subscription. For comparison, average conversion to a subscription is 44% for iOS, which is less than half of Android’s 91%.

You can read about how to increase the percentage of users opting in to push notifications on the MyTracker blog.

Fixed Structure

The set of push fields is defined in the mobile operating system and cannot be customized. For example, you cannot add two headings or three pictures. You need to be creative to stand out from other pushes, but this can be difficult to do with such limited structural flexibility for the message itself.

Disappear when clicked

Unlike SMS, push notifications are not saved after being read. And if you think that users need another prompt to take a specific action, it’s okay to send a follow-up push notification later on.

Comparing Mobile Push Notifications to Other Communication Channels

According to Apple, 94% of iOS devices support sending mobile push notifications, while for Android devices this figure reaches 99.4%.

And according to Leanplum, mobile notifications encourage up to 9.6x more users to make in-app purchases. In addition, customers who receive push notifications spend 16% more time inside the app than those who do not receive any notifications on their phone.

Comparison of communication channels:

Mobile push



While email undeniably has an advantage when it comes to customization and creative flexibility, the rapid response rates of mobile push notifications and SMS are significant.

Push Notification Mechanisms

In general, when we talk about push notifications sent in mobile apps, we are referring to two very specific types of push notifications: Android and iOS.

The vast majority of mobile devices are running Google's Android or Apple's iOS mobile operating systems, with push notifications delivered either through the Google Firebase Cloud Messaging (FCM) push notification service or through Apple (APNs).

The main difference between FCM and APNs is FCM’s cross-platform nature. It can be used to send push notifications to Android and iOS devices, as well as Web pushes.

Push notifications on Huawei

In May 2019, the US government announced restrictions on the Chinese company Huawei, one of the world's largest manufacturers of smartphones and other devices. As a result of this move, Huawei was no longer allowed to use the Google Android operating system in their smartphones and mobile devices, which in turn meant that app owners could no longer send push notifications via FCM to users on Huawei devices.

Huawei Push Kit

Push Kit is a messaging service that allows you to establish a messaging channel between the cloud and the device. The Huawei Push Kit is designed for Huawei Android and Harmony OS devices, but also supports push notifications for iOS devices.

Push notifications on iOS

Obtaining permission to send push notifications

Before sending push notifications on iOS, the user must be shown a system window in which they can either opt into receiving push notifications, or choose not to allow them to be sent.

push notification alert
In this notification, the name of the app is highlighted in red, and the types of notifications that the app is requesting access to are underlined in green.

The user can then customize how the notifications work. Do they want an alert or a sound to chime when they have a notification from your app? Do they want an icon to appear? They can also set options for emergency notifications, preliminary notifications, or even enable options like notifications through carPlay.

Different options include the following:

What iOS Push Notifications Consist Of

The Basics

Push notifications on iOS have visual and configuration components:

Title - the title of the message.

Subtitle - the subtitle of the message.

Body - the content of the message.

Sound - the sound played on the user's device when the message is sent. Any sound can be used.

Badge - "red dot" on the notification icon. It can display the number of unread notifications.

Attachments - media files stored on the user's phone. It can be a video, image or gif.

    Category - adding Action buttons to interact with the notification or media files in the notification (via Notification Service Extension or Notification Content Extension actions). The buttons are shown when you drag the notification down or long-press it.

    interruptionLevel - Starting with iOS 15, this option tells the system how important the notification is and when it's best to send it.

    thread-id - You can give each notification an ID so that they can be grouped. For example, informational messages will be displayed above, and promotional messages below. 

    Rich Media (Multimedia Notification)

    The maximum size for sending push notifications on iOS is 4KB, but you can add images, videos, or gifs to push notifications using various extensions.

    Extensions are mini-applications that "intercept" a push notification at the time it is sent by the system and add media files to it before it is displayed on the user's device.

    To add Rich Media, Service Extension and Content Extension may be used.

    Content extensions allow you to customize push notifications by adding custom colors and branding, or by including media and other dynamic content in the notification interface.

    For example, instead of a regular text notification, you can send a carousel to the user with multiple images, titles, subtitles, and buttons. At the same time, each notification can have its own description text and deep link.

    Here are 11 push notification templates that follow the entire user journey, from app-install to preventing churn.

    Types of Push Notifications on iOS

    Local Notifications

    These notifications are generated locally and offline by the app. Local notifications can be scheduled as a reminder to be sent at a precise time of day, or by geographic location. In order to send local notifications, you need to ask the user for permission to send them.

    For example:

    Remote Push Notifications

    Notifications are created in third-party services and sent to the user's device via APNs. Because of this, it can take a couple of minutes between the notification being sent and being delivered. Remote push notifications are used to transmit information in real time.

    How to send local and remote push notifications

    To send remote push notifications, you need to get a registration-token.

    The APNs service needs to know the user's device address — the registration token — before it can claim on that device. This address takes the form of a device token that is unique to both the device and your app. During startup, the app interacts with the APN and receives a token for its device, which you then forward to your server. Your server uses this token for all messages it sends.

    Having a registration token for a specific user, you can send pushes to their device through your own server, a third-party service, or Firebase Cloud Messaging.

    The process of obtaining a token and sending push notifications can be seen in the diagram below.

    How to activate local and remote notifications

    Local notifications can only be activated by date, time, or location. Remote notifications can be automated, personalized, and targeted in a variety of ways, depending on the capabilities of your push notification provider. You can set up remote notifications based on app-specific behavioral triggers, custom audience segments, and omnichannel activity.

    How to update local and remote notifications

    To update local notifications (add new logic, set new parameters, change design or content), your development team must release a new version of the app. Because remote notifications are sent through an external server, you can make changes to your campaigns without releasing a new version of the app.

    Remote push notifications also have two modifications - Provisional Messages and Silent Push Notifications.

    Provisional Messages

    These are messages sent without sound or a pop-up banner. You don't have to ask the system window for permission to send these notifications, but they also don't grab users' attention and can get lost among other notifications.

    Notifications have two possible calls to action (CTA):

    1. “Turn off”, which allows the user to refuse permission to get notifications.
    2. “Keep”, with two options:
      1. Deliver Prominently — deliver explicitly, that is, request all previously set parameters for sending regular notifications with sound and pop-up banners.
      2. Continue Delivering Quietly - continue to deliver in silent mode.

    Provisional messages allow users to focus more on using the app without having to explicitly ask them for permission to send notifications on first launch. New users won’t yet know whether push notifications are useful to them or not, so they will first see the actual content of these notifications and their various uses in provisional messages before deciding if they want to receive notifications or not.

    Silent Push Notification

    These notifications are sent without turning on the screen, sound, or other alerts, and they can only be seen in the Notification Center.

    Silent push notifications “wake up” an app from the background and are used to initiate certain calls to the background fetch API, trigger certain updates, or allow a task to run in the background.

    Push Notifications in iOS 16 - An Overview of Changes

    iOS 16 has recently been released and Apple has introduced a number of new changes related to the lock screen and notifications. Some of them have just been announced on iOS and will appear in the coming months. Let’s look at the most prominent ones.

    How Notifications Appear on the Lock Screen

    In iOS 16, you can customize how notifications appear on the lock screen. Three formats are available: quantity, stack, and list.

    You can configure these in the menu "Settings" → "Notifications" → "Display as".

    Live Activities

    Live Activities is scheduled to be released at the end of 2022, and will include a new type of “live” push notification. This is possible thanks to the open API, and will allow third-party developers to create special banners on the lock screen for their apps that can display any information online.

    You can monitor the approach of a taxi or the score of a sports match, both of which are happening in real time.

    Notifications in Safari

    Safari will have push notifications coming in 2023. Safari is Apple’s web browser (think FireFox or Google Chrome). Right now, one of the biggest complaints about when Safari is running in the background is that it lacks push notifications for web apps.

    As an example, notifications from websites via Safari will allow banks to use web apps with functionality close to normal ones, even after their apps have been removed from the App Store. This applies to software that has and has not been removed from the app store; any company that only has a web version of their product can use notifications for their customers through Safari.

    Browser notifications come with a lot of potential. Devices with low memory can now exclusively use the web version of the resources and tools they need without sacrificing functionality or essential memory space.

    Push Notifications on Android

    Getting Permission to Send Push Notifications

    For the sender, the main difference between Android and iOS is that iOs users must opt in to receive notifications, while Android users automatically grant permission when they download an app.

    Additional system permission to send push notifications isn’t required.

    What Android Push Notifications Consist Of

    Push notifications on Android have visual and configuration components that include the following:

    1. A small icon, which is required and set by the developer
    2. The name of the application.
    3. Time stamp, which is automatically created by the system, but the developer can override or hide it
    4. A large icon, which is optional but most commonly used for contact photos — don’t use this for the app icon
    5. Title, which is optional and set by the developer
    6. Text, which is optional and set by the developer
    7. Badge - setting the dot on the app icon
    8. Priority - setting priorities
    9. Style - customize the display of notifications, including adding a large image
    10. Group - grouping notifications.

    Action Buttons

    Add buttons to push notifications that, when clicked, will perform a specific action within the mobile app.

    For example, the “Reply” button will immediately open the specific chat within the app, and the “Archive” button can send the message to the Archive without opening the app itself.

    It is also possible to configure the ability to respond directly to the push notification:

    The Priority of Notifications

    Android has a system for determining the priority of a notification; it determines whether a notification will come with a sound, and whether it will show up when the device’s screen is otherwise turned off.

    The priority levels include the following:

    Group (Notification groups)

    Android also has the ability to group messages.

    Expandable Notification

    A typical notification includes a title, a line of text, and one or more actions that the user can take in response. To provide even more information, you can also create larger expandable notifications. This is done using the style settings (Style) and is divided into two types: Large Image (the image expands) and Large Block of Text (the text expands).

    Types of Push Notifications on Android

    Just like in iOS push notifications, in Android the collection is divided into two types according to the method of sending: local and remote. Local notifications are sent and configured in the same way as in IOS. To send remote pushes in Android, Firebase Cloud Messaging (FCM) is used. Below is the entry diagram.

    1. The Notifications Composer tool provides a user interface for composing and configuring messages. To fully automate and support all types of notifications, you must create notifications requests in a trusted server environment that supports the Firebase Admin SDK or FCM server protocols. This environment can be Cloud Functions for Firebase, App Engine, or your own server.
    2. The FCM backend that accepts requests to send notifications, divides notifications by topic, and generates notification metadata like notification ID.
    3. The platform transport layer routes the notification to the target device, handles delivery of the notification, and applies platform-specific configuration as needed. This transport layer includes the following:

      Note that transport layers are not part of the core FCM product. FCM notifications sent to a platform’s transport layer may be subject to platform-specific terms and conditions, rather than FCM’s terms of service. Android message routing through ATL is subject to the Google API Terms of Service.

      There are two types of FCM messages: notification messages and data messages.

      Notification messages are standard push notifications with body, title, icon, and sound. FCM handles these in two ways:

      Data messages, on the other hand, are customizable messages with user data. The app handler is always triggered and the app processes the data.

      As soon as it’s received using any of the above messages, a notification can be shown to the user. To create and send a notification, you need the Notification API and the Notification Manager API.

      Here are 11 push notification templates that follow the entire user journey, from app-install to preventing churn.

      Push Notification Automation Scenarios

      Push campaigns can be used to solve various issues app developers face, including increasing retention, reducing churn, increasing average revenue per user (ARPU) or average check, and increasing the number of paid subscriptions.

      To create a push campaign, you must decide on the following:

      Some of these processes can be automated with the help of smart push notifications.

      Smart Push Notifications

      The concept of smart push notifications means partial or complete automation of certain processes when it comes to conducting push notification campaigns. In the next sections, we’ll talk about how to automate push campaigns so that you can benefit from these features.

      Multi-variant Testing

      Before sending pushes to a large audience, you need to test their effectiveness on a small one. This will help you determine which parts of the notification work, and which don’t.

      You can test the following components:

      To test multiple variations of push notifications at once, multivariate testing is used instead of regular A/B testing.

      And as a method of multivariate testing, "multi-armed bandits" models are usually used.

      How to Optimize Your Push Notifications Strategy

      Create Personalized Content

      Personalization can boost engagement with notifications by up to 400%.

      It’s more than likely that you already have the following data for personalizing push notifications:

      All these characteristics will help you craft messages that are as personal and relevant as possible to each individual user.

      To create personalized push notification texts, you can use the GTP-3 neural network. It was developed by OpenAI, and it’s currently the most powerful generative network in the world. The text description of the task to be generated and the input data are fed to the network input.

      What This Looks Like

      Here’s an example of creating push notification text using GTP3.

      This is what generation task and input data looks like:

      Create a push notification text to contain user name, tags and the topic

      User name: Alexandra

      Tags: last chance to buy, personal offer

      Topic: subscription at 80% discount .

      These are the text variants proposed by the neural network:

      Localize Push Notifications

      If the app has an international audience, it’s crucial to consider the localization of push notifications.

      For some apps, it’s necessary to translate the text of different push notifications into all languages that the app supports. This can also be automated using the GTP-3 neural network. Just specify the source text of the push, and tell it to translate the text into any other supported language.

      Use Image Push Notifications

      It’s not just about the text; sometimes, customizing and testing multiple images can also significantly impact results.

      For this purpose, you can use the DALLE-2 neural network from OpenAI. This is one of the most powerful networks for generating images from a text description. As an input, you can set a text description of the image that should be added to the push when sending.

      Push Image Generation Example

      “A photo of a running man in front of the sunset and the beach”

      This is what resulted:

      Looking to improve the results you get from push notifications? Knowing how to optimize them can make all the difference, and they can be optimized just like any other marketing messaging. Let’s look at how to do this.

      Rate Your current Push Notifications

      The effectiveness of notifications can be measured by the number of interactions. The most appropriate metric for this is CTR, the ratio of clicks on a notification to the total number of users to whom a notification was sent.

      The average CTR for push notifications on Android is 4.6% and on iOS it is 3.4%. If the CTR of your push notifications is below these values, then it's time to optimize them.

      Expand Your Current Push Notifications

      If you used to send only text pushes, then try adding multimedia files such as images, videos or gifs. You can also test out emojis.

      Adding emojis can improve notification engagement rates by 20% and media files by 25%.

      Pick a time to send

      According to Airship, the push notifications reaction rates are best on Tuesday (8.4%) and Sunday (8.1%).

      During the day, notification interaction peaks at 13:00 (8.2%) and from 19:00 to 23:00 (ranging from 7.8% to 11.4%).

      This is an average of apps across all categories globally and can be used as a starting point, but keep in mind that the best time to submit may vary for your app's audience. You need to test, analyze and draw conclusions.

      Don't send too many notifications

      According to VWO Engage, 62% of users get annoyed when push notifications come in too often.

      HelpLama research shows that 3-6 push notifications per week is the optimal number to send.

      One is not enough, because users will not become familiar with it and may consider the notification random.

      More than 6 is ​​too many, and with so many notifications it is difficult to keep them relevant. Irrelevant notifications are also perceived as advertising spam and can lead to a rejection of pushes or deletion of the app altogether.

      Some types of notifications are better to not send at all, to avoid overloading the communication channel. These include the following:

      Tools to Help Set Up Push Notification Campaigns

      Push campaigns can be configured independently, but there are plenty of tools you can use to help streamline the process, streamline teamwork, and work with new specialists.

      These are ready-made solutions on the market that can help send, optimize, generate, or measure the effectiveness of push notifications. These are the ones we recommend:


      Audience segmentation, customization and personalization of notifications, automated sending process, analysis and optimization of push campaigns.

      Pricing is available on request.


      Specialized solutions for different types of applications — mobile games, e-commerce, delivery and subscription applications.

      The price is from $330 per month. There is a 14-day trial period.


      A complete set of tools and additional functionality: built-in localization, geolocation campaigns, temporary campaigns and support for deep links.

      Pricing is available on request.


      Solutions for sending promo notifications, chat mentions, transactional pushes and conversion boosting.

      The price ranges from $9 or $99 per month, depending on what you need. There is a free tariff plan and an advanced one, customizable to the needs of the company.


      Service for building push campaigns based on machine learning, which automates the mailing process and integrates with analytics systems for in-depth analysis of campaign results.

      Pricing is available on request.

      To Sum Up

      Push notifications can be an effective channel for user interaction, but they can also become annoying spam that can break the chain of communication and even lead to the removal of the app.

      They should be used with care, drawing on a lot of open source research, or ideally data from your app and A/B testing, to determine what works best in any given context.

      There are several ways marketers can improve the effectiveness of in-app push notifications: using rich media formats, time slots, triggers, and notification personalization.

      With the development of technology and the availability of data, the potential to attract an audience through push notifications will grow. But along with it, the annoyance from the numerous notifications that all installed apps send in the struggle for user attention will also grow.

      Finding that balance between getting attention and being intrusive is a major challenge for push notifications. If you manage to find that balance, then the results will certainly pay off. And it’s worth remembering one important rule: If you don’t know what to send in a push, don’t send anything.

      Push notifications are a great tool to fight churn and keep users engaged in your app. To drive engagement and increase user LTV you can also use personalized offers: with MyTracker's recommendation service you can increase your app revenue up to 30% using personalized offers and automated split testing.

      See our recent case study with Hustle Castle, a mobile castle simulator, and how they managed to increase ARPU by 23% within the tested group during a three-month experiment at using MyTracker Personalize models.Read the case study
      Tags: product analytics