Developers
Client SDKs
AMP

AMP SDK

Android

Initialization

Configuration

Network Security Configuration

Event Tracking

User Attributes

IDSync

Screen Events

Commerce Events

Location Tracking

Media

Kits

Application State and Session Management

Data Privacy Controls

Error Tracking

Opt Out

Push Notifications

WebView Integration

Logger

Preventing Blocked HTTP Traffic with CNAME

Workspace Switching

Linting Data Plans

Troubleshooting the Android SDK

API Reference

Upgrade to Version 5

Cordova

Cordova Plugin

Identity

Flutter

Getting Started

Usage

API Reference

Direct Url Routing

Direct URL Routing FAQ

Web

Android

iOS

iOS

Workspace Switching

Initialization

Configuration

Event Tracking

User Attributes

IDSync

Screen Tracking

Commerce Events

Location Tracking

Media

Kits

Application State and Session Management

Data Privacy Controls

Error Tracking

Opt Out

Push Notifications

Webview Integration

Upload Frequency

App Extensions

Preventing Blocked HTTP Traffic with CNAME

Linting Data Plans

Troubleshooting iOS SDK

Social Networks

iOS 14 Guide

iOS 15 FAQ

iOS 16 FAQ

iOS 17 FAQ

iOS 18 FAQ

API Reference

Upgrade to Version 7

React Native

Getting Started

Identity

Roku

Getting Started

Identity

Media

Unity

Upload Frequency

Getting Started

Opt Out

Initialize the SDK

Event Tracking

Commerce Tracking

Error Tracking

Screen Tracking

Identity

Location Tracking

Session Management

Xbox

Getting Started

Identity

Xamarin

Getting Started

Identity

Web

Initialization

Configuration

Content Security Policy

Event Tracking

User Attributes

IDSync

Page View Tracking

Commerce Events

Location Tracking

Media

Kits

Application State and Session Management

Data Privacy Controls

Error Tracking

Opt Out

Custom Logger

Persistence

Native Web Views

Self-Hosting

Multiple Instances

Web SDK via Google Tag Manager

Preventing Blocked HTTP Traffic with CNAME

Facebook Instant Articles

Troubleshooting the Web SDK

Browser Compatibility

Linting Data Plans

API Reference

Upgrade to Version 2 of the SDK

Alexa

API References
Data Subject Request API

Data Subject Request API Version 1 and 2

Data Subject Request API Version 3

Platform API

Key Management

Platform API Overview

Accounts

Apps

Audiences

Calculated Attributes

Data Points

Feeds

Field Transformations

Services

Users

Workspaces

Warehouse Sync API

Warehouse Sync API Overview

Warehouse Sync API Tutorial

Warehouse Sync API Reference

Data Mapping

Warehouse Sync SQL Reference

Warehouse Sync Troubleshooting Guide

ComposeID

Warehouse Sync API v2 Migration

Calculated Attributes Seeding API

Bulk Profile Deletion API Reference

Data Planning API

Group Identity API Reference

Custom Access Roles API

Pixel Service

Profile API

Audit Logs API

Events API

mParticle JSON Schema Reference

IDSync

Quickstart
HTTP Quick Start

Step 1. Create an input

Step 2. Create an output

Step 3. Verify output

Android

Overview

Step 1. Create an input

Step 2. Verify your input

Step 3. Set up your output

Step 4. Create a connection

Step 5. Verify your connection

Step 6. Track events

Step 7. Track user data

Step 8. Create a data plan

Step 9. Test your local app

iOS Quick Start

Overview

Step 1. Create an input

Step 2. Verify your input

Step 3. Set up your output

Step 4. Create a connection

Step 5. Verify your connection

Step 6. Track events

Step 7. Track user data

Step 8. Create a data plan

Java Quick Start

Step 1. Create an input

Step 2. Create an output

Step 3. Verify output

Python Quick Start

Step 1. Create an input

Step 2. Create an output

Step 3. Verify output

Node Quick Start

Step 1. Create an input

Step 2. Create an output

Step 3. Verify output

Web

Overview

Step 1. Create an input

Step 2. Verify your input

Step 3. Set up your output

Step 4. Create a connection

Step 5. Verify your connection

Step 6. Track events

Step 7. Track user data

Step 8. Create a data plan

Media SDKs

Android

iOS

Web

Server SDKs

Node SDK

Go SDK

Python SDK

Ruby SDK

Java SDK

Tools

Linting Tools

mParticle Command Line Interface

Smartype

Guides
Partners

Introduction

Outbound Integrations

Outbound Integrations

Firehose Java SDK

Inbound Integrations

Kit Integrations

Overview

Android Kit Integration

JavaScript Kit Integration

iOS Kit Integration

Compose ID

Glossary

Migrate from Segment to mParticle

Migrate from Segment to mParticle

Migrate from Segment to Client-side mParticle

Migrate from Segment to Server-side mParticle

Segment-to-mParticle Migration Reference

Data Hosting Locations

Rules Developer Guide

API Credential Management

The Developer's Guided Journey to mParticle

Guides
Composable Audiences

Composable Audiences Overview

User Guide

User Guide Overview

Warehouse Setup

Warehouse Setup Overview

Connections

Connections Overview

Google BigQuery

Databricks

Amazon Redshift

Snowflake

Data Models

Data Models Overview

Create a User Data Model

Create an Event Data Model

Create a Generic Data Model

Audience Setup

Frequently Asked Questions

Customer 360

Overview

User Profiles

Overview

User Profiles

Group Identity

Overview

Create and Manage Group Definitions

Calculated Attributes

Calculated Attributes Overview

Using Calculated Attributes

Create with AI Assistance

Calculated Attributes Reference

Predictions

Predictions Overview

View and Manage Predictions

Predict Future Behavior

Future Behavior Predictions Overview

Create Future Behavior Prediction

Manage Future Behavior Predictions

Create an Audience with Future Behavior Predictions

Next Best Action

Next Best Actions Overview

Create a Next Best Action

Manage Next Best Actions

Create an Audience with Next Best Actions

Getting Started

Create an Input

Start capturing data

Connect an Event Output

Create an Audience

Connect an Audience Output

Transform and Enhance Your Data

Platform Guide
Billing

Usage and Billing Report

The New mParticle Experience

The new mParticle Experience

The Overview Map

Observability

Observability Overview

Observability User Guide

Observability Troubleshooting Examples

Observability Span Glossary

Platform Settings

Audit Logs

Key Management

Platform Configuration

Event Match Quality Dashboard (Early Access)

Event Forwarding

Notifications

System Alerts

Trends

Introduction

Data Retention

Data Catalog

Connections

Activity

Data Plans

Live Stream

Filters

Rules

Blocked Data Backfill Guide

Tiered Events

mParticle Users and Roles

Analytics Free Trial

Troubleshooting mParticle

Usage metering for value-based pricing (VBP)

IDSync

IDSync Overview

Use Cases for IDSync

Components of IDSync

Store and Organize User Data

Identify Users

Default IDSync Configuration

Profile Conversion Strategy

Profile Link Strategy

Profile Isolation Strategy

Best Match Strategy

Aliasing

Segmentation
Audiences

Audiences Overview

Create an Audience

Connect an Audience

Manage Audiences

Audience Sharing

Match Boost

FAQ

Classic Audiences

Standard Audiences (Legacy)

Predictive Audiences

Predictive Audiences Overview

Using Predictive Audiences

New vs. Classic Experience Comparison

Analytics

Introduction

Core Analytics (Beta)

Setup

Sync and Activate Analytics User Segments in mParticle

User Segment Activation

Welcome Page Announcements

Settings

Project Settings

Roles and Teammates

Organization Settings

Global Project Filters

Portfolio Analytics

Analytics Data Manager

Analytics Data Manager Overview

Events

Event Properties

User Properties

Revenue Mapping

Export Data

UTM Guide

Analyses

Analyses Introduction

Segmentation: Basics

Getting Started

Visualization Options

For Clauses

Date Range and Time Settings

Calculator

Numerical Settings

Segmentation: Advanced

Assisted Analysis

Properties Explorer

Frequency in Segmentation

Trends in Segmentation

Did [not] Perform Clauses

Cumulative vs. Non-Cumulative Analysis in Segmentation

Total Count of vs. Users Who Performed

Save Your Segmentation Analysis

Export Results in Segmentation

Explore Users from Segmentation

Funnels: Basics

Getting Started with Funnels

Group By Settings

Conversion Window

Tracking Properties

Date Range and Time Settings

Visualization Options

Interpreting a Funnel Analysis

Funnels: Advanced

Group By

Filters

Conversion over Time

Conversion Order

Trends

Funnel Direction

Multi-path Funnels

Analyze as Cohort from Funnel

Save a Funnel Analysis

Explore Users from a Funnel

Export Results from a Funnel

Cohorts

Getting Started with Cohorts

Analysis Modes

Save a Cohort Analysis

Export Results

Explore Users

Saved Analyses

Manage Analyses in Dashboards

Journeys

Getting Started

Event Menu

Visualization

Ending Event

Save a Journey Analysis

Users

Getting Started

User Activity Timelines

Time Settings

Export Results

Save A User Analysis

Query Builder

Data Dictionary

Query Builder Overview

Modify Filters With And/Or Clauses

Query-time Sampling

Query Notes

Filter Where Clauses

Event vs. User Properties

Group By Clauses

Annotations

Cross-tool Compatibility

Apply All for Filter Where Clauses

Date Range and Time Settings Overview

User Attributes at Event Time

Understanding the Screen View Event

User Aliasing

Dashboards

Dashboards––Getting Started

Manage Dashboards

Dashboard Filters

Organize Dashboards

Scheduled Reports

Favorites

Time and Interval Settings in Dashboards

Query Notes in Dashboards

Analytics Resources

The Demo Environment

Keyboard Shortcuts

User Segments

Tutorials

Analytics for Marketers

Analytics for Product Managers

Compare Conversion Across Acquisition Sources

Analyze Product Feature Usage

Identify Points of User Friction

Time-based Subscription Analysis

Dashboard Tips and Tricks

Understand Product Stickiness

Optimize User Flow with A/B Testing

APIs

User Segments Export API

Dashboard Filter API

Warehouse Sync

Warehouse Sync User Guide

Historical Data and Warehouse Sync

Data Privacy Controls

Data Subject Requests

Default Service Limits

Feeds

Cross-Account Audience Sharing

Import Data with CSV Files

Import Data with CSV Files

CSV File Reference

Glossary

Video Index

Analytics (Deprecated)
Identity Providers

Single Sign-On (SSO)

Setup Examples

Settings

Debug Console

Data Warehouse Delay Alerting

Introduction

Developer Docs

Introduction

Integrations

Introduction

Rudderstack

Google Tag Manager

Segment

Data Warehouses and Data Lakes

Advanced Data Warehouse Settings

AWS Kinesis (Snowplow)

AWS Redshift (Define Your Own Schema)

AWS S3 Integration (Define Your Own Schema)

AWS S3 (Snowplow Schema)

BigQuery (Snowplow Schema)

BigQuery Firebase Schema

BigQuery (Define Your Own Schema)

GCP BigQuery Export

Snowflake (Snowplow Schema)

Snowplow Schema Overview

Snowflake (Define Your Own Schema)

APIs

Dashboard Filter API (Deprecated)

REST API

User Segments Export API (Deprecated)

SDKs

SDKs Introduction

React Native

iOS

Android

Java

JavaScript

Python

Object API

Developer Basics

Aliasing

Integrations
ABTasty

Audience

24i

Event

Aarki

Audience

Actable

Feed

AdChemix

Event

Adikteev

Audience

Event

Adjust

Event

Feed

Adobe Marketing Cloud

Cookie Sync

Server-to-Server Events

Platform SDK Events

Adobe Audience Manager

Audience

Adobe Campaign Manager

Audience

AdMedia

Audience

Adobe Experience Platform

Event

Adobe Target

Audience

AdPredictive

Feed

AgilOne

Event

Airship

Audience

Feed

Event

Algolia

Event

Amazon Kinesis

Event

Amazon Advertising

Audience

Amazon Kinesis Firehose

Audience

Event

Amazon S3

Event

Amazon Redshift

Data Warehouse

Amazon SNS

Event

Amazon SQS

Event

Amobee

Audience

Amplitude

Forwarding Data Subject Requests

Event

Ampush

Audience

Event

Analytics

Audience

Event

Forwarding Data Subject Requests

Anodot

Event

Antavo

Feed

AppLovin

Event

Audience

Apptentive

Event

AppsFlyer

Feed

Forwarding Data Subject Requests

Event

Apptimize

Event

Awin

Event

Apteligent

Event

Batch

Audience

Event

Microsoft Azure Blob Storage

Event

Bing Ads

Event

Bidease

Audience

Bluecore

Event

Bluedot

Feed

Blueshift

Event

Forwarding Data Subject Requests

Feed

Branch

Feed

Forwarding Data Subject Requests

Event

Branch S2S Event

Event

Button

Event

Audience

Bugsnag

Event

Census

Feed

Cadent

Audience

CleverTap

Audience

Event

Feed

comScore

Event

Conversant

Event

Cordial

Feed

Audience

Cortex

Event

Feed

Forwarding Data Subject Requests

Criteo

Audience

Event

Custom Feed

Custom Feed

Crossing Minds

Event

CustomerGlu

Feed

Event

Customer.io

Event

Audience

Feed

Databricks

Data Warehouse

Datadog

Event

Didomi

Event

Dynamic Yield

Audience

Event

Eagle Eye

Audience

Emarsys

Audience

Edge226

Audience

Epsilon

Event

Everflow

Audience

Facebook

Audience

Event

Facebook Offline Conversions

Event

Flurry

Event

Google Analytics for Firebase

Event

Flybits

Event

Foursquare

Audience

Feed

FreeWheel Data Suite

Audience

ForeSee

Event

Friendbuy

Event

Google Ad Manager

Audience

Google Ads

Audience

Event

Google Analytics

Event

Google Analytics 4

Event

Google BigQuery

Audience

Data Warehouse

Google Cloud Storage

Audience

Event

Google Enhanced Conversions

Event

Google Marketing Platform

Audience

Cookie Sync

Event

Google Pub/Sub

Event

Google Marketing Platform Offline Conversions

Event

Google Tag Manager

Event

Herow

Feed

Hightouch

Feed

Ibotta

Event

ID5

Kit

Heap

Event

Hyperlocology

Event

Impact

Event

InMarket

Audience

InMobi

Audience

Event

Inspectlet

Event

Intercom

Event

Insider

Audience

Event

Feed

ironSource

Audience

iPost

Audience

Feed

Iterable

Audience

Event

Feed

Jampp

Audience

Event

Kafka

Event

Kayzen

Audience

Event

Kissmetrics

Event

Klaviyo

Event

Audience

Kochava

Event

Feed

Forwarding Data Subject Requests

LaunchDarkly

Feed

Kubit

Event

Leanplum

Event

Audience

Feed

LifeStreet

Audience

Liftoff

Audience

Event

LinkedIn

LinkedIn Conversions API Integration

LiveLike

Event

Liveramp

Audience

Localytics

Event

mAdme Technologies

Event

MadHive

Audience

Mailchimp

Audience

Event

Feed

Marigold

Audience

Mautic

Event

Audience

Microsoft Azure Event Hubs

Event

Mediasmart

Audience

Microsoft Ads

Microsoft Ads Audience Integration

MediaMath

Audience

Mintegral

Audience

Mixpanel

Audience

Event

Forwarding Data Subject Requests

MoEngage

Audience

Event

Feed

Moloco

Audience

Event

Monetate

Event

Movable Ink

Event

Movable Ink - V2

Event

Attentive

Event

Feed

Multiplied

Event

Narrative

Audience

Event

Feed

myTarget

Event

Audience

Nami ML

Feed

Nanigans

Event

NCR Aloha

Event

OneTrust

Event

Optimizely

Audience

Event

Neura

Event

Oracle Responsys

Audience

Event

Oracle BlueKai

Event

Paytronix

Feed

Personify XP

Event

Persona.ly

Audience

PieEye

Inbound Data Subject Requests

Pilgrim

Event

Feed

Pinterest

Audience

Event

Plarin

Event

Postie

Event

Audience

Primer

Event

Punchh

Event

Audience

Feed

Pushwoosh

Audience

Event

Quantcast

Event

Qualtrics

Event

Radar

Event

Feed

Rakuten

Event

Regal

Event

Retina AI

Event

Feed

Reveal Mobile

Event

Rokt

Audience

Rokt Thanks and Pay+

Event

RevenueCat

Feed

RTB House

Audience

Event

Sailthru

Audience

Event

Salesforce Email

Audience

Event

Feed

Salesforce Mobile Push

Event

Salesforce Sales and Service Cloud

Event

Feed

Samba TV

Event

Audience

Scalarr

Event

SendGrid

Audience

Feed

SessionM

Event

Feed

ShareThis

Feed

Audience

SimpleReach

Event

Shopify

Custom Pixel

Feed

Singular

Event

Feed

Singular-DEPRECATED

Event

Skyhook

Event

Smadex

Audience

SmarterHQ

Event

Snapchat

Audience

Event

Slack

Event

Snapchat Conversions

Event

Snowflake

Data Warehouse

Snowplow

Event

Splunk MINT

Event

Split

Event

Feed

Sprig

Audience

Event

StartApp

Audience

Statsig

Event

Feed

Stormly

Audience

Event

Talon.One

Event

Audience

Feed

Loyalty Feed

Swrve

Event

Feed

Tapad

Audience

Tapjoy

Audience

Taptica

Audience

Taplytics

Event

The Trade Desk

Cookie Sync

Audience

Event

Teak

Audience

Ticketure

Feed

Triton Digital

Audience

Treasure Data

Audience

Event

TikTok Event

Audience

Audience Migration

Audience (Deprecated)

Event

TUNE

Event

Twitter

Audience

Event

Valid

Event

Vkontakte

Audience

Voucherify

Audience

Event

Vungle

Audience

Webhook

Event

Webtrends

Event

Wootric

Event

Yotpo

Feed

White Label Loyalty

Event

Xandr

Cookie Sync

Audience

YouAppi

Audience

Yahoo (formerly Verizon Media)

Audience

Cookie Sync

Z2A Digital

Event

Audience

Zendesk

Feed

Event

Reddit

Audience

Event

Remerge

Event

Audience

Braze

Forwarding Data Subject Requests

Feed

Audience

Event

Composable Audiences Overview

Composable Audiences is mParticle’s zero-copy solution for segmentation. With Composable Audiences, you can create dynamic user segments using data stored directly in your cloud data warehouse. This approach lets you take advantage of rich, custom attributes and events that already live in your own systems, without needing to copy data into mParticle. By querying your warehouse directly, audiences are always built on the most up-to-date and complete picture of your users.

When to use Composable Audiences

Composable Audiences are the right choice when you care about a customer’s accumulated history, attributes, or modeled data—things that live in your warehouse. These audiences are ideal for planned, lifecycle-driven campaigns where hours or days of latency are acceptable. For example:

  • High-value or loyal customers: Segment users with a lifetime value above $1,000 and more than 5 purchases in the past 12 months.
  • Dormant customers: Identify users who haven’t made a purchase in 300+ days but are still opted into marketing emails.
  • At-risk subscribers: Target users with a churn risk score greater than 0.7, calculated by your data science team.

Because these audiences run on a scheduled basis against your warehouse, they are well-suited for strategic campaigns like loyalty promotions, cross-sell recommendations, or reactivation offers.

When to use Real-Time Audiences

Real-time audiences are best for reactive, intent-driven triggers where seconds or minutes matter. These audiences use streaming data ingested directly into mParticle and update in real time. For example:

  • Cart abandonment: Reach out within 60 minutes of a user abandoning their cart.
  • Flight delay notifications: Send travel alerts when an itinerary changes.
  • Streaming engagement: Promote more content immediately after a subscriber finishes a show.

If the value of your engagement depends on acting while intent is fresh, real-time audiences are the right fit. See the Audiences Overview to get started with Real-Time Audiences.

Setting up Composable Audiences

Before you can start building audiences, there are two parts to the setup process:

  1. Warehouse setup: This step is typically done by a data engineer or database administrator. It includes:

    • Connecting mParticle to your cloud data warehouse (Snowflake, BigQuery, Redshift, or Databricks).
    • Creating data models that define which warehouse tables and fields will be available in the Audience Builder.
  2. Audience setup: Once the connection and models are in place, a marketer or analyst can:

    • Use the Audience Builder to define membership criteria based on the data models.
    • Connect the audience to downstream platforms like Google Ads, Facebook, or TikTok.

Together, these steps give you a zero-copy way to create audiences: your data stays in your warehouse, while mParticle queries it securely on your schedule to keep audience membership up to date.

To get started, go to the User Guide.

Hybrid Audiences

Hybrid Audiences allows you to include composable audience membership as a criteria when building a real-time audience. This is helpful when you have long-term customer data stored in your cloud warehouse, like account information, LTV, or churn risk, that you want to reference from a real-time audience built on in-the-moment behavioral data such as product views and cart activity. Hybrid audiences also enable you to optionally persist composable audience membership on user profiles in mParticle as well as optionally enrich outbound composable audience data with user profile data from mParticle.

To create a hybrid audience, you first create a user data model and configure it for hybrid usage. Then, a marketer can build a composable audience and enable it for hybrid usage so that mParticle records composable audience membership on user profiles stored in mParticle. You can then create a real-time audience that includes/excludes these users in the composable audience via the Audience Membership criterion in the Audience Builder. By including a composable audience membership criterion in your real-time audiences, you can combine rich warehouse data with in-the-moment activity in a single audience that powers more precise personalization, triggering, and suppression.

When to use Hybrid Audiences

Hybrid Audiences combines composable and real-time audiences so you can use long-term customer context stored in your warehouse with in-the-moment user behavior captured in mParticle in the same audience. Hybrid Audiences are most helpful when you want to:

  • Target or reward high value customers in real time. For example, you can build a composable audience of high LTV or VIP customers as defined in your warehouse, then create a real-time audience that includes only those customers who are actively browsing, viewing key products, or adding items to their cart to be eligible for special offers or experiences.
  • Engage at-risk customers based on live activity. For example, you can define a composable audience of customers with a high churn risk score as was calculated by your data science team and stored in your warehouse, then only trigger win-back campaigns through a hybrid audience when those customers return to your app, log in, or show renewed interest in pricing or plan pages.
  • Control eligibility and suppression with account context plus behavior. For example, you can determine eligibility or suppression rules in your warehouse based on account status, plan, or loyalty tier, then create a real-time audience to only target eligible users who are actively engaged in the current session to receive specific messages, campaigns, or feature prompts.

Example hybrid audience: targeting high value customers who are actively browsing

For example, imagine that you want to reach customers who are both valuable over the long term (high LTV) and currently showing strong purchase intent. You could accomplish this with a hybrid audience built from:

  • A composable audience built from cloud warehouse data that identifies high value shoppers based on metrics like predicted LTV or total spend.
  • An in-platform, real-time audience that looks for in-session behavior, such as viewing a product detail page or adding an item to cart in the last 30 minutes.

How you would set this up

Step 1. Create the composable audience for high value shoppers

First, you must create a composable audience that can retrieve the user data needed from your warehouse.

  1. Make sure your warehouse connection and data models are set up so you can query LTV and purchase history directly from your cloud data warehouse.
  2. When you create the user data model that powers this audience, make sure to map your warehouse identifiers to your in-platform identifiers and confirm your identity settings. This makes the data model eligible for use in a hybrid audience, but the person creating the audience will also have to specify that they want their audience to be hybrid.
  3. Create a new Composable Audience and add criteria, such as “High value shoppers (top 20% LTV)” that selects users whose predicted LTV or lifetime spend is above your chosen threshold. Check the box that says “Enable for Hybrid Audiences” to mark this audience as available for hybrid use cases.
Step 2. Create the real-time audience that references your LTV composable audience

Second, you create the real-time audience that will include members of your composable audience. This real-time audience is the “hybrid” audience.

  1. Create a new in-platform real-time audience, for example “High value active browsers”.
  2. Add behavioral criteria to capture in-session intent, such as users who have viewed a product detail page or added an item to cart within the last 30 minutes.
  3. Add an Audience Membership criterion and select your composable audience “High value shoppers (top 20% LTV)” such that only users who are already in that audience can qualify.

Hybrid audiences are activated just like any other audience in mParticle. You connect them to your downstream destinations and use them for personalization, triggering, or suppression alongside your existing segments.

How is data from your warehouse processed?

When a composable audience initializes, mParticle translates your audience definition (the criteria that determine which users should be included in the audience) into a SQL query. This query is then executed directly within your data warehouse using your warehouse’s compute resources.

The SQL query returns a list of users and (optional) attributes that make up the audience at that particular point in time. This data is stored in a temporary table in your data warehouse that is provisioned for internal processing only. These datasets are not part of your production tables and are only used by mParticle to track audience membership over time. These additional datasets are automatically managed and cleaned up by mParticle.

mParticle pulls the users and any optional attribute data from your warehouse before forwarding them to your connected downstream integration.

When you create a composable audience, you specify the cadence at which it refreshes. Note that composable audiences can’t be refreshed in real-time.

Composable Audiences operates independently of mParticle’s identity resolution framework (IDSync). No user profile enrichment or merging takes place. Audience membership is based solely on the logic provided in the SQL query and the structure of the source data. This makes the feature highly transparent and deterministic, giving you full control over how your audiences are built and updated. It also means that the records in your data warehouse must include some form of user identifier (like a user ID or customer ID) that can be used when determining audience membership.

What data is stored in mParticle?

mParticle only stores the data needed to create and activate composable and hybrid audiences, including:

  • Information needed to connect with, and authenticate to, your warehouse provider.
  • Metadata about your warehouse database and tables, such as column names.
  • If explicitly enabled, mParticle caches up to 1000 of the most frequent values from each column in your table for up to 7 days to power the autocomplete feature within the Audience Builder. You must enable autocomplete for each column included in your data model.
  • If you create a composable audience and mark it as enabled for Hybrid use cases, mParticle stores audience membership on user profiles so that membership is visible in Customer 360, the User Activity View, via the Profile API, and in real-time audience criteria.

No other warehouse data is stored in mParticle beyond these items.

How are your user profiles modified?

By default, composable audiences do not modify user profiles in mParticle. Audience membership is calculated in your warehouse and forwarded to outputs without changing identities, profiles, attributes, or events in mParticle.

When you create a composable audience, mParticle will write audience membership to user profiles if the creator of the audience also marks their audience as “Enabled for Hybrid” during creation. This makes it possible to:

  • View composable audience membership in Customer 360 , the User Activity View, and Profile API.
  • Reference that membership from Real-Time Audiences via audience membership criteria.
  • Enrich outbound Composable Audience data with additional data from user profiles in the CDP if a match can be found

Hybrid audiences do not write warehouse attributes, events, or identity changes back into user profiles in mParticle. Only audience membership state is reflected on the profile.

How are composable audiences refreshed?

To improve performance, mParticle only tracks changes in audience membership (specifically, the users who have been added to or removed from the audience) rather than recomputing the full list each time. The first time the audience is executed, the entire set of qualifying users is returned. For subsequent runs, mParticle compares the new audience snapshot with the previous one to determine which users have been added or dropped.

This “diff-ing” logic happens entirely within the data warehouse environment. Two snapshots of the audience (previous and current) are compared using SQL, and only the incremental changes are passed back into mParticle for forwarding to downstream integrations. This approach ensures both scalability and efficiency in audience refresh cycles.

Are composable audiences compatible with Real-Time mParticle Audiences?

Yes. Hybrid, composable, and real-time audiences can work together.

You create a user data model in your warehouse setup, making sure to map the identifiers from your warehouse to your in-platform identifiers and enabling them for use when matching users in your warehouse to in-platform profiles on the Identity Settings page of your user data model settings. You build a composable audience on top of that model and choose to make it enabled for hybrid use cases so that membership is written back to user profiles. You create a real-time audience that uses audience membership criteria to reference that composable audience.

This pattern lets you combine warehouse-modeled logic with in-session behavior without copying warehouse data into mParticle or rebuilding the same logic twice. Composable audiences still run on a scheduled cadence in your warehouse, and real-time audiences continue to update in real time.

Was this page helpful?

    Last Updated: December 16, 2025