Building Notification Workflows with Notification Center

Prev Next

Building Notification Workflows with Notification Center

Notification Center lets you build automated workflows that send notifications when specific Userflow events occur. You can send notifications to Slack channels, email addresses, or both—without writing any code.

What is Notification Center?

Notification Center is a visual workflow builder where you:

  1. Choose an event that triggers the notification (e.g., "Flow Completed", "NPS Response Submitted", "Company Created")

  2. Add conditions to filter which events should send notifications (optional)

  3. Select destinations where notifications should be sent (Slack channels, email addresses, or both)

  4. Customize the message that gets sent, including dynamic user and company attributes

  5. Test the workflow before activating it

Notification Center is multi-channel by design—it's not specific to Slack. You can use it to send email notifications, Slack notifications, or both, and support for additional channels (like Microsoft Teams) may be added in the future.

Before you start

To use Notification Center with Slack, you need to:

  1. Connect the Slack integration first → See: Connecting Slack to Userflow

  2. Have the right role permissions:

    • Create/delete workflows: Owner, Admin

    • Enable/disable/update workflows: Owner, Admin, Editor

Creating your first workflow

Step 1: Name your workflow

  1. Go to Settings > Notification Center

  2. Click Create a workflow

  3. Enter a name for your workflow (e.g., "Trial Signup Flow Completed")

  4. Optionally, add a description to help your team understand what this workflow does

Step 2: Select an event

Choose the event that will trigger this notification.

Available events: Any native Userflow event, including:

  • Flow Started

  • Flow Completed

  • Checklist Task Completed

  • NPS Response Submitted

  • Survey Response Submitted

  • Company Created

  • User Attribute Updated

  • Custom events tracked via Userflow.js

Example: If you want to notify your team every time someone completes your "Product Tour" flow, select Flow Completed as the event.

Step 3: Add conditions (optional)

Conditions let you filter which events trigger notifications. You can add two types of conditions:

Event attribute conditions

Filter based on properties of the event itself.

Example: Only send notifications when the "Product Tour" flow is completed (not other flows):

  • Condition: flow_name equals Product Tour

Note: Not all events have event attributes. For example, "Company Created" may not have additional filterable properties.

User and company attribute conditions

Filter based on properties of the user or company associated with the event.

Examples:

  • Only notify when the user's lifecycle_stage is Lead

  • Only notify when the company's plan is Enterprise

  • Only notify when the user's signup_date is within the last 7 days

You can add multiple conditions. All conditions must be true for the notification to be sent.

Step 4: Choose destinations

Select where you want notifications to be sent. You can choose:

  • Email - Send to one or more email addresses

  • Slack - Send to one or more Slack channels

  • Both - Send to both email and Slack

Adding an email destination

  1. Click Add destination > Email

  2. Enter the email address

  3. Repeat to add more email addresses

Adding a Slack destination

  1. Click Add destination > Slack

  2. Select a channel from the dropdown (only public channels are shown)

  3. Repeat to add more channels

Note: You can only select from public channels in your connected Slack workspace. Private channels are not supported.

Tip: You can send the same notification to multiple destinations—for example, send to both a Slack channel and an email list.

Step 5: Customize your message

For each destination you've added, you'll configure the message content.

Email message settings

  • Subject line - The email subject

  • Message body - The email content (supports rich text formatting)

Slack message settings

  • Message - The message text that will appear in Slack (supports rich text formatting)

Using dynamic variables

You can inject dynamic user and company attributes directly into your messages using variable placeholders.

Example message:

A user just completed the Product Tour!

User: {{user_email}}
Company: {{company_name}}
Subscription: {{company_plan}}
Customer since: {{company_created_at}}

Available variables: Any custom attribute you've set up in Userflow via your Userflow.js installation, plus standard attributes like:

  • {{user_id}}

  • {{user_email}}

  • {{user_name}}

  • {{company_id}}

  • {{company_name}}

To add a variable:

  1. Type {{ in the message field

  2. Select the attribute from the dropdown

  3. Close with }}

Variables will be replaced with actual values when notifications are sent.

Step 6: Test your workflow

Before activating your workflow, test it to make sure notifications are sent correctly.

  1. Click the Test button at the top of the workflow editor

  2. Userflow will send a sample notification to all configured destinations

  3. Check your Slack channel and/or email inbox to verify the message appears correctly

Note: Test notifications use placeholder data for variables (e.g., user@example.com, Acme Corp) since no actual event has occurred.

Step 7: Activate your workflow

Once you're satisfied with your testing:

  1. Click Save to save the workflow

  2. Toggle the workflow status to Active

Your workflow is now live. Whenever the configured event occurs and all conditions are met, Userflow will send notifications to the destinations you specified.

Managing workflows

Viewing all workflows

Go to Settings > Notification Center to see a list of all workflows.

For each workflow, you'll see:

  • Workflow name

  • Status (Active, Inactive, Draft)

  • Last modified date

  • Who created it

Editing a workflow

  1. Click on a workflow from the list

  2. Make your changes

  3. Click Save

Note: Changes to an active workflow take effect immediately.

Enabling or disabling a workflow

Toggle the Active/Inactive switch on any workflow to turn it on or off without deleting it.

Use case: Temporarily disable a workflow during maintenance or testing, then re-enable it later.

Deleting a workflow

  1. Click on a workflow

  2. Click the Delete button

  3. Confirm the deletion

Warning: Deleting a workflow is permanent and cannot be undone.

Common workflow examples

Notify a channel when users complete onboarding

Event: Flow Completed

Conditions:

  • flow_name equals Onboarding Flow

Destination: Slack - #product-team

Message:

🎉 New user completed onboarding!

User: {{user_email}}
Company: {{company_name}}
Plan: {{company_plan}}

Alert customer success when NPS detractors respond

Event: NPS Response Submitted

Conditions:

  • nps_score is less than or equal to 6

Destination: Slack - #customer-success

Message:

⚠️ NPS Detractor Alert

User: {{user_email}}
Company: {{company_name}}
Score: {{nps_score}}
Feedback: {{nps_comment}}

Send a daily digest email of all flow completions

Event: Flow Completed

Conditions: (none - send for all flows)

Destination: Email - product-team@company.com

Message:

Subject: Daily Flow Completion Digest

Flow: {{flow_name}}
User: {{user_email}}
Completed at: {{completed_at}}

Note: This will send one email per flow completion. For true daily digest functionality, you would need to use a separate tool or custom integration to batch these.

Notification Center vs. Custom Alerts

You may be wondering how Notification Center differs from the Custom Alerts feature (Settings > Alerting).

Custom Alerts are designed for performance monitoring—they fire when a flow's metrics drop below a threshold (e.g., completion rate falls below 50%).

Notification Center sends notifications based on individual user activity—every time a specific event occurs.

Both features can send notifications, but they serve different purposes:

Feature

Use for

Triggered by

Notification Center

Real-time user activity alerts

Individual user events (e.g., one user completes a flow)

Custom Alerts

Performance monitoring

Metric thresholds (e.g., completion rate drops)

You can use both features together. For example:

  • Use Notification Center to notify your CS team every time a user submits an NPS detractor response

  • Use Custom Alerts to notify your product team if the overall NPS completion rate drops below 20%

Troubleshooting

My workflow isn't sending notifications

Possible causes:

  1. The workflow is inactive - Check that the toggle is set to "Active"

  2. The event hasn't occurred - Verify that the trigger event is actually happening in your product

  3. Conditions are too restrictive - Review your conditions to make sure they're not filtering out all events

  4. Slack connection expired - Go to Settings > Integrations > Slack and verify the connection status

  5. The selected Slack channel was deleted or renamed - Edit your workflow and reselect the channel

How to debug:

  1. Use the Test button to send a sample notification—this bypasses conditions and verifies your destinations work

  2. Check the Logs tab in Settings > Integrations > Slack to see if any notifications were sent (or failed)

  3. Temporarily remove all conditions to see if notifications start working

Variables aren't being replaced with actual values

Possible causes:

  1. The attribute doesn't exist for that user/company - Not all users have all attributes

  2. The variable syntax is incorrect - Make sure you're using {{attribute_name}} format

  3. The attribute name doesn't match - Check your Userflow.js installation to verify the attribute names

Fix:

  1. Go to Users in Userflow and look up a test user to see which attributes are actually set

  2. Update your workflow to only use attributes that exist

  3. Consider adding fallback text in your message

Best practices

Start simple, then iterate

Don't try to build complex workflows with multiple conditions right away. Start with:

  1. One event

  2. One destination

  3. A simple message

Test it, make sure it works, then add conditions and additional destinations.

Use descriptive workflow names

Instead of "Workflow 1" or "Slack notification", use names like:

  • "Trial Signup Completed → Product Channel"

  • "NPS Detractor Alert → CS Team"

  • "Enterprise User Onboarded → Sales Team"

This makes it easier to manage workflows as your list grows.

Test before activating

Always use the Test button before activating a workflow. This ensures:

  • Your destinations are configured correctly

  • Your message formatting looks right

  • Variables are replaced correctly

Monitor the logs

Check the Logs tab in Settings > Integrations > Slack periodically to catch any delivery failures early.

Don't over-notify

Be selective about which events warrant notifications. If your team is getting dozens of Slack messages per hour, they'll start ignoring them.

Good use of notifications:

  • High-value events (enterprise user signs up, NPS detractor response)

  • Exceptions and errors (flow failed to start, missing tooltip target)

  • Key milestones (user completes onboarding, reaches activation)

Bad use of notifications:

  • Every single flow view

  • Every button click

  • Low-priority informational events