subscriberId. Workflows are triggered for subscribers, and Novu applies channel routing, preferences, and personalization at the subscriber level.
How does Novu identify a subscriber?
Each subscriber is uniquely identified in Novu by asubscriberId. This ID is defined by your application and serves as the reference point for all subscriber-related operations whether sending messages, retrieving preferences, or managing user data.
Unlike email addresses or phone numbers, which may change or be shared across users, the subscriberId must remain stable and unique within your system. It acts as the anchor that connects a subscriber’s profile, activity history, and delivery settings across all channels and workflows.
Use your application’s internal user ID as the
subscriberId to ensure consistency across your systems.Subscriber metadata and profile structure
A subscriber’s profile holds all relevant data Novu uses to personalize, deliver, and manage notifications. These fields can power dynamic content in your templates, define conditional logic in workflows, and control which channels a subscriber can receive notifications through. All metadata tied to a subscriber is centralized and accessible via API or dashboard. This structure ensures that when notifications are triggered, Novu references the most up-to-date context for delivery and personalization. These data includes:User data
Data stored in the subscriber object that you can easily access in your notification templates. This contains basic info such asemail, phone, firstName, locale and others. This data is fixed and structured.
Custom data
Apart from the above fixed structured user data, any unstructured custom data such as user’saddress, membershipLevel, preferredTopics, or companySize can also be stored in the data field using key-value pairs.
Channel specific credentials
To deliver messages through push or chat-based channels, Novu also supports storing delivery credentials on the subscriber profile:deviceTokens: Used to target mobile devices via push notifications.webhookUrl: Used by chat providers such as, Slack, Discord to reach the subscriber.
Each subscriber channel is limited to a maximum of 100 device tokens. Requests that exceed this limit will be rejected. See Platform Limits for details.
Subscriber creation in Novu
Before you can send notifications, a subscriber must exist in Novu. Asides from manually creating a subscriber via the Novu dashboard, Novu supports multiple approaches to subscriber creation depending on your application’s architecture and user lifecycle.Just in time
Novu allows you to create a subscriber automatically at the moment a notification is triggered. If the subscriber doesn’t already exist, Novu uses the information provided in the workflow trigger to create the subscriber on the fly. If the subscriber exists, Novu updates the stored data with the latest values. This approach is useful when:- Your system does not store subscriber profiles ahead of time.
- Notifications are sent during real-time events like sign-ups or transactions.
- You want to keep the creation and delivery logic tightly coupled.
Ahead of trigger
Alternatively, you can create and store subscriber profiles ahead of time — typically during onboarding, registration, or data sync events. This approach allows you to manage subscriber preferences, enrich profiles, and inspect delivery readiness before any notification is triggered.- You want to decouple user creation from notification logic.
- You rely on persistent user data or prefer strict validation before delivery.
- You plan to use advanced segmentation or preference-based delivery.
Bulk Import
For scenarios like data migration, syncing large lists, or preloading subscribers, Novu supports bulk creation. This is especially useful when integrating with existing systems or importing subscriber data from external sources. Bulk create method supports creating up to 500 subscribers at once.Where to manage subscriber data
Subscriber data in Novu can be managed from the Novu dashboard or using the Subscribers API. Both offer full access to view, update, and organize subscriber profiles, but they serve different use cases depending on your requirements.- Dashboard
- API
The Novu dashboard provides a visual interface for exploring and editing subscriber data. It’s useful for:
- Searching and filtering subscribers by ID, email, phone and name.
- Inspecting user profiles, including structured fields, custom data, topic subscriptions and channel preferences.
- Performing manual updates or troubleshooting delivery issues
Subscriber preferences and personalization
Novu allows each subscriber to define how they want to receive notifications. These preferences influence both the delivery channels and the types of messages a subscriber will receive.Global preferences
Subscribers can configure preferences that apply across all workflows. These include:- Opting in or out of specific channels, for example, email, SMS, push, or in-app
- Disabling notifications altogether
Subscriber workflow specific preferences
In some cases, a subscriber may want to receive certain notifications but only through specific channels. Novu supports fine-grained overrides at the workflow level. This allows you to:- Adjust channel preferences per notification type
- Honor granular user choices while maintaining global defaults
Template personalization
Subscriber data, both structured fields such asfirstName, email and custom data can be used to personalize templates. This enables dynamic content such as:
- Greeting users by name
- Including location-based content
- Adjusting language or tone based on locale or membership level
Subscriber API reference
Create a subscriber API
Update a subscriber API
Bulk create subscribers API
Retrieve subscriber subscriptions API
Update subscriber credentials API
Update subscriber preferences API
Frequently asked questions
These are some of the most frequently asked questions about subscribers in Novu.Can two subscribers have the same email address?
Can two subscribers have the same email address?
Yes, two subscribers can have the same email address, phone number, or any other attributes. However, each subscriber must have a unique subscriberId.
Do I have to use subscriberId as same as the system userId?
Do I have to use subscriberId as same as the system userId?
No, you don’t need to use the same subscriberId as the system userId. You can use any unique ID as subscriberId. Novu recommends using userId as subscriberId to avoid any confusion. Some of our customers use a pattern like
auth0|userId as a value for subscriberId.Can a notification be sent without adding a subscriber?
Can a notification be sent without adding a subscriber?
No, a notification cannot be sent without adding a subscriber. A subscriber is an entity to which notification messages are sent. You must add a subscriber to Novu before triggering the workflow.
How do I migrate millions of users to Novu?
How do I migrate millions of users to Novu?
To migrate millions of users to Novu, use the Bulk Create Subscribers API endpoint. This endpoint allows you to create multiple subscribers in bulk.
Can subscriber credentials for chat and push channels be added when creating a new subscriber?
Can subscriber credentials for chat and push channels be added when creating a new subscriber?
Subscriber credentials for Push and Chat channel providers can be added while creating a new subscriber using the
channels field in the create subscriber request payload.