Profiles Sync Export
A Profiles Sync export builds a one-row-per-user table from your data warehouse and writes it into a BigQuery table you control. Unlike audience and signal syncs, it does not push to an ad platform — the output is a table your own systems read.
How it works
On each run, BPP:
- Applies your filters to find the users to include. If there are no filters, it includes every user that has data in the tables you're exporting from.
- Reads your keys and attributes for those users from your user-level tables (user tables, AI model results/views, and summary tables).
- Combines everything into one row per user, matching each attribute to the right user — keys first, then attributes, renamed to the destination column names you chose.
- Writes the table into your chosen BigQuery dataset.
- Records the run (rows written, timestamp, status) in Sync History.
Full replacement every run
Each run completely replaces the destination table with the current export. This means:
- The table name is stable — downstream systems always point at the same table and get the latest data.
- Rows removed by a filter change (or users who no longer qualify) disappear from the table on the next run.
- The table is not appended to over time. If you need history, snapshot the table yourself downstream.
What's included
- One row per matched user. A user who matches your filters but is missing a particular attribute still appears in the table — that attribute is simply empty (null) for them.
- Only user-level data. Keys and attributes come from tables with one row per user. Event-table fields cannot be exported. See What can be exported.
- The columns you named. Each key and attribute uses the destination name you set when configuring the sync.
Scheduling
Profiles Syncs run daily by default. The sync must be in Ready status (enabled) for scheduled runs. You can also trigger a run on demand with Run Sync from the sync's detail page.
Empty results
If your filters match no users, there is nothing to export and the run completes successfully without writing rows. This is a normal outcome, not an error — check your filter conditions if you expected data.
Partial syncs
If some rows fail to write while others succeed, the sync moves to Partial Complete status. The rows that wrote successfully remain in the table. Review the status message for the cause.