Reach, just like Frequency or Bounce Rate (or similar), is a Non-Aggregable metric and often result in discrepancies when not retrieved or visualized correctly.
As a non-aggregable metric, it implies that we cannot simply sum-up the daily Reach from a certain Time Range to draw the total Reach for this Time Range. Indeed one user could have been reached and counted within different days during this Time Range, resulting in duplicates when summing everything together.
Therefore, in order to avoid discrepancies when retrieving a Non-aggregable metric, how we visualize the data, meaning at which level of granularity (daily, weekly or monthly breakdown / account, campaign or ad-set level), needs to be consistent (identical) with how the data are displayed in the interface. Modifying the granularity would results in duplicates.
Looking at the example below, when fetching Reach for one week with a daily breakdown (method 1), summing up the values from all days of the campaign won't yield the same result as retrieving Reach directly on a Weekly Level (no split per date: Method 2). For the simple reason that when breaking down per day, one individual person could be present in different days compared to Weekly (unique individuals - not counted twice). Therefore, the Total for Method 1 contains 12 duplicates.
As a result, if we want to visualize the reach for the whole January 2019, we need to pull our data on monthly breakdown. The reach will therefore be retrieved already aggregated, as a single value for the month on January. If we fetch with a daily breakdown and decide to sum up all the days from January to get the total reach for January, the total will count many duplicates and result in a discrepancy.
ONBOARDING NON-AGGREGABLE DATA
Since non-aggregable data can be visualized only on the granularity level that is imported, it is important to keep the following points in mind:
- For every granularity level that we want to import data, we would need to create a separate datastream;
- In each separate datastream, non-aggregable metric needs to be mapped to a dedicated metric (e.g. monthly_reach vs. daily_reach vs. campaign_reach vs. ad-set_reach);
- When visualizing this data in Insights, it is important to use all dimensions that were mapped in that datastream. In case less dimensions are used in visualization, number of matching values for the selected granularity is displayed as: found X values (see below):