How preferences work?
Each user has a preference set within SuprSend, and users receive notifications in the category and channel they haven’t opted out of. If a user hasn’t configured preferences for a category, the system uses default preferences. Preference set contains three level of preferences:channel_preferences
(for channel-level opt-outs), categories
, and opt_out_channels
within each category. In the below example, user has opted out of email
, invoice-ready
category and slack channel in payment-reminder
category.
Set up preference categories in SuprSend
Create notification category
To set up notification preferences, start by creating notification categories. Instead of creating a separate category for each trigger, group similar notifications to keep categories more user-friendly. You can also add sections to organize your categories more effectively.Don’t add too many categories as it can drive users to use channel level opt-outs.

Creating Billing section

Adding categories in Billing section
- System: For critical system notifications like OTPs, verification, and authentication. Users can’t opt out of this category.
- Transactional: Notifications related to user transactions on your platform, such as payment confirmations, delivery statuses, and comments. The default preference for this category opts users in, but you can change it at the individual category level.
- Promotional: Marketing notifications like newsletters, announcements, deals, and discounts. The default preference for this category opts users out, but you can change it at the individual category level.
Set default preferences
If the user hasn’t set preferences in a category, the system sends notifications based on default preferences. Default preferences are set in the notification category. The tenant can override the default preferences for their users, either through the tenant preference API or from the tenant details page. You can set following default preferences at category level:- On: opt-in on all channels
- Off: opt-out on all channels
- Can’t Unsubscribe: Use this to prevent users from completely opting out of critical notification categories, such as anomaly alerts or important transactions (e.g., completed trades, payments). Channel
opt-out
of does not block notifications from mandatory channels in this category.
Map category to notifications
Once set, publish your preference categories to see the latest categories in workflow. You can then map these categories when configuring your workflow for preferences to take effect.Capture user preferences
You can capture user preference choice using an out-of-the-box hosted subscription page or by embedding a preference center within your product.Hosted Preference Page
Once you publish preference categories, SuprSend automatically generates a dedicated webpage for collecting out-of-the-box user preferences. Users can set channel-specific preferences from the hosted page. e.g., if you add it to your email, the page displays only the relevant preference categories for email, and the user’s selections save for email. Include it in your templates using{{$hosted_preference_url}}
.
This page currently hosts on the SuprSend domain, but you can reach out if you’d prefer it hosted on your own domain.
Embed in your product
You can load the preference interface inside your product using the ready UI code. SDKs exist in the languages below. Update your product preference page link on the tenant page and render it in templates using{{$embedded_preference_url}}
.

Channel specific unsubscription options
Additionally to the preference center within SuprSend, communication channels provide their own opt-out options, which SuprSend manages internally.Email: Unsubscribe URL header
Email: Unsubscribe URL header
{{$hosted_preference_url}}
here to load the SuprSend hosted preference page from the email header.
Inbox: Render Preference Page within Inbox
Inbox: Render Preference Page within Inbox
Mobile Push: Preference Page in App settings
Mobile Push: Preference Page in App settings

SMS & Whatsapp: Reply `STOP`
SMS & Whatsapp: Reply `STOP`
Controlling what categories to show on UI
It is always a good practice to show only the categories that are relevant to the user. There are 2 ways to achieve this:-
Turning off category visibility for all users of a tenant: In a multi-tenant setup, if tenants or admins decide what categories their users should see, you can control this via the
visible_to_subscriber: false
flag in default tenant preferences. - Setting custom preference UI for each user: Use tags to show categories based on user roles, departments, or teams. These tags can then be used to filter categories in preference center.
Setting Preference tags

Filter Categories with Tags
tags=tag1
) or a more advanced filter using logical operators.Supported operators:Operator | Operand Datatype | Description | Example |
---|---|---|---|
exists | boolean | Returns categories where any tag is set | tags={"exists":true} |
not | string | Excludes categories that have the specified tag | tags={"not":"admin"} |
or | array | return categories that have any of the mentioned tags | tags={"or":["sales","marketing"]} |
and | array | return categories that have all the mentioned tags | tags={"and":["sales","manager"]} |
tags={"or":[{"and":["sales","manager"]},{"and":["marketing","associate"]}]}
.Preference evaluation at runtime
When a workflow triggers, SuprSend evaluates preferences for each recipient before each delivery node.Evaluating Recipient preferences
Factoring in tenant preferences
Resolving preference conflicts
user > tenant > org
(set in notification category settings). However, if you turn off notifications in a category from the tenant page, users will not receive notifications in that category.Debugging preference evaluation in workflow runs

Subscriber preference update
in request logs.Frequently Asked Questions
How to setup digest schedule in my preferences?
How to setup digest schedule in my preferences?
I have a use case where a company has multiple departments/roles, and the admin will set preferences for users in these departments.
I have a use case where a company has multiple departments/roles, and the admin will set preferences for users in these departments.
What happens to existing user preference view if I change default preference setting?
What happens to existing user preference view if I change default preference setting?
I have multiple enterprise customers with various product offerings. Customers should only receive notifications for the products they have enabled, and the same should be visible on their preference page. How can I manage this in SuprSend?
I have multiple enterprise customers with various product offerings. Customers should only receive notifications for the products they have enabled, and the same should be visible on their preference page. How can I manage this in SuprSend?
visible to subscriber
to false
in the default tenant preferences to hide the category from the tenant’s end users.