Skip to main content

How to create and use segment

Segments are smart, dynamic groups of contacts that automatically update based on conditions you define.

Najwa Syeda avatar
Written by Najwa Syeda
Updated over 2 weeks ago

What are segments?

Segments are smart, dynamic groups of contacts that automatically update based on conditions you define. Unlike lists (which you manually add contacts to) or tags (which mark specific attributes), segments filter your entire contact database in real-time to find contacts matching specific criteria.

When and why you'd use segments

Segments are powerful tools for precision targeting when lists and tags alone aren't enough. You'll use segments when you need to:

  • Target based on multiple conditions like "contacts in List A who opened Campaign X but haven't clicked any links"

  • Send highly personalized campaigns to contacts matching complex behavior patterns

  • Analyze contact behavior by grouping contacts who share engagement patterns or characteristics

  • Automate list management by identifying contacts who need to be moved, tagged, or removed based on activity

  • Exclude specific groups from drip campaigns or automations

  • Trigger automations when contacts enter a segment based on their behavior

  • Clean your database by finding inactive contacts who haven't engaged in months

For example, if you want to send a re-engagement campaign to contacts who:

  • Are in your "Newsletter Subscribers" list AND

  • Have been sent the "Winter Sale" campaign AND

  • Did NOT click any links AND

  • Have NOT replied

This requires a segment. Lists and tags alone cannot achieve this level of targeting.

Understanding segments vs. lists vs. tags

Lists: Manual collections of contacts that you control directly

  • You add/remove contacts manually or via import

  • Static membership unless you change it

  • Example: "Newsletter Subscribers," "Event Attendees"

Tags: Labels applied to contacts based on actions or attributes

  • Applied through forms, automations, or manual tagging

  • Mark specific characteristics or behaviors

  • Example: "Downloaded eBook," "VIP Customer"

Segments: Dynamic filters that automatically find contacts matching conditions

  • Membership updates automatically as contacts meet or stop meeting criteria

  • Can combine lists, tags, campaign activity, custom fields, and more

  • Example: "Active subscribers who opened last 3 campaigns but never purchased"

Key difference: If you delete a list, contacts are removed. If you delete a segment, contacts remain unchanged—only the filter is removed.

How segment conditions work: Groups and logic

SendX segments use a flexible group-based system that lets you create simple or highly complex filters.

Condition logic within a group

Within each group, you can add multiple conditions and choose how they relate:

OR logic (Any of): Contact matches if they meet ANY condition in the group

  • Condition A OR Condition B OR Condition C

  • Example: In List A OR has Tag B OR opened Campaign C

  • Use when you want to cast a wider net

AND logic (All of): Contact matches if they meet ALL conditions in the group

  • Condition A AND Condition B AND Condition C

  • Example: In List A AND has Tag B AND opened Campaign C

  • Use when you need very specific targeting

You can toggle between OR and AND at the top of each group.

Logic between groups

You can create multiple groups and combine them using AND or OR:

Between groups:

  • Group 1 (conditions) OR Group 2 (conditions)

  • Group 1 (conditions) AND Group 2 (conditions)

This allows complex patterns like:

  • (In List A OR List B) AND (Has Tag X OR Tag Y)

  • (Opened Campaign A AND clicked) OR (Replied to Campaign B)

Example structure

Group 1 (OR logic):

  • Lists: Any of "New List," "Omaha Poker Users," "Texas Holdem Users"

AND

Group 2 (AND logic):

  • Workflows: Was sent "Welcome Email Series"

  • Custom Fields: SignupDate is within last 30 days

This finds contacts who are in ANY of those lists AND were sent the welcome workflow AND signed up recently.

How to create a segment

Step 1: Navigate to segments

  1. Log in to your SendX dashboard.

  2. Go to Audience > Segments from the top menu.

  3. Click + Create Segment.

Step 2: Name your segment

Give your segment a clear, descriptive name that explains who it includes.

Good examples:

  • "Active Newsletter Readers - Last 30 Days"

  • "Unengaged Trial Users - No Opens"

  • "VIP Customers - High Value + Recent Purchase"

Poor examples:

  • "Segment 1"

  • "Test"

  • "Campaign"

Step 3: Build your first group

Click + Add condition to start defining who should be in this segment.

Choose a condition category:

  • Contacts: Filter by subscription status, email verification, or contact attributes

  • Lists: Include/exclude contacts in specific lists

  • Newsletter or Auto-Trigger Campaigns: Filter by campaign sends, opens, clicks, or replies

  • Drip Campaigns: Filter by drip campaign enrollment, completion, or activity

  • Custom Fields: Filter by any custom field values you've created

  • Custom Events: Filter by tracked events (for advanced users)

  • Workflows: Filter by workflow enrollment or completion

Select an operator (varies by condition type):

  • Lists: "Any of," "All of," "None of"

  • Campaigns: "Was sent," "Was not sent," "Opened," "Did not open," "Clicked," "Did not click"

  • Dates: "Is today," "Happened X days ago," "Will happen in X days," "Is within last X days"

  • Text fields: "Contains," "Does not contain," "Equals," "Is empty," "Is not empty"

  • Numbers: "Equals," "Greater than," "Less than"

Configure the condition details:

  • Select specific lists, campaigns, tags, or field values

  • Enter date ranges or number thresholds

  • Define time periods (last 30 days, last 90 days, etc.)

Step 4: Set the group logic

At the top of your group, toggle between OR and AND to control how conditions within this group relate:

  • OR: Contact matches if they meet ANY condition (broader targeting)

  • AND: Contact matches if they meet ALL conditions (precise targeting)

Step 5: Add more conditions (optional)

Click + Add condition to add more conditions to this group. Each new condition will follow the OR/AND logic you selected for the group.

Step 6: Add more groups (optional)

To create complex multi-level segments:

  1. After completing Group 1, you'll see an OR/AND toggle between groups.

  2. Select whether contacts must match Group 1 OR Group 2, or Group 1 AND Group 2.

  3. Click to add Group 2.

  4. Build conditions in Group 2 the same way as Group 1.

  5. Repeat to add as many groups as needed.

Step 7: Preview your results

As you build your segment, SendX shows the contact count that matches your criteria. You can see:

  • Total contacts matching all conditions

  • Real-time updates as you add or modify conditions

  • Sample contacts who match (preview before saving)

This lets you verify your segment logic before saving.

Step 8: Save your segment

  1. Review all conditions and groups carefully.

  2. Verify the contact count makes sense for your targeting.

  3. Click Save Segment.

Your segment is now created and will automatically update as contacts meet or stop meeting your criteria.

Available filter types and operators

SendX offers comprehensive filtering options:

Contact-level filters

Contact created: When the contact was added to SendX

  • Operators: Is within last X days, happened X days ago, before date, after date

Contact updated: When contact data was last modified

  • Operators: Is within last X days, happened X days ago

Contact added via source: How the contact entered your database

  • Sources: Import, form signup, API, manual entry

Contact subscription status: Current email subscription state

  • Status: Subscribed, unsubscribed, bounced, complained

List and tag filters

Lists: Which lists contacts belong to

  • Operators: Any of (OR), All of (AND), None of (exclusion)

  • Can select multiple lists

Tags: Which tags are applied to contacts

  • Operators: Has any of these tags, has all of these tags, does not have tag

  • Can select multiple tags

Campaign activity filters

Newsletter or Auto-Trigger Campaigns: Campaign-specific engagement

  • Was sent campaign

  • Was not sent campaign

  • Opened campaign

  • Did not open campaign

  • Clicked link in campaign

  • Did not click in campaign

  • Replied to campaign

  • Sent X emails in Y days (engagement threshold)

Drip Campaigns: Automation enrollment and activity

  • Is enrolled in drip

  • Completed drip campaign

  • Exited drip campaign

  • Currently active in drip step X

Custom field filters

Custom fields support different operators based on data type:

Text fields:

  • Contains text

  • Does not contain text

  • Equals exactly

  • Starts with

  • Ends with

  • Is empty

  • Is not empty

Number fields (like Lifetime Value, Total Deposits):

  • Equals

  • Greater than

  • Less than

  • Between range

  • Is empty

  • Is not empty

Date fields (like Birthday, SignupDate):

  • Is today

  • Happened X days/months/years ago

  • Will happen in X days/months/years

  • Happened in last X days (ignoring year, useful for birthdays)

  • Will happen in next X days (ignoring year)

  • Before specific date

  • After specific date

  • Is empty

  • Is not empty

Workflow filters

Workflows: Automation enrollment and completion

  • Is enrolled in workflow

  • Completed workflow

  • Currently in workflow step X

Custom events (advanced)

Track and filter by custom events you've set up through integrations or API.

Segment examples for common use cases

Example 1: Re-engagement campaign for inactive subscribers

Goal: Find subscribers who haven't engaged recently

Segment:

  • Group 1 (AND logic):

    • Lists: Any of "Newsletter Subscribers"

    • Newsletter Campaigns: Was sent "Any campaign" in last 90 days

    • Newsletter Campaigns: Did not open "Any campaign" in last 90 days

    • Contact subscription status: Subscribed

Result: Active subscribers who received emails in last 3 months but never opened them

Example 2: VIP customers for exclusive offer

Goal: Target high-value customers who purchased recently

Segment:

  • Group 1 (AND logic):

    • Custom Fields: Lifetime Value > 500

    • Custom Fields: Last Purchase Date within last 60 days

    • Tags: Has "Customer" tag

    • Lists: Any of "Active Buyers"

Result: Recent high-value customers ready for VIP treatment

Example 3: Birthday campaign

Goal: Send birthday emails to contacts whose birthday is coming up

Segment:

  • Group 1 (AND logic):

    • Custom Fields: Birthday will happen in next 7 days (ignoring year)

    • Contact subscription status: Subscribed

    • Lists: Not in "Unengaged Users"

Result: Subscribed contacts with birthdays in the next week

Example 4: Trial users who haven't engaged

Goal: Find trial users who signed up but haven't used the product

Segment:

  • Group 1 (AND logic):

    • Tags: Has "Trial User"

    • Custom Fields: SignupDate is within last 14 days

    • Custom Events: Has not triggered "Product Login"

    • Drip Campaigns: Not enrolled in "Onboarding Series"

Result: Recent trial signups who need onboarding push

Example 5: Multi-list consolidation for targeted campaign

Goal: Send campaign to contacts across multiple related lists

Segment:

  • Group 1 (OR logic):

    • Lists: Any of "Webinar Attendees 2025," "Ebook Downloaders," "Free Tool Users"

AND

  • Group 2 (AND logic):

    • Newsletter Campaigns: Opened at least 1 campaign in last 30 days

    • Tags: Does not have "Customer"

Result: Engaged leads from multiple sources who haven't purchased yet

Example 6: Exclude recent campaign recipients

Goal: Send to all active subscribers except those who got last week's promo

Segment:

  • Group 1 (AND logic):

    • Lists: Any of "All Subscribers"

    • Contact subscription status: Subscribed

    • Newsletter Campaigns: Was not sent "Black Friday Promo 2025"

    • Newsletter Campaigns: Opened any campaign in last 60 days

Result: Active subscribers who didn't receive your recent promotion

What you can do with segments

Once you've created a segment, you can use it across SendX:

Send targeted campaigns:

  • Use segments as the recipient list for broadcast emails

  • Send highly relevant messages to precisely defined groups

Perform bulk actions:

  • Export all contacts in a segment

  • Add segment contacts to lists or tags in bulk

  • Update custom field values for the entire segment

  • Remove segment contacts from other lists

Set up automations:

  • Trigger an automation when a contact enters a segment

  • Example: Auto-send welcome sequence when someone enters "New High-Value Lead" segment

Exclude from drip campaigns:

  • Prevent certain segments from receiving specific drip emails

  • Example: Exclude "Existing Customers" segment from trial nurture drips

Analyze engagement:

  • View segment-specific analytics and statistics

  • Track open rates, click rates, and engagement for specific audience groups

  • Compare performance across different segments

Clean your database:

  • Identify inactive contacts for removal

  • Find bounced or invalid emails

  • Locate contacts missing critical information

Important things to know about segments

Segments are always dynamic

Segment membership updates automatically every few minutes. When a contact's data changes (they open an email, get tagged, update a custom field), they may enter or exit segments based on whether they still match the conditions.

You cannot "freeze" a segment at a point in time. If you need a static snapshot, export the segment to a CSV or use a bulk action to add all segment contacts to a list.

Segments don't count toward contact limits

Contacts can belong to multiple segments simultaneously, but they're only counted once toward your SendX plan limit. Segments are filters, not duplicate contact storage.

Deleted data affects segment results

If you delete a list, tag, or campaign that a segment depends on, the segment will still exist but will show 0 contacts matching those conditions. The segment doesn't break—it just has no matching data for that filter.

Segments can be empty

You can save a segment even if it currently matches 0 contacts. This is useful for setting up segments in advance or for automation triggers that will have contacts later.

Initial processing may take time

When you first create a complex segment (many conditions, large database), it may take a few minutes to calculate the initial contact count. Once established, updates happen faster as contacts change.

You can edit segments anytime

Segments are fully editable after creation. You can:

  • Add or remove conditions

  • Change AND/OR logic

  • Rename the segment

  • Add or remove groups

Remember to save changes after editing. Any campaigns or automations using this segment will automatically use the updated criteria.

Segment data cannot be compared directly

You cannot create a segment condition like "Contacts in Segment A but not in Segment B." However, you can work around this by:

  1. Moving contacts from Segment A to a list via bulk action

  2. Creating Segment B with condition "Not in List X"

Moving segment contacts to lists/tags

Since segments can't be used as conditions in other segments, convert them to lists or tags when needed:

  1. Open your segment

  2. Use bulk action: "Add all contacts to List X" or "Add Tag Y"

  3. Now use that list or tag in other segments

Common questions and troubleshooting

My segment shows 0 contacts. What's wrong?

Check these possibilities:

  • Your conditions are too restrictive (try broadening with OR logic)

  • Source data (lists, campaigns, tags) might be empty or deleted

  • Date ranges might exclude all contacts (check "last X days" settings)

  • Logic might be contradictory (AND conditions that can't both be true)

Use the preview as you build to see when contacts drop to zero.

How do I know if my segment logic is correct?

Before saving:

  1. Check the contact count—does it match your expectations?

  2. Click preview to see sample contacts who match

  3. Verify those contacts should indeed be included

  4. Test with a known contact: look them up individually and verify they meet all conditions

After saving:

  1. Export a small sample of the segment

  2. Manually verify those contacts match your criteria

  3. Adjust conditions if needed

Can I see which contacts entered or exited my segment?

Not directly within the segment itself. However, you can:

  • Create a separate segment for recent additions: "Contact created within last X days" + your original conditions

  • Use automation triggers: Set up a workflow triggered when contacts enter the segment, which logs or tags them

  • Export the segment regularly and compare exports to track changes over time

My segment count keeps changing. Is this normal?

Yes, this is expected behavior. Segments are dynamic and update automatically:

  • Contacts open emails and meet engagement criteria

  • New contacts are added to lists used in your segment

  • Tags are applied or removed

  • Custom field values update

  • Contacts unsubscribe or bounce

If you need a static group, export the segment or move contacts to a list.

How can I exclude certain contacts from a segment?

Use exclusion operators:

  • Lists: "None of" these lists

  • Tags: "Does not have" tag

  • Campaigns: "Was not sent" or "Did not open"

  • Custom Fields: "Is empty" or "Does not contain"

Or create a group with AND logic:

  • Group 1: Include conditions

  • AND

  • Group 2: Exclude conditions (NOT logic)

Can I duplicate a segment to create variations?

SendX doesn't have a one-click duplicate button, but you can:

  1. Open the segment you want to copy

  2. Create a new segment

  3. Manually recreate the same conditions

  4. Modify as needed

  5. Save with a new name

This is useful for creating similar segments for A/B testing.

Why can't I use segments within segments?

This is a current platform limitation. The workaround:

  1. Create Segment A with your base conditions

  2. Use bulk action to add all Segment A contacts to a new list

  3. Use that list as a condition in Segment B

What happens to my segments when I delete source data?

  • Delete a list: Segments using that list will show 0 contacts for that condition (other conditions still work)

  • Delete a tag: Same as lists—that condition shows 0 matches

  • Delete a campaign: Segments filtering by that campaign will have 0 matches for that filter

  • Delete custom field: Segments using that field will error or show 0 contacts

The segment itself doesn't break—it just has no data to match against.

Can I schedule campaigns to segments for future dates?

Yes. When scheduling a campaign:

  1. Select your segment as the recipient

  2. Set your send date and time

  3. At send time, the campaign will go to whoever is in the segment at that moment

Remember: segment membership may change between scheduling and send time.

How do segments affect deliverability?

Segments themselves don't directly impact deliverability, but they help you improve it:

  • Target engaged contacts for better open/click rates

  • Exclude inactive contacts from campaigns

  • Send relevant content to interested segments

  • Avoid sending to recently contacted groups

Better targeting → better engagement → better sender reputation → improved deliverability.

My segment has fewer contacts than I expected. Why?

Common reasons:

  • AND logic is too restrictive: Contacts must meet ALL conditions, which narrows results significantly

  • Overlapping exclusions: You might be excluding more than intended with "Not" conditions

  • Date ranges: "Last X days" might be shorter than you think

  • Campaign filters: "Did not open" includes contacts who weren't sent that campaign

Try temporarily changing AND to OR to see which condition is the bottleneck.

Can I export segment contacts to use outside SendX?

Yes:

  1. Open your segment

  2. Click Export button

  3. A CSV file link will be sent to your admin email

  4. Download and use in Excel, Google Sheets, CRM systems, etc.

The export includes all contact data: email, name, custom fields, tags, etc.

Tips for creating effective segments

Start simple, then add complexity

  • Begin with 1-2 conditions to understand the basics

  • Gradually add more conditions as you get comfortable

  • Test each new condition by checking the contact count change

Use descriptive names with dates

  • "Active Subscribers - Last 60 Days - Jan2026"

  • "Trial Users Needing Nurture - Q1 2026"

  • Names help you remember purpose and context

Preview before saving

  • Always check contact count and preview contacts

  • Verify a few known contacts appear (or don't) as expected

  • Catch logic errors before sending campaigns

Document complex segments

  • Keep notes on what each complex segment does

  • Explain the business purpose

  • Makes it easier for team members to understand

Combine with bulk actions for list cleanup

  • Create segment for inactive contacts

  • Use bulk action to tag them or move to cleanup list

  • Regularly maintain database health

Test with known contacts first

  • Look up specific contacts you know well

  • Verify they appear in segments when they should

  • Adjust conditions if results don't match expectations

Use OR logic for broader reach

  • When you want to include more people

  • Example: reaching multiple customer types at once

Use AND logic for precision

  • When you need very specific targeting

  • Example: high-value customers who recently engaged

Leverage date-based filters

  • Automatically target birthdays, anniversaries, trial expirations

  • Create time-sensitive campaigns without manual updates

Create segments for exclusions

  • "Recent Campaign Recipients" to avoid over-emailing

  • "Unengaged Last 90 Days" to exclude from main campaigns

  • Use these in campaign exclusion settings

Monitor segment size over time

  • Export monthly to track growth/decline

  • Investigate unexpected changes

  • Adjust marketing strategy based on trends

Did this answer your question?