Add profiles
UpdatedLearn how to add profiles to Customer.io, and how to get the most out of your data. In Customer.io, we refer to the process of adding a profile as identification.
How it works
Customer.io revolves around your audience of profiles. Profiles are the most common kind of data you store in Customer.io and represent people and the things they do.


A “profile” consists of a few things—all of which you can use to group profiles into segmentsA segment is a group of people in your workspace. Use segments to trigger automations, track membership over time, or fine-tune your audience. There are two types of segments: data-driven and manual. Data-driven segments automatically update when people start or stop matching criteria. Manual segments are static., trigger automations, and personalize messages:
- Their identifiersThe attributes you use to add, modify, and target people. Each unique identifier value represents an individual person in your workspace.: the values that make profiles unique in your system—like a database
idoremailaddress. - Their attributesA key-value pair that you associate with a person or an object—like a person’s name, the date they were created in your workspace, or a company’s billing date etc. Use attributes to target people and personalize messages.: the things you know about a person, like their name, interests, birthdate, etc.
- The eventsSomething that a person in your workspace did. Events can trigger automations, add people to segments, etc, and you can use properties from events to personalize messages. they perform: the things that profiles do on your website or in your app, like the pages they view, the buttons they click, and so on. You can use events to trigger automations in response to your audience’s activity in your system.
- Their relationships: the things they’re related to (commonly known in Customer.io as objectsAn object is a non-person entity that you can associate with one or more people—like a company, account, or online course.)—like a company they work for or the online classes they take.
- (For push notifications): their mobile devices.
Before you add profiles, think about how you want to group them
An automated process people enter when they meet your criteria. An automation has a trigger (who enters, and when), a workflow of messages and actions, and exit criteria (when they leave). A person’s path through the workflow is their journey. and who you send messages to. Plan out your “groups” of profiles and the types of messages you want to send to make sure that you gather the right data in Customer.io!
Ways to add profiles
In general, you’ll get the most out of Customer.io when you integrate with us and send real-time data about your audience and their activities. This helps keep your audience up to date and automate your messaging—the closest you can get to “set it and forget it” in the Marketing Automation world.
You can also add profiles manually or upload a list. These kinds of operations represent profiles at a “point in time” rather than keeping information up to date, but can still be useful when you gather information outside your integration path—like when you gather sign-ups or business cards at a conference.
There are a few different ways to add profiles to Customer.io:
- Add a test profile manually.
- Upload a CSV of profiles.
- Integrate with Customer.io. This lets you identifyThe Customer.io operation that adds or updates a person. When you identify a person, Customer.io either adds a person if they don’t exist in your workspace, or updates them if they do. Before you identify someone (by their email address or an ID), you can track them anonymously. profiles in real time and keep up to date with their activities in your systems.
But however you add profiles, we recommend that you add a test user to your workspace. This lets you test your messages and automations before you send them to your audience. You can manipulate your test user in a number of ways to prove your integrations, automations, and so on.
Add a test user
If you want to demonstrate the capabilities of Customer.io—or you want a handy way to test your messages—you might want to add a test user. You can add a profile manually with the qualities you want to test, making it easy to see how your automations, messages, and segmentsA segment is a group of people in your workspace. Use segments to trigger automations, track membership over time, or fine-tune your audience. There are two types of segments: data-driven and manual. Data-driven segments automatically update when people start or stop matching criteria. Manual segments are static. perform.
- Go to the Profiles page, click Add Profiles and select Add a Profile.
- Set your ID and email address (and
phoneif your workspace identifies profiles by phone number). To make it easy, you might assign your test user an ID of1. - Add attributes to your profile, like first_name and last_name. These are the values you’ll use to target yourself and personalize messages!
- Click Save Changes when you’re done.


Upload a CSV of Profiles
If you want to add profiles to Customer.io but you’re not creating an integration—or you just want to get started before you set up an integration—you can upload a CSV of profiles to Customer.io.
To get started quickly, you can go to the Profiles page in your workspace and add a profile with a few attributes to test with, or upload a CSV of profiles.


Identify profiles via integrations
The way that you add profiles to Customer.io depends on how you integrate with us:
- Through client-side JavaScript
- Through a server-side library
- Through your mobile app
- Using a database.
But, in almost every case, the method to add profiles is called identify. For example, if you’re using our JavaScript client library, you’ll invoke the identify method, passing an ID and an object containing a profile’s attributesA key-value pair that you associate with a person or an object—like a person’s name, the date they were created in your workspace, or a company’s billing date etc. Use attributes to target people and personalize messages. (data associated with the profile).
cioanalytics.identify('example-profile-id', {
first_name: 'cool',
last_name: 'person',
favorite_foods: ['pizza', 'ice cream'],
created_at: 1339438758, // strongly recommended when you first identify someone
});
