← Back to home

Audience Activation

The new audience activation flow: enriching an audience event with traits next to a raw event preview.

Overview

I designed a unified audience activation design pattern for two Segment audiences, classic and linked, so users could send an audience to downstream tools in one guided setup.

My team

1 PM, 1 PD, 2 ENG

Oct 2023 – Mar 2024

Context

Segment is a customer data platform (CDP) that helps businesses collect, unify and activate their data to power personalized experiences.

An audience is a group of profiles that share certain behaviors or traits. After building an audience in Segment, users sync it to their connected destinations. The most popular ones are multi-channel marketing apps.

The current experience

Done, or not done?

Most customers turned on their audience in Engage settings and thought they were done. They didn't know the rest of the activation setup lived on a different page. The disjointed UI didn't match users' expectations and contributed to ~20% of audience-related support tickets.

Audience settings in Engage
Legacy Braze destination settings in Engage, with Send Identify and Send Track toggles.
Activation flow in Connections
Legacy mapping page in Connections: select events, add a test event, and map fields to the destination.

The problem

The UX gap was introduced by the launch of a new generation of destinations ("Action destinations") and was never closed. The customer pain showed up in support tickets and in sales.

  • ~20% of audience support tickets were related to confusion with activation.
  • 42 product gaps filed were related to audience activation, with $34M in associated ARR.

On the other hand, Segment was building a new type of audience ("linked audience") that needed to activate with Action destinations too.

Our goal was to design a unified audience activation pattern that works for both classic and linked audiences.

Timeline and my role

I was the sole designer on the Classic audience team, working closely with the designer on the Linked audience team.

Design

  • Created user flows and wireframes
  • Built prototypes for research
  • Delivered high-fidelity mockups
  • Aligned across teams

User research

  • Audited the current UX
  • Ran concept testing
  • Ran usability testing

Development

  • Delivered pixel-perfect, implementable designs
  • Worked through edge cases with engineers

Linked vs. classic audiences

I started off this project by mapping the differences and similarities between classic audiences and linked audiences. The steps were the same: event triggers, enrichment and field mapping. The real difference was in the backend.

Linked audienceClassic audience
Backend architecture1:1 relationship between a linked audience and a mappingMany:1 relationship between classic audiences and a mapping
Event triggersAudience entered and exited, entity added and removedAudience entered and exited
EnrichmentProfile traits, plus entity data from the warehouseProfile traits only
Field mappingRequired. Some destinations have presets that skip mapping.Required

North star metric

I led a metrics workshop with my PM to map out the experience of activating an audience, and we instrumented tracking in Mixpanel to establish a baseline.

Reduce time to value, from adding a destination to an audience to audience data flowing, by 25%.

The median time was ~70 hours across all destinations.

Mapping of the audience activation flows, from connecting a destination to configuring Actions, used to plan the tracking.

Target users

Technical marketers who build audiences in Segment and want to activate them in downstream tools for personalized campaigns.

Design concept and testing

My concept was a full-page wizard that guides users through each step of activating their audience in one place. We presented the mocks to a few solutions engineers and the Segment marketing team.

The wizard format was well received by all participants. They felt the new design gave them a more streamlined and intuitive setup, and the steps of enriching the event, selecting an Action and configuring the mapping matched their workflow.

"Creating the mapping in Salesforce mapping settings is a pain. I have to go to mapping settings and configure the event type as identify, the audience key, etc. This flow replaces that, right? The fact that it's inherited is great."

— Principal advisory architect, Twilio

"I think it's straightforward and makes a lot of sense from my side. The redundancy comes in when we have to do the same things a bunch of times. I love it."

— Customer success product technical lead, Twilio

Enrichment and mapping: one step or two?

Option 1: enriching events with traits as its own wizard step, before mapping.

Enrichment and mapping as two steps

We debated whether to make the setup more digestible by breaking it into steps, or to give users full visibility while configuring the event.

Pain point: Track or Identify?

Participants struggled to choose between a Track and an Identify call on the first step. They didn't understand the difference, or what it meant for the downstream tools.

What was presented
The first wizard step as presented: choose between Audience entered and exited (a track event) or Audience membership changed (an identify event).

The Action already knows

Users relied on the name and description of the Action to decide between Track and Identify, because that terminology (for example, "Update user profile" for Braze) matches the terminology in the destination tool. After some digging, we found that most Actions are built with a default trigger that already defines the call type.

Braze Actions: Track Event, Update User Profile and Track Purchase, each with a short description.
Braze documentation: Update User Profile is a cloud Action whose default trigger is type = identify.

Design iteration

  • Removed the Track or Identify call selection as the first step.
  • Used the default trigger of the Action to infer a Track or Identify call.
  • Put event enrichment and mapping on the same page.
After: enrich, select an Action and map events on one page.

Usability testing

Given the major changes to the flow, we ran usability tests with 5 more external customers, and they revealed something surprising.

  • The activation flow was intuitive and easy to follow. Pre-filling the event trigger and call type based on the selected Action matched users' workflow.
  • Previewing events wasn't enough. Sending a test event was a must-have, ideally with the ability to edit the user ID.
  • Technical users loved seeing the raw payload.

The surprise: marketers aren't the ones who activate audiences

We had always assumed Engage was a product for marketers. The interviews showed something different. Audience activation was too technical for most marketers to set up. They usually built the audience and handed it off to a data engineer for activation. Sometimes data engineers set up the first audience-to-destination configuration, and marketers copied and reused it.

The debate: should we build for data engineers, or enable marketers to self-serve?

Marketers are the experts in the downstream tools. Their technical level also varies with the tools they use. Some destinations, like Salesforce Marketing Cloud, need more technical knowledge.

The lack of role-based access control (RBAC) in Segment was a further barrier to marketer self-service.

Now

Meet customers where they are in the product. Because of the technical nature of the flow, design for data engineers and technical marketers.

Long term

Marketers want less dependency on their data team, and the product isn't there yet. We need more foundational research on the marketer persona, RBAC requirements and the gaps in marketer self-service.

Design changes for technical users

Event preview showing the raw payload by default.
Show the raw payload by default in the event preview.
Preview and test panel with an editable user ID and a Send test event to destination button.
Send a test event, with an editable user ID.

Cross-team review

Two pieces of feedback were raised in review:

  1. The Linked audience engineering team wanted the UX for linked and classic audiences unified further. Reusing UI components would greatly reduce engineering time.
  2. The Audience compute engineering team was concerned about removing the "connect destination" step from the audience creation flow.

Address feedback #1

I worked closely with the Linked audience designer on an end-to-end teardown of features and UI components across linked and classic audiences. We weighed bespoke UI against unified components, made the decisions together, and documented where the two products align and differ.

End-to-end teardown in Figma: the linked and classic audience flows laid out side by side.
Shared decision notes comparing linked and classic audiences: entry points, destination categories and event types.
More shared decision notes: configuring events, trait selection and event previews.

Address feedback #2

Situation: I proposed removing the "connect destination" step from the audience creation flow. Audience activation now had its own flow, so keeping the step was redundant and gave users the false impression that their task was complete. The Audience compute team was concerned that, with the current logic, this would increase the cost of computing audiences.

Action: I found out the reasoning behind the concern, brainstormed with engineers on ways to mitigate the risk, and proposed a few options for the team's input.

Result: The team unanimously agreed with the proposal. The result was a unified, streamlined UX with a small backend change to the compute logic and no added risk. The engineering task was committed to the Audience compute team's Q1 backlog.

Proposal doc (blurred): remove the connect destination step from the classic audience creation flow.
Decision table: every reviewer voted for option 5, noting it was low risk and gave a consistent experience.

Design walkthrough

Connect a destination

Adding a destination brings users into the wizard setup flow.

Clicking Add destination on an audience with no destinations, picking Braze in the Connect destination modal and clicking Next, which opens the Select action step.

Select an Action

Users pick the Action. The Track or Identify call options are only presented when the Action doesn't have a default trigger.

Selecting Identify User, which has no default trigger, shows the Track or Identify event type choice. Selecting Update User Profile, which has one, does not.

Configure the event

Enrichment and mapping live on one page, with a raw payload preview and a test event sent to the destination before saving.

Configure event: selecting traits, switching the event preview between raw and pretty, then sending a test event to Braze, which succeeds.

Back on the audience

The new event shows up on the destination, and the audience shows what it syncs to.

Clicking Save and enable returns to the audience with an Event successfully added message. Closing the side sheet shows the destination with one event, enabled.

Pivot after the reduction in force

Linked audiences launched with the new, unified UX pattern. But Segment had new priorities for 2024, and optimizing classic audiences wasn't one of them. Our engineering team was affected by the reduction in force in March, with 50% of the work still left.

How might we still deliver customer value with a smaller team?

A quick win

The goal was a low-risk UX improvement scoped to 2 engineering weeks.

  • Added a Mappings tab to the audience's destination side sheet that points users to configure mappings in Connections.
  • Cleaned up the audience settings side sheet with a clearer information architecture.
Adding a destination to an audience, then clicking Add mapping in the new Matching mappings column, which opens the destination side sheet's Matching mappings tab with a link to add mappings in Connections.

Result and impact

  • Linked audiences launched with the new unified UX. All 18 beta customers onboarded successfully after the March launch and gave positive feedback. Audience activation was a core part of the Linked Audiences launch, which contributed millions of dollars in ARR.
  • The scaled-back solution for classic audiences got a positive reaction from all cross-functional stakeholders. The change is small, but it's a step in the right direction, and the full design is validated and ready whenever classic audiences become a company priority again.

Learnings and reflections

Partnering with a team whose goals conflict

Working with the Linked audience team came with a lot of friction, because the two teams had different goals: faster time to market with a pilot product, versus migrating existing customers without introducing regressions. If I did this again, I would engage the Linked audience team at a later phase, once their focus had shifted to feature parity with classic audiences.

Foundational persona research matters

Segment lacked foundational research on the target persona, and for most of the project we worked under the wrong assumption. We course-corrected quickly, but valuable time was lost.

← Back to all work