Active View is a technology used on YouTube and certain Display Network websites and mobile apps, which allows Google to determine whether an ad was viewable by potential customers.
This article documents a new set of viewability metrics, which are collectively known as Advanced Active View metrics. These metrics enable the computation of a broader set of metrics, replacing alternative signal-based integrations.
Design
In Ads Data Hub viewability data is reported via Impression, Active View, and Creative Conversion events. Each of these event types is stored in a separate table:
- Impressions: Each row represents a unique ad impression. This corresponds to the beginning of the lifecycle of an ad, which can either be the start of playback (for video ads) or initial rendering (for display ads). Some impression data contains signals about which viewability metrics the client is capable of measuring.
- Active Views: Each row represents a client-measured viewable event. Contains rows for both measurability reporting (for example, client has confirmed that it has successfully started measurement) as well as the particular viewability standards being reached (for example, MRC standard - 50% in-view for 2 consecutive seconds).
- Creative Conversions: Each row represents an ad lifecycle event - primarily the VAST tracking events (start, quartiles, pause, skip, etc.).
In addition to specifying the basic event that occurred, many of the events also contain viewability signals.
Format category
The Media Rating Council defines viewability differently for display ads and video ads:
- Display: An ad's viewport must be at least 50% on-screen for at least one second. Examples: Masthead ads, In-Feed Video for Consideration ads
- Video: An ad's viewport must be at least 50% on-screen for at least two consecutive seconds. Examples: Skippable in-stream ads, bumper ads
Due to these definitions, you will likely want to separate video-measured impressions from impressions of other measurement types, e.g. display.
You can use the format_category
field in the Impressions tables to distinguish these events.
Querying the tables
In order to compute advanced Active View metrics accurately, you must write your queries as a union of all 3 tables.
The location of the metrics relative to the tables is subject to change. For this reason, it’s important to concatenate the tables together, even if you notice that a metric only populates in a single table. If the location of a metric changes, and you aren't concatenating all 3 tables, your query will break.
Example
The following example shows how to concatenate the 3 tables for video-measured ads.
We match events on impression ID because a given campaign can have impressions of different format categories (and therefore different measurement standards). For example, it is possible for a campaign A to have impression P with the VIDEO
format category and impression Q with the DISPLAY
format category.
-- Write queries as a union of all 3 tables.
WITH
CombinedEvents AS (
SELECT
impression_id,
campaign_id,
viewability_metrics,
TRUE AS is_impression
FROM adh.google_ads_impressions
UNION ALL
SELECT
Im.impression_id,
Av.impression_data.campaign_id,
Av.viewability_metrics,
FALSE AS is_impression
FROM adh.google_ads_impressions AS Im
INNER JOIN adh.google_ads_active_views AS Av
USING (impression_id)
UNION ALL
SELECT
Im.impression_id,
Cc.impression_data.campaign_id,
Cc.viewability_metrics,
FALSE AS is_impression
FROM adh.google_ads_impressions AS Im
INNER JOIN adh.google_ads_creative_conversions AS Cc
USING (impression_id)
)
SELECT
campaign_id,
COUNTIF(is_impression) AS total_impressions,
SUM(viewability_metrics.mrc_viewable_impressions.measurable_count)
AS mrc_measurable_impressions,
SUM(viewability_metrics.mrc_viewable_impressions.viewable_count)
AS mrc_viewable_impressions
FROM
CombinedEvents
GROUP BY
campaign_id;
Measurability
Old versions of the YouTube mobile app that predate the addition of more recent viewability metrics are still in use.
To handle this, every viewability metric field also has a corresponding field containing the number of impressions for which the metric could be accurately measured. For example, the measurable _count
field within mrc_viewable_impressions
indicates the number of impressions for which MRC viewability could be measured.
When computing rates, the measurable impressions should be used as the denominator. For example, the MRC Viewable rate should be computed as mrc_viewable_impressions.viewable_count / mrc_viewable_impressions.measurable_count
.
Schema
Advanced active view metrics are included in the table schema reference. To see these fields, search the table schemas for "viewability_metrics".
Migration schema
The following table maps deprecated Active View metrics to their replacements.
Deprecated vs new Active View metrics | |||||||
---|---|---|---|---|---|---|---|
num_active_view_eligible_impression |
enabled_count |
||||||
num_active_view_measurable_impression |
mrc_viewable_impressions.measurable_count |
||||||
num_active_view_viewable_impression |
mrc_viewable_impressions.viewable_count |
||||||
active_view.view_state |
Meaning differs based on Value
|