Skip to main content

Documentation Index

Fetch the complete documentation index at: https://documentation.onesignal.com/llms.txt

Use this file to discover all available pages before exploring further.

This guide walks through four stages to get you up and running with OneSignal. Complete them in order or jump to the section you need. If you haven’t already, create your account to get started.
  1. Set up your account and messaging channels — create your app and configure at least one channel.
  2. Add and organize your Users — model Users, Subscriptions, tags, and segments.
  3. Send messages — compose campaigns, personalize content, and build automated Journeys.
  4. Measure impact with analytics — track delivery, engagement, and conversions.
Prefer video? Watch the walkthrough below.

Which channel should I start with?

Pick the channel that matches your immediate goal — you can add more to the same OneSignal App at any time.
Your goalStart withWhy
Send transactional or marketing email todayEmailNo SDK required. Configure DNS and start sending the same day.
Reach a mobile app’s existing user baseMobile push + in-app messagesMobile SDKs cover both channels with one integration.
Engage website visitorsWeb pushNo app build needed; works in modern browsers.
Send time-sensitive alerts (OTPs, shipping)SMSFastest channel for high-priority transactional messages.
Stream live event data (sports, deliveries, rides)Live ActivitiesOngoing iOS Lock Screen and Dynamic Island updates.
Common quickstart mistakes to avoid:
  • Skipping External ID. Users who go anonymous → identified without an External ID become a new, separate User in OneSignal — breaking cross-device messaging and inflating your audience count.
  • Testing on production audiences. Always send to Test Users before targeting real users.
  • Configuring push without a permission prompt. iOS and web require explicit opt-in. See mobile push permission prompts and web permission prompts.

Set up your account and messaging channels

Your OneSignal App is where User and message data is stored. You can have multiple Apps in a single Organization for different projects, environments, or billing needs.

OneSignal account

Apps, Organizations, and accounts

Your OneSignal App, Organization structure, and account settings.

Add team members

Invite collaborators and assign roles within your Organization.

Keys and IDs

Find your OneSignal App ID, Organization ID, and API keys.

Usage and billing

Billing, invoices, and usage details.

Messaging channels

OneSignal supports push notifications, in-app messages, email, SMS/MMS/RCS, and Live Activities. Choose your first channel and follow its setup guide — you can add more channels to the same app at any time.
Email and SMS can be configured without writing code. Push notifications and in-app messages require SDK integration — invite a developer to your team if needed.
OneSignal dashboard showing messaging channel setup options including push, email, SMS, and in-app

Email

Transactional and marketing email configuration.

Mobile push

iOS, Android, Huawei, and Amazon push setup.

Web push

Browser-based push notification setup.

In-app messages

Rich, interactive messages displayed within your app.

SMS

Text messaging for time-sensitive alerts.

RCS

Rich messaging with branded content and read receipts on Android.

Live Activities

Ongoing iOS Lock Screen and Dynamic Island updates for live events.
After setting up push, configure mobile push permission prompts or web permission prompts to start collecting opt-ins from your Users.

Add and organize your Users

As users interact with your app, OneSignal assigns each a OneSignal ID (the internal User ID) and Subscription IDs for each device, email address, or phone number. A single User can have multiple Subscriptions across channels. Users stay anonymous until you identify them with an External ID — a stable identifier from your system (typically your internal user ID) that lets OneSignal merge a User across devices, app reinstalls, and channels.
OneSignal dashboard Users page showing a list of users with subscription details

Users

Identified by External ID. One User can have multiple Subscriptions across channels.

Subscriptions

Email addresses, phone numbers, and devices that receive your messages.

User properties

Store User data as tags (key-value pairs) and custom events (user actions). Tags power message personalization and segmentation. Common tag examples:
  • Attributes: first_name, city, subscription_tier
  • Behaviors: cart_abandoned, last_login_date, onboarding_complete
  • Preferences: notification_frequency, theme_preference

Tags

Use tags for message personalization and advanced segmentation.

Custom events

Trigger Journeys or wait-until actions based on User behavior.

Segments and integrations

Segments are dynamic groups of Users defined by tags, behavior data, or message interactions. They update automatically as User data changes — for example, “Last session greater than a week” or “Added item to cart.” Connect external platforms to enrich your segments with additional User data.
OneSignal segment builder showing a User Tag filter configuration

Segments

Create dynamic audience groups using tags and behavior data.

Integrations

Import User data from external platforms to power segments and Journeys.

Send messages

Design and send single-message campaigns or automated multi-step Journeys from the OneSignal dashboard. Each channel has its own composer with preview, targeting, and scheduling options.
Before sending to your full audience, set up Test Users to verify your messages render and deliver correctly.
OneSignal push notification editor showing message content fields and preview

Push notifications

Send to web, iOS, Android, Huawei, and Amazon devices.

Email

Compose and send transactional or marketing emails.

In-app messages

Trigger rich, interactive messages based on User behavior within your app.

SMS

Send text messages for time-sensitive alerts and updates.

RCS

Send rich, branded messages with read receipts on Android.

Live Activities

Ongoing iOS Lock Screen and Dynamic Island updates for live events.

Personalize your messages

Use tags, custom events, and dynamic data to tailor message content for each recipient. OneSignal uses Liquid syntax to inject tag values, custom event properties, and Data Feed content into message bodies and email subject lines (e.g., Hi {{ first_name | default: 'there' }}). Create reusable templates to maintain consistency across campaigns.

Message personalization

Personalize content with Liquid syntax, tags, Data Feeds, and custom data.

Templates

Create reusable message templates for push, email, and SMS.

Journeys

Journeys are automated, multi-step campaigns that respond to User behavior — such as onboarding sequences, abandoned cart reminders, and re-engagement flows.
OneSignal Journey builder showing an abandoned cart automation flow

Journeys

Build automated, multi-step campaigns triggered by User behavior.

Journey examples

Common patterns like onboarding, abandoned carts, and re-engagement.

Send via API

Send messages programmatically for transactional use cases like order confirmations, OTPs, and billing alerts.

Developer guides

SDK and REST API documentation for engineering teams.

Transactional messages

Send time-sensitive messages like OTPs, receipts, and shipping updates via API.

Measure impact with analytics

Track message performance — including delivery, opens, clicks, and conversions — to understand what drives engagement and refine your strategy.

Analytics overview

Review all analytics options available in OneSignal.

Event streams

Stream message events like clicks, opens, and receives to your data warehouse in real time.

Export data

Export User and message data in CSV or API format.

Integrations

Connect analytics platforms like Amplitude, Mixpanel, Segment, and more to OneSignal.

Conversion metrics

Measure business impact like revenue and sign-ups with cross-channel last-touch attribution.

Goals

Set a target metric on a message or Journey and track progress on the delivery report.

Next steps

Once you’ve sent your first message, deepen your setup with these guides.

Journeys overview

Move from one-off campaigns to automated, multi-step lifecycle messaging.

Message personalization

Use Liquid, tags, custom events, and Data Feeds to personalize at scale.

Segmentation

Build dynamic audiences from tags, behavior, and message interactions.

Mobile-first strategy

Lifecycle data model, Journeys, and patterns built for mobile apps.

FAQ

Do I need a developer to get started?

Not necessarily. Email and SMS channels can be configured without code. Push notifications and in-app messages require SDK integration, which may need a developer or AI assistant. You can invite team members with different roles at any time.

Can I add more messaging channels later?

Yes. Add any combination of channels to the same OneSignal App. Each channel has its own setup guide — return to the messaging channels section to add a new one.

What is the difference between a User and a Subscription?

A User represents one person, identified by an External ID. A Subscription is a specific channel endpoint — such as a device, email address, or phone number. One User can have multiple Subscriptions across different channels and devices.

How long does initial setup take?

Email setup typically takes under 30 minutes if you have access to your domain DNS settings. SMS requires carrier registration, which can take a few days. Push notification setup depends on your app’s platform and build process — plan for a few hours of developer time.

Where do I find my API key and App ID?

In the OneSignal dashboard, go to Settings → Keys & IDs. Each app has its own App ID and REST API Key — never expose the REST API Key in client-side code. See Keys and IDs for the full breakdown of which key to use where.

How do I test my setup before sending to real users?

Configure Test Users — devices, email addresses, or phone numbers flagged as internal — then use the Send to Test Users option in any composer. Test sends bypass segments and exclusions so you can preview rendering, deep links, and personalization on your own devices first.

Can I migrate from another messaging platform?

Yes. The fastest path is to (1) install the OneSignal SDK alongside your existing provider, (2) call the External ID and Tag setters with the user IDs and attributes from your current system so identities map cleanly, and (3) once Subscriptions are flowing in, sunset the old provider. For email and SMS lists, you can also import historical Subscriptions via CSV — see Users and Subscriptions for the import patterns.
Need help?Chat with our Support team or email support@onesignal.comPlease include:
  • Details of the issue you’re experiencing and steps to reproduce if available
  • Your OneSignal App ID
  • The External ID or Subscription ID if applicable
  • The URL to the message you tested in the OneSignal Dashboard if applicable
  • Any relevant logs or error messages
We’re happy to help!