> ## Documentation Index
> Fetch the complete documentation index at: https://docs.suprsend.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Preference Evaluation

> How SuprSend evaluates user preferences when sending notifications.

This guide explains how preferences are evaluated when workflows trigger notifications. For an overview of preferences, see [User Preferences](/docs/user-preferences).

## How preferences are evaluated

When a workflow triggers, SuprSend evaluates preferences for each recipient before each delivery node.

<Steps>
  <Step title="Evaluating Recipient preferences">
    If user preferences aren't set, the system picks the default preference setting. Once a user sets a preference for a category, future changes to default preferences do **not** override the user's choice.
  </Step>

  <Step title="Factoring in tenant preferences">
    If you are triggering notifications for a tenant, [tenant default preferences](/docs/tenant-preference#per-tenant-default-preference) override category-level default preferences.
  </Step>

  <Step title="Resolving preference conflicts">
    The order of precedence is always `user > tenant > category default`. However, if you turn off notifications in a category from the [tenant page](https://app.suprsend.com/en/demo/tenants), users will not receive notifications in that category, even if they previously opted in.
  </Step>

  <Step title="Debugging preference evaluation in workflow runs">
    User preferences may change over time. When debugging a workflow run, you can inspect the exact preferences that were active at that moment. You can view this using the step-by-step debugger in [workflow executions](https://app.suprsend.com/en/demo/logs/executions/?last_n_minutes=1440).

    <Frame>
      <img src="https://mintcdn.com/suprsend/Rqu3oXc62WivGF1E/images/pref-workflow.png?fit=max&auto=format&n=Rqu3oXc62WivGF1E&q=85&s=02c53b1685e9bab8fc327b5a8608005b" width="2334" height="1042" data-path="images/pref-workflow.png" />
    </Frame>

    <Note>
      Use the "Preference Evaluation" panel in each workflow step to see what preference blocked or allowed the notification.
    </Note>

    You can also track when a user updated their preference by filtering on `Subscriber preference update` in [request logs](https://app.suprsend.com/en/demo/logs/api/?last_n_minutes=1440).
  </Step>
</Steps>

## Preference precedence order

The system evaluates preferences in this order:

1. **User preference** - Individual user's explicit preference setting
2. **Tenant default preference** - Default preference set at tenant level
3. **Category default preference** - Default preference set at the category level

If a user has explicitly set a preference, that takes precedence. If not, the system checks tenant defaults, and finally falls back to category-level defaults.

<Note>
  Channel-level opt-outs (e.g., email unsubscribe, SMS STOP, mobile OS push opt-out) override all category and tenant preferences.
</Note>
