Skip to main content

Why did a custom Branch event appear on its own?

This is expected. The event catalog is discovered from the data Branch returns through the Query API, so any custom in-app event defined in Branch surfaces automatically the first time it fires and propagates into a refresh. No manual setup in Adriel is needed to expose it. Because discovery depends on real activity, a custom event with zero recorded fires stays hidden until it has data. Once it begins firing, it appears alongside the standard Branch events as a metric that can be added to widgets.

Why are some campaign or ad rows labelled unknown?

When Branch has no value for an attribution breakdown on a given event, the connector stores the literal string unknown rather than leaving the value empty. This applies to all of the attributed breakdowns, such as campaign, ad set, ad, creative, keyword, and advertising partner. Grouping by one of these breakdowns therefore collects every row without an attributed value into a single unknown group. A large unknown group usually points to traffic that Branch could not attribute to a specific campaign or creative, for example organic installs or activity from links that carry no campaign parameters.

Why does a day with no activity show nothing instead of zero?

Branch does not return rows for date and breakdown combinations that had zero activity, and the connector does not insert empty rows to fill the gaps. A day, campaign, or creative with no events is simply absent from the results rather than reported as 0. This matters most when averaging over sparse data: an average built only from the days that returned rows can read higher than expected, because the zero-activity days are missing rather than counted as zero. Dashboards that need those gaps treated as zero should account for the absent rows when the data is sparse.
Within a returned row, a metric that Branch did not report is backfilled with 0 rather than left empty. The “no rows” behavior above applies to whole date and breakdown combinations, not to individual metrics inside a row that does exist.

Why did my Branch refresh slow down after I added more Branch data sources?

Branch enforces an account-level cap of 150 requests per hour, and every Branch data source draws from that same budget. To stay under the cap, all Branch data sources share one request limiter, with a safety buffer that begins pacing requests at 135 per hour. When several Branch data sources refresh around the same time, their queries queue against each other and each one can take longer to complete. This is throttling by design, not a failure. Spreading Branch data sources so they are not all refreshing at once helps keep any single one from waiting on the shared budget. For the refresh schedule itself, see the Branch data reference.

Why can’t I see Branch history from before I connected?

Adriel imports up to the last 180 days when the Branch data source is first connected, so reporting starts from that initial window rather than the full lifetime of the Branch app. Because Adriel caches the data it retrieves, the longer the data source stays connected, the more historical data is stored and available for reporting. One further limit affects older data: Branch does not return historical rows for deleted campaigns and other deleted elements, so those rows will not appear even within the imported window.

Can I combine Branch with my other ad platforms in one widget?

Yes. Branch is a generic data source type, so a widget that mixes Branch with other connector types uses blend settings to align the sources. Once blending is configured, shared breakdowns such as campaign and the standardized attribution events can be reported side by side across sources. Keep in mind that a single Branch API request returns at most 50,000 rows, so very wide queries spanning many breakdown combinations can be truncated. Narrowing the date range or the number of breakdowns keeps results within that limit.