Home | Resources | Blog

Branch Data Exports: Which One Should You Use?

Rob Gioia

Rob Gioia

PUBLISHED: LAST REVISED:

Branch offers a wide range of data export options, including the Custom Export API, Scheduled Log Exports API, Query API, Aggregate API, Cross-Events Export API, Webhooks, and Data Integrations.

Marketers use them to find and grow high-value audiences, analysts use them to dig into user behavior, and data teams use them to bring Branch data into the rest of their stack.

So which one should you use, and when?

Branch Data Exports 101: When to use each option

Here’s each option at a glance and when it makes sense to use it.

Custom Export API

The Custom Export API lets you export device-level data and select exactly which fields you want. You can also filter the data to only display events that are meaningful to your analysis. This makes this API useful for exporting data from the last seven days. A corresponding UI on the Branch Dashboard means you don’t have to write queries by hand, and the Preconfigured Exports option gives you prebuilt export configurations for most common use cases. Because this data is log-level, Branch hashes personal identifiable information (PII) fields after seven days.

Scheduled Log Exports API

The Scheduled Log Exports API lets you set up a recurring export of select device-level data. You can set the cadence to hourly or daily, depending on how often you want the data, and have Branch send it straight from our servers to your cloud data service, such as an AWS S3 bucket or GCP.

Pro tip: If you’re just getting a feel for querying Branch data, start with the Custom Export API. Once you have a query you like and want to run it on a regular basis, you can use the Scheduled Log Exports API to set up a subscription.

Data Integrations

Data Integrations connect Branch to a wide range of data and analytics partners, including Adobe Analytics, Google Analytics, Segment, Amplitude, Braze, and many more. By enabling these integrations on the Dashboard and/or adding a few snippets of code to your app, Branch can automatically forward events to your chosen analytics platform. If you want to bring events from a third-party source into Branch, you can use our integrations with customer data platforms (CDPs) like Segment and mParticle.

Branch Dashboard Data Integrations tab showing a searchable list of enabled analytics partners, including Adobe Analytics, Airship, AppTweak, and Braze.

Webhooks

Webhooks are useful if you need data from Branch in real time. For example, you might want to trigger an event on your server as soon as Branch processes it. Note that Webhooks do require some custom setup in the Branch Dashboard with Freemarker syntax.

Branch Dashboard Webhooks tab listing active webhooks by event type, such as install, reinstall, open, and commerce event, with each event’s webhook URL.

Query API

The Query API exports select campaign-level data from as far back as two years. You can also use it to pull cost data from self-attributing networks (SANs). Because it returns data in real time, you get results as soon as you run a query. Keep in mind that if you give third parties such as agencies access through this API, you can’t control which data they retrieve.

Aggregate API

The Aggregate API lets limited-access users, like agencies, to programmatically export aggregate data filtered by their access level. It comes in handy when you want to share Facebook campaign performance with third parties such as agencies and ad partners, since the deprecation of Facebook’s Advanced Mobile Measurement (AMM) program prevents log-level data exportation.

Note: An earlier version of the Aggregate API went by the name Cohort API. A simplified version is also available in the Branch Dashboard, but you’ll get the most out of this API by querying it programmatically.

Cross-Events Export API

The Cross-Events Export API is the newest addition to Branch’s data export suite. It lets you export aggregate data from multiple data sources with no limit on dimensions or rows. A single query can pull from multiple datasets, which saves you hours of manual and time-consuming work, while also maintaining data integrity across sources. It also respects user access permission levels, so agencies and other limited-access users can securely access only the data they need.

Daily Export API

Some customers may be familiar with Branch’s Daily Export API. It’s an older API with less flexibility than the options discussed above, and the Custom Export API is a much more sophisticated alternative, but we mention it here for completeness. To export data from a given day, you’ll need to wait until 7:00 pm UTC on the following day. You can also run a daily export from the Branch Dashboard without any coding. One caveat to consider is that all fields for the event will be exported, so you may export columns that aren’t relevant to your reports.

Branch Dashboard Daily Exports tab with Daily Export API and Query API settings, a date range picker, and download options for event types like installs and clicks.

Choosing the right API for the job

To choose the right export API, ask the following questions:

  • Do you need aggregate or log-level data?
  • Does the data go to a dedicated analytics provider or an internal data warehouse?
  • Do you need to give third parties, like agencies, a secure way to export your data?
  • Do you want the data to be exported on a recurring basis?
  • How often do you need the data?
  • How far back in time are you looking to export?
  • How many rows of data do you want to export?

This flowchart will help you determine which Branch data export solution is the best fit for your organization’s needs.

Start by deciding whether you need log-level or aggregate data. Log-level data includes all metadata and user-level data for each event, much like a spreadsheet of raw event data. Aggregate data summarizes events and how many times each one occurred, with breakdowns across a subset of available dimensions. Think of it as that same raw spreadsheet turned into a pivot table.

Aggregate data

The right side of the diagram covers scenarios where aggregate data makes more sense.

Flowchart for aggregate data. If third parties don’t need export access, use the Query API. If they do, use the Cross-Events Export API for large volumes across multiple sources, or the Aggregate API otherwise.

First, consider whether agencies or other third parties need to export your data within the limits of their user permissions. If they do and you need to pull large volumes of data from multiple sources, use the Cross-Events Export API. If not, use the Aggregate API. If you want real-time data, or data that matches exactly what you see in the Branch Dashboard, choose the Query API.

Log-level data

Exporting log-level data involves a few more decisions. Start by asking whether you use a dedicated analytics provider or an in-house data warehouse.

If your analytics provider partners with Branch, you can set up a data integration in the Branch Dashboard. Just enter a few credentials and, depending on the partner, add a few lines of code to your app. Requirements vary slightly from partner to partner.

If Branch doesn’t integrate with your analytics provider, or you’re sending data to an internal system, think about how often you need the data:

  • For real-time data (for example, triggering server-side events), use Webhooks.
  • For one-time exports, use the Custom Export API.
  • For recurring exports, use the Scheduled Log Exports API.
Flowchart for data delivery frequency. Real-time needs point to Webhooks, one-time exports to the Custom Export API, and recurring exports to the Scheduled Log Exports API.

Want to learn more about exporting data from Branch?

For help with your data export setup, reach out to your account team. To get started, request a demo.

Frequently asked questions (FAQs)

What APIs does Branch offer for automating data exports?

Branch offers several APIs for exporting data automatically. For device-level event data, use the Custom Export API for one-time exports and the Scheduled Log Exports API for recurring exports. For aggregate campaign data, use the Query API for real-time results, the Aggregate API for permission-filtered exports, and the Cross-Events Export API for large exports across multiple data sources. Webhooks send individual events to your server in real time.

Can I send Branch data to my data warehouse automatically?

Yes, Branch can send data to your data warehouse automatically with the Scheduled Log Exports API. You choose the device-level fields you want and set an hourly or daily cadence, and Branch delivers the data from its servers straight to your cloud storage, such as Amazon S3 or Google Cloud. No manual exports are required once the schedule is set.

Can I get event-level data from Branch to build my own attribution models?

Yes, Branch provides event-level (also called log-level) data that includes the full metadata for each event, such as timestamps, device data, and campaign details. Data science teams can use it to build custom multitouch attribution or incrementality models. Use the Custom Export API to pull specific fields and filtered events, or the Scheduled Log Exports API to send the data to your warehouse on a recurring basis.

How do I get Branch data in real time?

Branch offers two real-time options. Webhooks send event data to your server or another tool as soon as Branch processes the event, which lets you trigger server-side actions without waiting for a batch export. The Query API returns campaign-level data in real time when you run a query and matches what you see in the Branch Dashboard.

How do I connect Branch data to my CRM, BI, or analytics tools?

Branch connects to analytics and engagement tools like Adobe Analytics, Google Analytics, Amplitude, Braze, and Segment through Data Integrations, which forward events automatically once you enable them in the Branch Dashboard. If your BI tool isn’t a Branch partner, send Branch data to your data warehouse with the Scheduled Log Exports API and connect your BI tool to the warehouse.

How can I give agencies secure access to export my Branch data?

Branch’s Aggregate API and Cross-Events Export API filter data by each user’s access level, so agencies and other limited-access users only export the data they’re permitted to see. Use the Cross-Events Export API if they need large volumes of data from multiple sources. Avoid giving third parties access through the Query API, since it doesn’t restrict which data they can retrieve.

Rob Gioia

Rob Gioia

Rob Gioia is a Principal Solutions Architect at Branch who has written several Branch blog posts and hosted many Branch webinars. He primarily helps new customers get up-and-running with Branch’s SDK and suite of products. In his spare time, he is a Udemy instructor with 25 published online courses.