Push notifications for React Native

Push notifications that actually land. Priced per device, not per active user.

Ubriot Notify delivers to iOS and Android: direct APNs and FCM delivery, auto-retry, campaigns, and logs. Set up in minutes.

No Expo SDK required Works on bare React Native No EAS needed 14-day trial included

The per-MAU pricing problem

Per-MAU pricing

100,000 monthly active users

~$1,200/mo

Push only, at roughly $0.012 per MAU

Ubriot

100,000 registered devices

$99/mo

Pro plan, the whole platform, push included

Illustrative comparison only. Per-MAU services charge for every user who opened your app this month - whether they're push subscribers or not. Ubriot Notify charges only for registered devices.

What you get

Everything push. Nothing you don't need.

React Native & Expo native

One SDK, one line. Works in Expo managed, bare, and plain React Native, with no manual APNs or FCM setup.

Direct APNs + FCM delivery

Notifications go directly from Ubriot Notify to Apple and Google. No relay server in the middle, no additional hop, no third-party reading your payloads.

Per-device, not per-MAU

You pay for registered devices, not for every user who opened the app this month.

Delivery logs and auto-retry

Every send is logged with status, error reason, and provider ID. Failed deliveries retry automatically with exponential backoff, up to five attempts.

Campaigns from the dashboard

Broadcast to all your users or filter by platform. Write the notification, pick the audience, send, no engineering ticket required.

User identification

Link device tokens to your own user IDs. Send to a user across all their devices with one call, even when they switch phones.

Integration

Set up in four steps

First notification in under ten minutes.

Step 1

Create an app and get your API key

Sign in, create a Notify app in the dashboard, and copy your API key and app ID. Takes thirty seconds.

Step 2

Install the React Native SDK

One package. Works with Expo managed workflow, Expo bare, and plain React Native. No Xcode changes needed for APNs.

npm install @ubriot/notify-rn

Step 3

Register devices in your app

Call register once at app launch. Ubriot handles APNs and FCM token retrieval, hashes them, and returns a stable opaque token.

import { UbriotNotify } from '@ubriot/notify-rn';

// nativeToken comes from expo-notifications, firebase, or any push library
useEffect(() => {
  UbriotNotify.register({
    appId: 'your-app-id',
    nativeToken,       // APNs or FCM token
    platform: 'ios',   // or 'android'
    userId: currentUser?.id, // optional
  });
}, []);

Step 4

Send from your backend

POST to the send endpoint with your server key. Or use the dashboard to broadcast to everyone at once.

curl -X POST https://api.ubriot.dev/api/v1/ubriot/push/send \
  -H "X-Ubriot-Push-Key: your-server-key" \
  -H "Content-Type: application/json" \
  -d '{
    "to": ["UbriotPushToken[...]"],
    "title": "New message",
    "body": "You have a reply"
  }'

Pricing

Push is included in every plan.

Push comes with the whole Ubriot platform (builds, store submission, OTA) on one flat plan. Upgrade a tier when your device count grows, not when your app gets popular.

Indie

$29/mo

For one developer shipping real apps.

Push to 10,000 devices

  • Unlimited sends
  • APNs + FCM delivery
  • Delivery logs
  • REST API
Get started
Most popular

Pro

$99/mo

For live apps that ship regularly.

Push to 100,000 devices

  • Unlimited sends
  • Campaigns + segments
  • User identification
  • Auto-retry
  • Webhook events
Get started

Business

$299/mo

For engineering teams with multiple apps.

Push to 500,000 devices

  • Unlimited sends
  • 1-year delivery logs
  • Everything in Pro
  • Priority support
Get started

All prices in USD. Each tier includes a registered-device cap; upgrade a tier as you grow. No contracts.

Start sending in minutes

Every account starts with a 14-day free trial (up to 10,000 devices, unlimited sends). One platform, push included, from $29/mo after.

Get started