Templates are reusable blueprints for Push Notifications, Emails, and SMS messages. They save time, ensure consistent messaging, and make personalization at scale easy. Templates are especially useful for frequently sent, event-driven, or transactional messages, since performance metrics are stored in one place for ongoing optimization.
This guide covers how to create and use templates. For details on performance tracking, see Template Analytics.

Create templates

Templates can be created in multiple ways:

Design guidelines

Templates support Liquid syntax for advanced personalization, letting you insert dynamic, user-specific content.
Template data can be overwritten. You can use a template as a starting point and update the content on a per-message basis before sending.
For channel-specific best practices, see:

Send messages using templates

You can send a template in multiple ways:
  • From the Compose Screen: When creating a new message in the Dashboard, choose to start from a template.
  • From the Templates Page: Go to Messages > Templates, select Options (3 dots) > New Message.
  • API: Include the template_id in your send request.

Template ID

Each template has a unique OneSignal-generated template_id (UUID v4). You can find it:
  • Using the View Templates API
  • In the OneSignal Dashboard under Messages > Templates > Options > Copy Template ID
Copy Template ID in OneSignal Dashboard

Copy Template ID


Track performance

The Templates page shows aggregate performance across all sends using the template. The data on this page is for the lifetime of the template. For individual template performance, see Template Analytics.
ColumnDescription
NameThe template’s name.
LabelsUnique Labels you can use to group and filter templates.
TypePush, Email, or SMS.
Last SentThe last date and time the template was used in a sent message.
DeliveredPush: Total of successful sends to the push services (FCM, APNs, etc.)
Email: Total delivered to the recipient’s inbox.
SMS: Total of successful sends to the SMS carriers.
OpenedPush: Not applicable.
Email: Total number of times the email was opened (not unique).
SMS: Not applicable.
ClickedPush: Total number of times the push was clicked.
Email: Total number of times a link within the email was clicked.
SMS: Total number of times a link within the SMS was clicked.
CTR(Clicked ÷ Delivered) × 100%.

Update templates

You can update templates via: Updating templates does not affect the performance stats. New links will continue to be tracked and aggregated. Template data can be overwritten. You can use a template as a starting point and update the content on a per-message basis before sending. For example, if your push template has a set message and you use the Create push API with new content, it will override the template message.

Delete templates

You can delete templates via:
Once the template is deleted, all data associated with it is deleted and cannot be recovered.You cannot delete templates used within a Journey. Either delete the Journey or remove the template from the Journey.

FAQ

How long is template data stored?

  • Template content data is stored for the lifetime of the template until it is deleted.
  • Template overview analytics found on the Templates page are for the lifetime of the template.
  • Individual template analytics subject to your plan type. See Template analytics for details.

Can I duplicate templates across apps?

Yes: