Add profiles

Learn 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.

An example profile in Customer.io

A “profile” consists of a few things—all of which you can use to group profiles into segments, trigger automations, and personalize messages:

  1. Their identifiers: the values that make profiles unique in your system—like a database id or email address.
  2. Their attributes: the things you know about a person, like their name, interests, birthdate, etc.
  3. The events 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.
  4. Their relationships: the things they’re related to (commonly known in Customer.io as objects)—like a company they work for or the online classes they take.
  5. (For push notifications): their mobile devices.
flowchart BT a(Profile) b-->a e-->a j-->a n-->a subgraph b[Identifiers] direction LR c(id) d(email) r(cio_id) s(phone) end subgraph e[Attributes] direction LR f(first_name) h(phone) i(fav_food) end subgraph j[Events] direction LR k(added_to_cart) l(started_class) m(enabled_feature) end subgraph n[Relationships] direction LR o(Employee of Company X) p(Taking online class Y) q(Test group for feature Z) end style b fill: #FFEDF0 style j fill: #E6FAF3 style n fill: #E5FBFE

Before you add profiles, think about how you want to group them

You’ll use attributes and event data to group profiles into segments, determining who goes through your automations 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:

  1. Add a test profile manually.
  2. Upload a CSV of profiles.
  3. Integrate with Customer.io. This lets you identify 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 segments perform.

  1. Go to the Profiles page, click Add Profiles and select Add a Profile.
  2. Set your ID and email address (and phone if your workspace identifies profiles by phone number). To make it easy, you might assign your test user an ID of 1.
  3. Add attributes to your profile, like first_name and last_name. These are the values you’ll use to target yourself and personalize messages!
  4. Click Save Changes when you’re done.
add yourself in Customer.io

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.

Set up integrations to add profiles and their events to your workspace

Identify profiles via integrations

The way that you add profiles to Customer.io depends on how you integrate with us:

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 attributes (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
});
Updated August 20, 2026