Segmentation Overview

What are Segments?

Segments are named groups of people who share characteristics or behaviors. A Segment can have many people and a person can belong to many segments.

You can use segments as recipient lists, campaign triggers, filters, conversion goals and more. Whenever you need to reference a subset of the people in your workspace, you’ll use a segment.

For example, here is the criteria for one of the pre-made segments called, “Have not logged in recently”.

Segment example: no page views in 30 days
Segment example: no page views in 30 days

If your integration sends us page viewEvents that track when people view pages on your website. You can track page view events using our JavaScript snippet or by sending requests directly to our API. events for people who have logged into your site, this segment contains people who have been in your workspace for at least 30 days but have not logged in recently. We’ll know they haven’t logged in because they haven’t logged in and viewed any pages in the past month. You can use a segment like this as a campaign trigger to send messages that incentivize people to return to your site!

Types of Segments

You can create two different kinds of segments in Customer.io. The way people enter and exit your segments depends on the type of segment you create.

Data-driven Segments: People enter and exit data-driven segments automatically when they match and stop matching the conditions that you set for the segment. These segments help you take action based on your audience’s real-time actions. You should use data-driven segments when you want Customer.io to move people in and out of your segments automatically based on the data you send us for each person.

Manual Segments: People enter and exit manual segments when you explicitly add them to, or remove them from, the segment. You might take advantage of manual segments when you want to move people in and out of segments based on business logic outside of Customer.io. You can add people to manual segments through a CSV upload, as part of a campaign workflow, or using our API. You can remove people from manual segments using the “Clear Segment” option, a campaign workflow action, or using our API.

When should I use a Data-driven Segment vs. a Manual Segment?

Customer.io shines best when you have an active data integration between your system and ours. This allows you to utilize attributes and behaviors of your end-users to set up automated messaging from our app.

That is the power of Data-driven Segments, and for the most part this is the type of Segment you should be using.

Manual Segments are available in instances where you need more hands-on control of the Segment, you are expecting limited changes or a data integration is not available to you.

How do I create a Segment?

Go to the Segments page and click on Create Segment.

You’ll then be able to name your Segment and give it a description. Your next step will be to choose between creating Data-driven Segment and creating a Manual Segment.

Choose a Segment type
Choose a Segment type

How do companies use the description field for their Segments?

Generally we see the description field used to communicate who will match the Segment’s conditions using terms that are unique to the jargon of each company. This is also how we use our own Customer.io account.

The text you enter for the description will be searched when you start typing in the “Find a segment…” box so whatever you put in your descriptions can help people on your team hone in on the Segments they need.

How we calculate Segment membership

We calculate segment membership when someone matches the segment conditions. For instance, let’s say you created a segment “Signed Up” with the condition “created_at is a timestamp.” After someone gains a created_at timestamp, they will become a member of “Signed Up.”

The opposite is true, as well. That is, we calculate when someone is NOT in a segment when they do not meet the segment conditions. For instance, if you create a segment “Signed Up” with the condition “created_at is a timestamp” then create a person without a created_at timestamp, they will not belong to “Signed Up.” This means, we calculate “not in” segment membership when someone has left a segment AND when someone has never belonged to a segment.

Phrased another way, a person can match trigger conditions, filter conditions, and wait until conditions based on “NOT IN: segment” criteria without having belonged to that segment in the past. So if you want someone to enter a campaign when they used to belong to a segment but no longer do, you’ll have to use more than “not in” segment conditions.

Find your Segments

Go to the Segments page to see your active segments. You can page through the list of segments using the , , , and icons.

Find a specific segment

Go to the Segments page and search for segments by name or description in the “Find a segment…” box. As you type, the list populates segments with a match in their name or description. You can also filter segments using the drop-down options just above the list.

Filter the Segment list
Filter the Segment list

List archived segments

Go to the Segments page and click Archived to see your archived segments.

View a Segment

You can click a specific segment to see specific criteria for the segment, the people currently in the segment, and graphs of membership over time.

  1. Go to Segments.
  2. Click the segment you want to see information about.

On the Segment Details page, you’ll find:

  • Overview: For data-driven segments, you’ll see a collapsed view of the Segment’s conditions. For manual segments, you’ll see a list of CSV imports (if any). For all segments, you’ll see how many people are in the segment and a truncated view from the other tabs.
  • People: Displays a count of segment membership over time*
  • Usage: Links to campaigns, newsletters, and other assets that use the segment. Alternately, you can create assets based on the segment from here.
  • Ad Audiences A list of Ad Audiences that sync with this segment.
segment_detail_tabs_2
segment_detail_tabs_2

View People in a Segment

When you click a segment on the Segments page, the People chart shows changes in segment membership over the past 30 days. You can also click the link on the chart to see the list of people in the segment.

segment_detail_people_card_3
segment_detail_people_card_3

View Segment Membership Over Time

When you view an individual Segment’s detail page there will be a “People” card with a quick view of the Segment’s membership counts over time.

segment_detail_people_card_3
segment_detail_people_card_3

Clicking anywhere on the chart will take you to the “People” tab for the Segment you are viewing. Here, you can view the total membership counts of the Segment and the change in Segment membership over time.

segment_detail_membership_chart_2
segment_detail_membership_chart_2

 Note

Segment Membership data only goes back to April 9th, 2020.

Export a Segment

When a segment has one or more members, you can export a point-in-time CSV file containing a list of the people in the segment.

  1. Go to Segments.
  2. Click the segment you want to export a list from.
  3. Click Export. This starts the export process. You can find and download the CSV on the Exports page. 

Archive/Unarchive a Segment

You might want to archive a segment instead of deleting it to keep a history of the segment or just to make sure that nobody uses it temporarily.

You cannot archive a segment that is currently in use. Check the Usage tab when looking at your segment to see if it’s still in use somewhere in your workspace.

  1. Go to Segments.
  2. Click the segment you want to archive or unarchive.
  3. Click Options and select the option to archive or unarchive the segment.
Segment options
Segment options

You can also archive or unarchive multiple unused segments from the Segments page by checking the box next to each segment that you want to archive or unarchive and then clicking Archive or Unarchive.

Archive a checked Segment
Archive a checked Segment

Troubleshooting segments

These are some common issues with segments, and tips to help you solve them. If you run into any trouble implementing any of these solutions, reach out to our Support team and link to the specific segment you’re having trouble with.

My attribute value is a collection. How do I create a Segment based on an item in that collection?

Attribute values in Customer.io are only simple strings. For convenience, we do, however, make them available in message templates as JSON objects (if it is valid JSON) or as arrays (if it is a valid array) but for segmentation purposes, we do not currently distinguish them as being different data types such as arrays or dictionaries, etc.

I edited my Segment conditions but People who match the new conditions did not enter a campaign that is triggered by my Segment.

When you make changes to your data-driven Segment’s conditions, People who already match the updated conditions will not automatically enter any Campaigns that are triggered by that Segment. Only People who meet the updated Segment conditions AFTER the changes are made will enter the Campaigns.

If you need People who already match your new conditions to enter a Campaign, please reach out to support with a link to the Campaign so that we can determine if it will be possible and advisable to force those People to enter your Campaign.

I deleted a Segment but all the People are still in my account.

Deleting a Segment will NOT delete the members of that Segment. Try recreating the Segment and then viewing the People who are in the Segment by clicking on the link in the People section of the Segment’s detail page where it says, “This segment contains # people”. You will be able to delete the People from there.

I am trying to match values that contain a *, |, or + but I am not getting the results I expect.

*, | and + are special operators that allow for simple, regex-like matching. When searching specifically for strings containing these characters, try placing a backslash (\) before the special operators that you want to find so that they will not be interpreted as regex operators.

I am using regular expressions in my Segment Condition but it’s not working.

Segment Conditions do not currently support the full set of regular expression rules. Try limiting your use to the few special operators we allow for string comparison (*, | and +).

I cannot add a Person to my Manual Segment because they do not exist in my account.

People must exist in your account before they can be added to a Manual Segment. Try adding that person to Customer.io and then you will be able to add them to a Manual Segment.

Copied to clipboard!
  Contents
Is this page helpful?