Skip to main content
OneSignal Email lets you send marketing and transactional emails from the dashboard, Journeys, or the API.
  • Send marketing campaigns and transactional messages from the dashboard or API
  • Build automated email and multi-channel flows with Journeys
  • Design emails using drag-and-drop or HTML
  • Personalize content with dynamic fields, conditional logic, and language variants
  • Track performance and A/B test with detailed analytics
  • Segment your audience for precise targeting
  • Integrate with CRMs and tools like HubSpot, Mixpanel, Amplitude, Zapier, and more

Email setup

Before sending emails, follow these setup guides:
Authenticate your domain (SPF, DKIM, DMARC) and enable Auto warm-up before sending at scale to protect your sender reputation and inbox placement.

Deliverability, reputation, and analytics

Deliverability determines whether your emails reach the inbox or land in spam. OneSignal provides tools and guidance to help you build and maintain a healthy sending reputation.

Design your emails

OneSignal supports visual and code-based email creation. Use the drag-and-drop editor for quick campaigns or the HTML editor for full design control. You can also start from a template and customize from there.

Send emails

Send messages from the dashboard, automate them with Journeys, or trigger them programmatically via the API.

Send from the dashboard

Select the message channel

Select Create… then choose your message channel. You can also navigate to Messages or Templates to view previous messages.
OneSignal dashboard showing create message options

Choose a composition method

Set a name and label

Add internal metadata for tracking and reporting. API equivalent: name

Select your audience

Choose which users receive the message. You can include and exclude segments to target specific groups. Defaults to all “Subscribed Users” if no segment is set.
Dashboard fields for message name, label, and audience segment selection
Targeting methodDashboardAPI
SegmentsYesYes
Filters (API only)NoYes
Aliases (API only)NoYes

Sender

Configure the sender details used for this email:
  • From name
  • From address
  • Reply-to address
  • Sending domain
Multi-domain sending is supported. See Senders.
API fields: email_from_address, email_sender_domain, email_reply_to_address

Subject and preheader

Set a required subject line and optional preheader text. Preheader display varies by inbox provider — not all inboxes show it.

Tracking and compliance

Link tracking — Enabled by default. Supports multi-link tracking. See Links and Deep linking for details.
  • API field: disable_email_click_tracking
Send to unsubscribed users — Enable only for compliance or non-marketing messages.
  • API field: include_unsubscribed
Email composition panel showing link tracking and unsubscribe send options

Delivery schedule and optimization

Choose when the message should start sending.
OptionDescriptionAPI field
Send immediatelyDeliver to all recipients now.
ScheduledSend at a specific time, up to 30 days in advance.send_after
Auto warm-upGradually ramp volume for new or cold domains.
Per-user optimization: Set when users should receive the message.
OptionDescriptionAPI field
Everyone at the same timeAll recipients receive the email at once. Best for urgent messages.
Intelligent DeliverySends at the optimal time for each user based on their open and click activity (excludes bot activity).delayed_option: last-active
Custom time per timezoneSends at a set local time in each user’s timezone.delayed_option: timezone, delivery_time_of_day
The “start sending” time determines the audience cutoff. OneSignal evaluates segment membership at that moment — anyone in the audience receives the message, regardless of per-user optimization settings.
Click Review and Send to send immediately or on schedule, or Save as draft to edit later. Once sending begins, monitor performance under Messages > Email or in Delivery > Sent Messages. See Email message reports for details.

Analytics

Track message performance and engagement.

FAQ

What’s the difference between marketing and transactional emails?

Marketing emails are campaigns sent to a segment of users, such as promotions or newsletters. Transactional emails are triggered by a user action or event, such as a password reset or order confirmation. See Transactional email setup for configuration details.

Why are my emails going to spam?

Common causes include missing DNS authentication (SPF, DKIM, DMARC), sending to unengaged users, or ramping volume too quickly on a new domain. See Email deliverability and Email reputation best practices for guidance.

Can I send emails to users who unsubscribed?

Only for compliance or non-marketing messages, such as legal notices. Enable the Send to unsubscribed users option when composing or set include_unsubscribed via the API. Using this for marketing emails violates anti-spam regulations.

How do I test emails before sending to Users?

Set up test Subscriptions to verify delivery, rendering, and deep links without affecting real Users. You can also send to a single-user segment for quick testing.