Campaigns, broadcasts, and transactional messages

We support a range of campaigns, broadcasts, and transactional messages to help you automate interactions with your audience at the right time.

If you’re just getting started, checkout Start sending campaigns and workflows for a high-level overview.

Campaigns

Campaigns offer the most robust options for messaging automation. They offer the most flexible and specific options for triggering a campaign as well as the ability to automate messages over time, as opposed to sending messages all at once.

Your campaign trigger determines who enters your campaign and when. Most triggers are based around people, like when they match certain criteria. Typically, these people are the subject of your campaign—you’ll send them messages, set their attributes, and so on.

The campaign trigger has a left hand column with a list of trigger categories including All Triggers, People, Object Types indicated by their names, Dates, and Webhooks. All Triggers is selected and shows a list of People triggers: segment change, event, and form submission.
The campaign trigger has a left hand column with a list of trigger categories including All Triggers, People, Object Types indicated by their names, Dates, and Webhooks. All Triggers is selected and shows a list of People triggers: segment change, event, and form submission.

Trigger options

You have seven types of triggers to choose from:

Segment change

Segment change lets you create a segmentA segment is a group of people in your audience that you want to target with campaigns, messages, etc. You can join groups of people manually, or by attribues and event data. or specify existing segments that people must be in (or not in) to trigger a campaign. You can set segment criteria based on your audience’s attributes, events, etc. This option is best for things like recurring NPS surveys, onboarding drip campaigns, inactivity reminders, and so on.

Event

An eventSomething that a person in your workspace did. Events can trigger campaigns, add people to segments, etc. You can access event properties in liquid with {{event.<property>}}-triggered campaign helps you respond to a person’s activity in your app or website. For instance, you could trigger a campaign based on a user abandoning their cart, viewing a specific page on your app, or completing an order.

Form submission

Form submission lets you take advantage of formConnected Forms in Customer.io allow you to automatically trigger campaigns, send data to other services, and add or update people when they submit forms on your website or in your app. responses to trigger campaigns. You can connect a form to your workspace or integrate with Facebook Lead Ads. Use this type of campaign to send messages to nurture new leads or respond to support requests.

Object updated

Use Object updated when you want people to enter the campaign every time an objectNot to be confused with a JSON object, an object in Customer.io is a non-person entity that you can associate with one or more people—like a company, account, or online course. You can use objects to message people based on changes to their company, account, or course itinerary. is updated in your workspace. For instance, if you were tracking accounts as objects and updated the name of one, you could notify everyone that managed the account that the account went through a rebrand. Keep in mind, only people enter into journeys, not objects.

You’ll see this as “Object_type_name updated” in your trigger list.

The object type Companies, one of the object types in the workspace, is selected. There are three trigger options: Company updated, Person added, and Relationship changed.
The object type Companies, one of the object types in the workspace, is selected. There are three trigger options: Company updated, Person added, and Relationship changed.

When you use objects to trigger campaigns, you can choose who enters into the campaign. The audience could be:

  • every person in the object
  • certain people related to the object
Relationship added or changed

A relationship is the association between an objectNot to be confused with a JSON object, an object in Customer.io is a non-person entity that you can associate with one or more people—like a company, account, or online course. You can use objects to message people based on changes to their company, account, or course itinerary. and a person. Use this trigger type when you want people to enter a campaign after their relationship to an object has changed. For instance, if you track accounts as objects, this could mean they joined an account (person added), or they are now a manager (relationship changed).

You’ll see this as “Person added” or “Relationship changed” in your trigger list.

The new campaign trigger selection page where Companies, one of the object types in the workspace, is selected. There are three trigger options: Company updated, Person added, and Relationship changed.
The new campaign trigger selection page where Companies, one of the object types in the workspace, is selected. There are three trigger options: Company updated, Person added, and Relationship changed.

When you use relationships to trigger campaigns, you can choose who enters into the campaign. That is, the recipient of the message in this kind of campaign doesn’t have to be the person in the relationship that triggered it. The audience could be:

  • the person whose relationship to the object is updated (default)
  • every person in the object
  • certain people related to the object
Important date

An important date triggers campaigns on a specific or relative date based on an attributeA 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. Attributes are analogous to traits in Data Pipelines. that people in your audience have. You can trigger based on any customer attributes that are properly formatted dates. This is useful for recurring campaigns like birthdays, anniversaries, subscription renewals, and payment reminders.

Webhook

A webhook triggers a campaign based on data from an external service. The purpose of your campaign is to manipulate this data and associate it with people, much like you can with Zapier or Segment, but entirely within a campaign. Because data, not people, is the subject of your campaign, webhook-triggered campaigns don’t typically send messages directly; rather, they let you associate data with people, which can trigger subsequent campaigns.

Webhook campaigns help you perform one-to-many interactions with your audience, like notifying a group of people when you post a job or a product becomes available that a cohort of your audience is interested in.

Here are some examples of campaigns:

Broadcasts

Newsletters

Newsletters in Customer.io are a form of broadcast; a one-time send of a single message. You might send one for a special feature announcement for your power users or a simple Terms of Service update.

Broadcasts is selected in the left hand navigation. The image is from the first step of broadcast creation where you select the type of broadcast to make. The option Newsletter is selected. The name of the newsletter is ToS Updated Announcement.
Broadcasts is selected in the left hand navigation. The image is from the first step of broadcast creation where you select the type of broadcast to make. The option Newsletter is selected. The name of the newsletter is ToS Updated Announcement.

Use newsletters if… you want to send a single email to a particular subset of customers.

API-triggered broadcasts

In an API-triggered broadcast, you craft a workflow to send messages and perform actions like updating users’ attributes, much like a campaign. However, the entire workflow happens once you trigger it, whereas in a campaign, you can modify the timeline with delays.

With an API-triggered broadcast, you control when the broadcast is sent; you can trigger it manually in the UI or through our API. You might send one to announce a new product, share a new coupon, or encourage users to take action like a buy a ticket before a certain date.

Broadcasts is selected in the left hand navigation. The image is from the first step of broadcast creation where you select the type of broadcast to make. The option Messages triggered by API is selected. The name of the broadcast is New Product Announcement.
Broadcasts is selected in the left hand navigation. The image is from the first step of broadcast creation where you select the type of broadcast to make. The option Messages triggered by API is selected. The name of the broadcast is New Product Announcement.

Use API-triggered broadcasts if… you want to regularly trigger a specific message to many people and take advantage of Customer.io’s different message types.

Transactional messages

Transactional messages are one-to-one interactions with your audience, where the “trigger” represents an individual audience action in your app like a password reset request. Because your audience does something to trigger a transactional response, you can send transactional emails to unsubscribed customers, too.

Transactional is selected in the left hand navigation. The image is from the first step of creating a transactional message. The name is Password Reset Request.
Transactional is selected in the left hand navigation. The image is from the first step of creating a transactional message. The name is Password Reset Request.

Use transactional messages if… you need to respond directly to customer interactions with your app or service, like password reset info, receipts, shipping notifications, etc.

Copied to clipboard!
  Contents
Is this page helpful?