
Push is rarely the whole job. It starts as the whole job, then product wants an email fallback for the users who never opted in, support wants a searchable log, legal wants a preference center, and someone asks why a user got six alerts in ten minutes.
Courier is built for that arc. One API sends push, email, SMS, in-app inbox, Slack, and Microsoft Teams. FCM, APNs, Expo, SendGrid, and Twilio are swappable delivery providers rather than lock-in. Pricing is $0.005 per message on every channel with 10,000 messages a month free, and nothing is feature-gated on the free tier.
The other 10 platforms below are worth knowing. Firebase Cloud Messaging and APNs are the free delivery layer everything here runs on. OneSignal is the quickest self-serve push setup. Braze, CleverTap, MoEngage, Airship, Iterable, and WebEngage are enterprise marketing platforms with quote-only pricing. Amazon SNS and Pusher Beams are delivery APIs, not product platforms.
Pricing for all 11 was read from each vendor's own pricing page in August 2026. Here is how we evaluated them.
| Platform | Channels beyond push | Free tier | Pricing model | Best for |
|---|---|---|---|---|
| Courier | Email, SMS, in-app, Slack, Teams | 10,000 messages/mo | $0.005 per message | Cross-channel product messages |
| Firebase Cloud Messaging | None | Unlimited push | Free | Android and web push delivery |
| OneSignal | Email, SMS, in-app | Unlimited mobile push | From $19/mo, per channel | Fast mobile-first setup |
| Braze | Email, SMS, in-app, web | None | Quote only | Enterprise lifecycle marketing |
| CleverTap | Email, SMS, in-app, WhatsApp | 30-day trial | Per monthly active user | Android OEM delivery |
| MoEngage | Email, SMS, WhatsApp, RCS | None | Per monthly active user | Mid-market retention |
| Airship | Email, SMS, wallet, web | None | Quote only | Enterprise mobile brands |
| Iterable | Email, SMS, in-app, WhatsApp | None | Per reachable user | Email-led marketing |
| WebEngage | Email, SMS, WhatsApp, 8 more | 6 months for startups | Per monthly active user | Retention with a CDP |
| Pusher Beams | None | 1,000 subscribers | From $29/mo, per subscriber | Transactional push API |
| Amazon SNS | Email, SMS | 1M push/mo | $0.50 per million push | AWS-native backends |
A push notification platform delivers messages to a user's mobile device or browser when your app is closed. It handles the parts that are tedious to build: device token storage and refresh, routing to Apple Push Notification service (APNs) for iOS and Firebase Cloud Messaging (FCM) for Android and web, retries, and delivery reporting.
The platforms in this guide split into three groups that solve different problems:
Airship's 2025 push benchmarks, drawn from more than 9 billion app users across thousands of apps and 13 industry verticals during 2024, put the median push direct open rate at roughly 3%: 3.4% on Android and 3.1% on iOS. Apps in the top 10% reach 10.7% on Android and 8.0% on iOS.
Opt-in is the bigger problem. Median Android opt-in fell from 71.3% in 2023 to 59.5% in 2024 after Android 13 turned notification permission into a runtime prompt rather than a default grant. iOS has held steady at roughly 49%.
So roughly 40% of your Android users and half your iOS users never receive a push notification at all, and about 3% of the rest open it. That is not an argument for a better push vendor. It is an argument for putting a fallback path behind push, which is the difference between a push tool and notification infrastructure. The product notifications API guide covers what that fallback path involves, from preference enforcement to one delivery log across every provider.
Courier is notification infrastructure with one API for push, email, SMS, in-app inbox, Slack, and Microsoft Teams. FCM, Expo, APNs, SendGrid, Twilio, and the rest of the provider catalog are configured as delivery providers, so swapping one is a settings change rather than a code change. Journeys is the visual builder for multi-step sequences, including batch, digest, delay, and cancellation nodes. Preference management is hosted, with drop-in components so users pick channels and topics themselves.
Best for: product and platform teams sending transactional and lifecycle messages across channels, especially B2B SaaS, fintech, healthcare, and marketplaces.
The routing model is the thing that is hard to replicate with a push API. Setting method to single walks the channel list in order and stops at the first channel that delivers, so a user who declined push still gets the message:
import Courier from '@trycourier/courier';const client = new Courier();await client.send.message({message: {to: { user_id: 'user_123' },template: 'order-shipped',data: { orderNumber: '10042' },routing: {method: 'single',channels: ['push', 'email', 'sms'],},},});
Switching method to all sends on every listed channel instead. Either way the template, the preference check, and the delivery log are shared, so adding a channel later does not mean a second integration.
Visual Journeys, preference management, and inbox components are all available on the free tier. See Courier pricing.
Twilio picked Courier because "the depth of the inbox and multi-channel integrations allowed us to choose one notification platform for all products and teams." Reviewers repeatedly call out the documentation and the delivery logs as the reason debugging is fast, and one customer notes, "We have a shared Slack channel with them and they are for the most part very responsive."
Firebase Cloud Messaging is Google's free push delivery service for Android, iOS, and web, and it is the layer almost every other platform in this guide uses to reach Android. FCM handles token management and topic-based fan-out, caps payloads at 4,000 bytes, and applies a default quota of 600,000 messages per minute per project. One detail that surprises teams: reaching iOS through FCM still means uploading your own APNs authentication key to Firebase, so you hold Apple credentials either way.
Best for: teams that need free Android and web push delivery and are willing to build the layers above it.
Free for unlimited push. Google Cloud data transfer charges apply to image and media payloads, so rich push at large volumes is not free. See Firebase pricing.
FCM is a delivery pipe, not a notification platform. Email fallback, SMS, in-app inbox, preference centers, digests, and any workflow builder are all custom development. Courier uses FCM as a delivery provider and adds those layers, so you keep FCM's free Android delivery and still get routing, preferences, and an inbox without building them.
OneSignal is a self-serve engagement platform covering push, email, SMS, in-app, and Live Activities, with SDKs for Android, iOS, Flutter, React Native, and Unity. Its free tier includes unlimited mobile push sends, which is the most generous starting point of any platform here.
Best for: mobile-first apps that want push running the same day, with room to add email later.
Read from OneSignal's public pricing page in August 2026.
OneSignal delivers push well and does not pretend to be more. There are no pre-built inbox components, so an in-app notification center is yours to build. Slack and Microsoft Teams are absent, which rules it out for B2B alerting. Per-channel, per-subscriber pricing also means one message that fans out across push, email, and SMS is billed three different ways, where Courier bills a flat $0.005 per message whatever the channel.
Braze is an enterprise customer engagement platform covering push, email, SMS, in-app, and web. Canvas Flow builds cross-channel journeys with real-time branching, and BrazeAI adds send-time optimization, predictive churn scoring, and content generation. Its push feature set is the deepest in this list, including action buttons, push stories, and carousels.
Best for: enterprise consumer brands in retail, media, gaming, and finance running complex lifecycle marketing with a dedicated CRM team.
Quote only, with no public rate card and no free tier. Third-party buying data puts typical annual contracts in the $60,000 to $200,000 range, driven by monthly active users, message volume, and add-ons.
Braze is built for marketing campaigns, not for product-triggered messages. There are no inbox components, no Slack or Microsoft Teams channels, and no provider flexibility underneath. Canvas cannot loop users back through a flow, which is awkward for recurring operational sequences. The six-figure floor puts it out of reach for teams who need cross-channel orchestration long before they have a CRM team to run it, which is the gap Courier fills at $0.005 per message.
CleverTap combines product analytics, AI personalization, and cross-channel campaigns. Its differentiator is RenderMax, which lifts push render rates on Chinese Android OEM devices such as Xiaomi, Oppo, and Vivo, where standard FCM delivery is frequently suppressed. TesseractDB powers cohorts, funnels, and real-time segmentation. CleverTap acquired Leanplum in 2022.
Best for: mobile-first consumer businesses in India, Southeast Asia, and the Middle East where Android OEM suppression is the main delivery problem.
Essentials is self-serve with tiers running from up to 5,000 monthly active users through 100,000+, and billing starts after a 30-day trial. Advanced and Cutting Edge are quote-based. Rates vary by region and currency.
CleverTap is a genuinely good answer to the OEM suppression problem, and if that is your problem you should look at it seriously. As general notification infrastructure it is a heavier fit, mostly because of the billing model: monthly active user pricing charges you for everyone active in the app whether or not you messaged them, so a large dormant base costs the same as an engaged one. Courier bills per message sent, and can route through a specialist provider for the markets where render rates matter.
MoEngage is a cross-channel engagement platform covering push, email, SMS, WhatsApp, RCS, and web. Push Amplification Plus works around Android OEM restrictions to raise delivery rates. Merlin AI handles churn prediction, next-best-channel selection, and send-time optimization. MoEngage Inform is a separate API product aimed specifically at transactional alerts.
Best for: mid-market and enterprise brands in financial services, retail, travel, and food delivery that want marketing and transactional messages in one vendor.
Quote only, priced on monthly active users and event volume across Growth and Enterprise tiers. There is no free plan. Add-ons include Cards, WhatsApp Native, AI recommendations, and dedicated email IPs.
MoEngage is the closest competitor here on cross-channel fallback, but its pricing model and setup cost assume a marketing organization. Monthly active user billing that double-counts browser switches, a 180-day data window, and no self-serve entry point are hard to justify if what you need is reliable product messages. There are no inbox components and no Slack or Microsoft Teams channels.
Airship delivered the first commercial push notification and now sells an enterprise experience platform covering push, email, SMS, mobile wallet, and web. Journeys AI generates journey maps and copy, and the no-code Experience Editor changes in-app screens without shipping an app release.
Best for: well-resourced enterprise teams in media, retail, finance, airlines, and telecom where the mobile app is the main channel.
Essentials covers push, web notifications, no-code scenes, journeys, and A/B testing on a self-serve footing. Enterprise adds email, SMS, mobile wallet, and Journeys AI. Everything is quote-based, with add-ons for app store optimization, SMS/MMS, wallet, data connectors, and extended analytics.
Airship's depth comes with an enterprise implementation cycle, which is the wrong shape when you need push working this quarter. There is no provider flexibility underneath, so you are committed to Airship's delivery infrastructure, and no inbox components for a web or desktop product. Courier reaches working cross-channel routing in hours, with published per-message pricing and no minimum.
Iterable is a cross-channel marketing platform covering email, push, SMS, in-app, and WhatsApp. Send Time Optimization, Channel Optimization, and Brand Affinity scoring personalize at the individual level, and Journey Assist drafts flows from a plain-language description.
Best for: mid-market and enterprise ecommerce, subscription, and retail brands consolidating email-led programs that also need push.
Quote only, with no free tier or free trial. Third-party estimates put entry around $20,000 per year for 50,000 monthly active users, with a median near $32,000, plus implementation fees. Billing is based on reachable users.
Iterable is a marketer's tool that developers work around. Reachable-user pricing charges for contacts you never message, so the bill tracks the size of your database rather than what you actually sent, and answering a basic reporting question means an export. For product-triggered messages, where send volume is predictable and contact counts are not, Courier's per-message pricing is easier to forecast and easier to defend in a budget review.
WebEngage is a retention platform combining a CDP, 11+ engagement channels, and a personalization engine. Push Amplification raises Android delivery rates, and Journey Designer provides no-code visual workflows with behavior-based triggers. It ships 100+ templates plus RFM modeling and predictive segmentation.
Best for: consumer brands in ecommerce, fintech, gaming, travel, and edtech that want retention tooling and customer data in one platform.
Custom, based on monthly active users counted across web, app, email, and SMS in a 30-day window. Startups get six months free, after which reported minimums start around $1,000 per month. Third-party listings put entry-level plans between $199 and $1,000 per month, so treat those figures as indicative.
WebEngage is built for consumer retention marketing, so a B2B product will find the channel mix wrong and the bundled CDP oversized. The custom integration work also offsets some of what bundling the CDP is meant to save you.
Pusher Beams is a push API for iOS, Android, and web, part of Pusher and owned by MessageBird since 2020. Authenticated Users ties devices to your user IDs securely, and Device Interests provide publish and subscribe group targeting. Token management is hosted, and delivery is end-to-end encrypted.
Best for: developers who want transactional push through a clean API and nothing else.
Read from Pusher's public Beams pricing page in August 2026.
Pusher Beams solves token management and delivery, which is real work, but stops there. Cross-channel fallback, preference storage, and inbox UI are all yours, and subscriber-based pricing charges for dormant devices. Courier's push API covers the same ground, bills only for messages you actually send, and adds the channels and components Beams has no plans to build.
Amazon Simple Notification Service is a managed pub/sub service that delivers mobile push alongside SMS, email, HTTP endpoints, Lambda, and SQS. It is priced per request and integrates with the rest of AWS.
Push works through a three-step model worth understanding before you commit. You register your APNs or FCM credentials with SNS as a platform application, exchange each device token for a platform endpoint ARN, then publish either directly to that ARN or to a topic the endpoints subscribe to. That indirection is what gives you AWS-native fan-out, and it is also the bookkeeping you inherit.
Best for: teams already on AWS who need push as one output of an event-driven backend.
1 million mobile push per month free, then $0.50 per million. SMS is priced per country, and data transfer charges apply. See Amazon SNS pricing.
SNS is plumbing for AWS architectures, not a platform for user-facing messages. There is no preference management, no inbox, no template editor, and no retry logic. Costs spread across SNS, SES, and data transfer, which makes the true per-message cost hard to state. Courier gives you the same reliability with routing, preferences, and inbox components already built, and still runs on AWS underneath.
Comparing Courier's per-message rate against FCM's $0 is not a real comparison, because $0 buys push and nothing else. The honest comparison is between two ways of delivering the same product experience.
Say you need push, email, and SMS, an in-app inbox, a preference center users control, and fallback when push does not land:
| What you need | Assemble it yourself | With Courier |
|---|---|---|
| Push to iOS and Android | FCM plus APNs, free, two integrations and your own token handling | Included |
| Separate provider, separate contract, separate templates | Same API, $0.005 per message | |
| SMS | Separate provider, separate contract, separate templates | Same API, $0.005 per message |
| In-app inbox | Two to four weeks of engineering, then ongoing maintenance | Drop-in components |
| Preference center | Build, host, and keep it compliant | Hosted, with components |
| Cross-channel fallback | Custom routing and retry logic you own | Routing rules |
| Digests and batching | Queue, scheduler, and dedupe logic you own | Journeys nodes |
| Searchable delivery log | Build on your own logging stack | Included |
At 500,000 messages a month, Courier is $2,450 after the 10,000 free messages, on one contract with one integration. The assembled version is free on push and separately metered on every other channel, before you count the engineering weeks to build the inbox, the preference center, and the routing layer, plus the cost of maintaining code that is not your product.
Push-only and staying that way? Use FCM directly and skip all of this. The moment a second channel appears, the arithmetic changes.
Two questions predict regret better than any feature list. What happens when push fails or the user never opted in? With Android median opt-in under 60%, "nothing" means adding a second vendor within a year. And who changes the copy? If the answer is a non-engineer, you need a content editor and a preference center, not a delivery API.
Each platform was assessed on:
This guide is published by Courier, and the gaps listed for each platform are the ones Courier is built to close.
For teams whose messages span more than push, Courier is the strongest choice: one API covers push, email, SMS, in-app inbox, Slack, and Microsoft Teams, with hosted preference management, cross-channel fallback, and drop-in inbox components included, at $0.005 per message and 10,000 messages a month free. If push is genuinely your only channel, Firebase Cloud Messaging delivers it free. OneSignal is the quickest self-serve push setup. Braze, Airship, and Iterable lead for enterprise marketing teams with six-figure budgets.
The median is around 3%. Airship's 2025 benchmarks, based on more than 9 billion app users across thousands of apps and 13 industry verticals during 2024, put median direct open rates at 3.4% on Android and 3.1% on iOS. Apps in the top 10% reach 10.7% on Android and 8.0% on iOS. Android runs slightly ahead because Android notifications persist on the lock screen after unlock, while iOS moves them into Notification Center. Because the ceiling is this low, the biggest gain usually comes from adding a fallback channel rather than rewriting push copy.
Android 13 changed notification permission from a default grant to a runtime prompt, so users now have to actively agree. Airship measured median Android opt-in falling from 71.3% in 2023 to 59.5% in 2024 as that change rolled out, while iOS held steady at roughly 49%. No platform switch reverses this. The practical responses are to earn the opt-in with a well-timed in-app explanation before the system prompt, and to add channel fallback so users who decline push still receive important messages. Courier's routing does the second part with a channel list rather than custom retry code.
Firebase Cloud Messaging is free for unlimited push on Android, iOS, and web, but it delivers push only. OneSignal's free plan includes unlimited mobile push sends plus 10,000 email sends per month. Amazon SNS includes 1 million mobile push per month free. Courier's free tier is 10,000 messages per month across every channel, including push, email, SMS, and in-app, with no feature gating, so visual Journeys, preference management, and inbox components are all available before you pay anything.
Pricing follows one of four models. Free delivery APIs such as FCM and APNs cost nothing for push itself. Per-message pricing charges for each send, for example Courier at $0.005 per message on any channel, so 500,000 messages is $2,450 after the free tier. Per-subscriber pricing charges for stored devices or contacts regardless of send volume, as Pusher Beams does. Per monthly active user pricing charges for anyone active in your app whether or not you messaged them, which is how CleverTap, MoEngage, WebEngage, and most enterprise platforms bill. Braze, Airship, and Iterable are quote-only, and third-party buying data puts typical annual contracts in the tens to hundreds of thousands of dollars.
You need an account with them, but not an integration. Every push platform ultimately delivers through Apple Push Notification service for iOS and Firebase Cloud Messaging for Android and web, so you supply credentials once. The platform then handles token registration and refresh, payload formatting per operating system, and retries. With Courier, FCM and APNs are configured as delivery providers, so you can swap between FCM, Expo, and APNs without changing your send code.
A push notification platform delivers push to devices and browsers. A customer engagement platform adds campaign management, audience segmentation, and marketing analytics on top of several channels, and is usually bought by a marketing team. Notification infrastructure is a third category: an API-first service covering every channel plus the preference management, routing, and inbox components that product-triggered messages need. Courier sits in that third category, which is why it suits engineering and product teams rather than campaign managers.
Choose a platform that treats delivery providers as configuration rather than code. Courier is provider-agnostic, so FCM, Expo, APNs, SendGrid, and Twilio are settings you change in the dashboard, which means you can test with one provider in development and deliver through another in production. Platforms that own their own delivery infrastructure, including Airship and Braze, do not offer that swap, so migrating away means rewriting your integration.
Courier is the only platform in this comparison that treats Slack and Microsoft Teams as first-class channels alongside push, email, SMS, and in-app, addressed through the same send call. Most push platforms have no team-channel support at all, which is why B2B products end up running two vendors. This matters for internal alerting, B2B workflow notifications, and collaborative applications where a team channel is as important as a device.
Building one from scratch typically takes two to four weeks of engineering time, because read and unread state, real-time updates, pagination, and cross-device sync all have to be handled. Courier's drop-in components for React, iOS, Android, and Flutter reduce that to hours, and reading a push on a device marks the same message read in the inbox. Most platforms in this comparison, including OneSignal, Braze, CleverTap, MoEngage, Iterable, and Airship, ship no inbox components at all.
Delivery APIs such as FCM, APNs, and Amazon SNS report a failure and stop, leaving retry logic to you. Most engagement platforms retry on the same channel. Cross-channel fallback is the stronger pattern: if push does not land or the user has push disabled, the platform routes the same message through email, SMS, or the in-app inbox instead. In Courier this is a channel list on the send call rather than code you maintain, and MoEngage offers a comparable capability.
Aggressive battery optimization on Chinese Android OEM builds kills background services and suppresses notifications that standard Firebase Cloud Messaging delivery reports as delivered. Two platforms address this directly: CleverTap's RenderMax and MoEngage's Push Amplification Plus both route around OEM restrictions and report substantially higher render rates than FCM alone. If your users are concentrated in India, Southeast Asia, or the Middle East, treat render rate rather than delivery rate as the metric that matters. Courier can route through a specialist provider for those markets while keeping one API for everything else.
Every channel you add to compensate for push is another vendor, another template system, and another set of preferences to honor. Courier keeps it to one of each. And because FCM, APNs, Expo, and Twilio stay swappable underneath, the provider you pick today is not a migration next year.
Start free with 10,000 messages a month and no credit card, or request a demo to walk through cross-channel routing against your own use case.

A developer's alternative to Intercom for product notifications
Intercom renamed itself Fin and agreed to be acquired by Salesforce, both around its AI support agent. If you're using it to send your product's notifications, it's fair to ask what the platform was actually built for. Its API answers the question: there is no push or SMS send endpoint, and the campaign builder has no API at all. Here's the architecture, the cost math, and how to migrate transactional and marketing sends.

Customer messaging tools that don't need engineers
Most companies run two systems: a marketing tool for campaigns, and something else for product notifications. Here are nine tools product and growth teams can run without engineering, what still needs a developer, and what each one costs.

A developer's alternative to Salesforce Marketing Cloud
Salesforce Marketing Cloud is expensive, hard to navigate, and needs its own specialist developers to run. The answer isn't leaving Salesforce. It's keeping your CRM as the system of record and moving message delivery to a surface your own engineers, marketers, and AI agents can build on. Here's the architecture, the cost math, and an honest look at when to stay.
© 2026 Courier. All rights reserved.