Skip to main content

Check Profile Node

Overview of Check profile node, what it does, how it works and when to use it.

Updated over a week ago

Check Profile Node

The Check Profile node evaluates a condition on a profile's data and branches the flow into two paths: Yes and No. It's the primary way to add if/then logic to your Marketing Automation flows.

When a profile reaches the Check Profile node, the node checks their data at that exact moment — like taking a snapshot. Based on the result, the profile continues down either the Yes path (condition met) or the No path (condition not met).


How the Yes / No branching works

Every Check Profile node creates two paths:

Path

What happens

Yes ✓

The profile meets the condition. They continue down this path. For example: the profile has the tag "VIP", so they go down the Yes path to receive a VIP-exclusive email.

No ✗

The profile does not meet the condition. They continue down this path. For example: the profile doesn't have the tag "VIP", so they go down the No path to receive a standard email.

You must connect at least one subsequent node to each path. Both paths need their own continuation — even if one path goes directly to an End Flow node.

💡 Good to know

The check happens instantly. The profile is evaluated once, at the moment they reach the node, and immediately moves down the appropriate path. The Check Profile node does not wait or pause — if you need the profile to have time to take an action before being evaluated, place a Time node or a Wait for Event node before the Check Profile node.


When to use the Check Profile node

Use the Check Profile node whenever you need to route profiles down different paths based on their data. Here are the most common scenarios:

Check if a profile clicked a previous email

Place the Check Profile node after an Email node (with a Time node delay in between). Check for the email click event → Yes: send follow-up content. No: send a reminder or try a different subject line.

Route by country or language

Check the profile's Country or Language attribute → Yes (e.g. Country = Sweden): send Swedish content. No: send English content or check another country.

VIP vs. standard treatment

Check if the profile has a "VIP" tag → Yes: send an exclusive offer and notify sales via a Notification node. No: send the standard offer.

Segment-based filtering

Check if the profile belongs to a specific segment (e.g. "Active subscribers last 30 days") → Yes: continue the nurture flow. No: skip to an End Flow node or route to a re-engagement path.

Prevent duplicate actions

Check if the profile already has an achievement or a tag from a previous flow → Yes: skip (End Flow). No: continue the journey. This prevents profiles from being re-processed if they re-enter the flow.


What can you check?

The Check Profile node supports four data types. Each works slightly differently.

Data type

What it checks

Example

Attributes

Checks the value of a specific profile attribute. Supports operators like equals, not equals, contains, greater than, less than, is empty, etc.

Country = "Sweden", Age > 25, Lead Score ≥ 50, Email is not empty

Events

Checks if the profile has a specific event on their record — for example, an email click, form submission, or custom event. Can filter by activity and use Match/Value for precision.

Has Email Click event in "Summer campaign", Has Custom Event "product_purchased"

Tags

Checks if the profile has (or does not have) a specific tag applied.

Has tag "VIP", Has tag "Onboarding complete", Does not have tag "Churned"

Segments

Checks if the profile belongs to a specific segment at the moment of evaluation. Since segments are dynamic, a profile might be in the segment now but not later (or vice versa).

Is in segment "Active last 30 days", Is in segment "Enterprise accounts"

💡 Tip — Which data type to choose?

  • Use Attributes when you need to check a specific data value with operators (equals, greater than, contains).

  • Use Events when you need to check if something happened (a click, a form submit, a purchase).

  • Use Tags when you need a simple yes/no check on a label.

  • Use Segments when the condition is complex (multiple criteria combined) — define the logic in the Segment Builder, then just check membership here.

Setting up the Check Profile node

  1. Drag the Check Profile node onto the canvas. Two branches appear immediately: Yes and No.

  2. Click the node to open the configuration panel.

  3. Select the data type you want to check: Attributes, Events, Tags, or Segments.

  4. Configure the condition based on the data type you selected:

    1. Checking an Attribute

    2. Checking an Event

    3. Checking a TAG

    4. Checking a Segment

Checking an Attribute

Select the attribute from the dropdown, then choose an operator and enter a value. Available operators depend on the attribute type:

  • Text attributes: equals, not equals, contains, does not contain, starts with, ends with, is empty, is not empty

  • Number attributes: equals, not equals, greater than, less than, greater than or equal, less than or equal, is empty, is not empty

  • Date attributes: equals, before, after, is empty, is not empty

  • True/false attributes: is true, is false

Checking an Event

Select the event category and specific event — for example, Response Data → Email → Click. Optionally narrow with an activity scope and Match/Value filters, just like in the Listen node.

Checking a Tag

Select the tag from the dropdown. The node checks whether the profile has this tag applied at the moment of evaluation.

Checking a Segment

Select the segment from the dropdown. The node checks whether the profile is a member of this segment at the moment of evaluation.

💡 Good to know — Segments are dynamic

Segments recalculate as profile data changes. A profile might be in a segment when they enter the flow but fall out of it by the time they reach the Check Profile node (or vice versa). The check always uses the current segment membership at the moment of evaluation.

Connect nodes to both paths. Add subsequent nodes to the Yes branch and the No branch. Every path should eventually lead to an End Flow node.


Chaining multiple Check Profile nodes

You can place multiple Check Profile nodes in sequence to create more complex routing logic. This is useful when you need to check several conditions one after another.

For example, to route profiles by language:

  1. First Check Profile node: Language = Swedish → Yes: Swedish content path. No: continue to next check.

  2. Second Check Profile node (on the No path): Language = Norwegian → Yes: Norwegian content path. No: continue to next check.

  3. Third Check Profile node (on the No path): Language = Danish → Yes: Danish content path. No: default English content path.


Check Profile vs. Wait for Event vs. Split

These three nodes all create branching paths, but they work very differently. Here's when to use each:

Node

How it works

Paths

Use when…

Check Profile

Checks data once, instantly. Like taking a snapshot of the profile's current state.

Yes / No (data-based)

You need to route based on who the profile is or what they've done — right now.

Pauses the profile and watches for a specific action over a period of time.

Yes (event happened) / No (timeout)

You need to give the profile time to react before deciding the next step.

Distributes profiles randomly by percentage. Doesn't look at any data.

2–4 paths (random)

You need A/B testing or random distribution — not data-driven routing.

💡 Common pattern — Time + Check Profile

Want to check if a profile clicked an email, but give them time to do it first? Place a Time node (e.g. wait 2 days) before the Check Profile node. The Time node gives the profile time to act; the Check Profile node then evaluates whether they did.

Alternatively, use a Wait for Event node — it combines the waiting and checking into a single step.


Troubleshooting: All profiles going down the same path?

If every profile is going down the Yes path — or every profile is going down the No path — the issue is usually with the condition configuration or the data itself. Work through this checklist:

Check this

Why it matters

Is the condition correctly configured?

Double-check the data type, operator, and value. A common mistake is using "equals" when you need "contains", or misspelling the value (e.g. "sweden" vs. "Sweden" — attribute checks may be case-sensitive).

Do the profiles actually have the data?

Check a few profiles in Audience to verify the attribute, tag, event, or segment membership actually exists on their records. If the data is missing or empty, the profile will go down the No path.

Is the timing right?

If you're checking for an event (e.g. email click) but the profile hasn't had time to perform it yet, the check will return No. Make sure there's a Time node or Wait for Event node before the check to give profiles time to act.

Has the segment updated?

If checking segment membership, remember that segments are dynamic. The profile might have been in the segment when they entered the flow but dropped out by the time they reach the Check Profile node.

Are you checking the right event scope?

When checking events, make sure the activity scope (specific activity vs. any activity) matches your intent. Checking for a click in "any activity" will return Yes if the profile clicked in any email — which might not be what you want.

Use Node Stats to verify

Click the Check Profile node on an active flow and check the Node Stats. If the Yes/No split looks wrong, test with a known profile to confirm the condition works as expected.


Tips & best practices

  • Always add a delay before event-based checks. If you're checking whether a profile clicked an email, place a Time node between the Email node and the Check Profile node. Without the delay, the check happens before the profile has had time to open the email.

  • Use segments for complex conditions. If your condition involves multiple criteria (AND/OR logic), build it as a Segment and check membership — rather than chaining multiple Check Profile nodes.

  • Name your paths clearly. When you have multiple Check Profile nodes, the canvas can get complex. Use descriptive labels in your flow notes (via the Goals feature in the bottom bar) to document what each Yes/No path represents.

  • Don't leave paths empty. Both the Yes and No path need a destination. Even if one path is "do nothing", connect it to an End Flow node for clean flow design and accurate reporting.

  • Test with known profiles. Before activating, use the Listen node's segment filter to test with a profile where you know the data. Verify they go down the expected path.


Related articles

Check what actions Profiles have completed and create truly data driven customer journeys.


In this Article


About the Check Profile Node

The Check Profile Node will check the Profiles that enter the node to see if they have a specific Attribute, Event or Tag, or if they belong to a Segment of your choice.


Setting Up the Node

The Yes and No Path Way

1. Drag the Check Profile Node into the Canvas. As soon as you do you will see that this node has a Yes and No option.

This will allow you to create two different path ways for the Profiles in the flow.

Yes: The Node checks the Profile and if the Profile do indeed meet the condition it will continue down this path.

No: The node check the Profile and if the Profile do NOT meet the conditions it will continue down this path.

2. Click on the node to open it up and see all the available options.

In example you can place the Check Profile Node right after an email node and Check of a Profile has clicked in the email.

3. Then decide what should happen if Yes: The Profile has indeed clicked. Or if No: The Profile did not click.


What's Next?

Did this answer your question?