withsoon

YouTube data platform — Data Modeling

01

ER Diagram

YouTube analytics ER canvas

Drag the canvas. Hover a table or field to inspect it.

46%
dim_dateDimension

One calendar date

dim_timeDimension

One intraday time bucket

dim_videoDimension

One historical version of a video

dim_channelDimension

One historical version of a channel

dim_viewerDimension

One privacy-scoped viewer version

dim_deviceDimension

One device/application capability combination

dim_geoDimension

One policy-approved geography member

dim_surfaceDimension

One product placement surface

fact_playback_eventFact

One accepted playback event

fact_watch_sessionFact

One playback attempt and session version

fact_impressionFact

One eligible video impression

fact_engagement_eventFact

One accepted engagement action

fact_search_eventFact

One search query or result interaction

fact_ad_eventFact

One ad lifecycle event

fact_ad_impressionFact

One eligible ad impression

fact_qoe_eventFact

One playback-quality incident or sample

fact_video_metric_dailyFact

Video × date × metric version

fact_channel_metric_dailyFact

Channel × date × metric version

fact_live_concurrencyFact

Live stream × region × minute

fact_experiment_assignmentFact

One subject × experiment assignment

fact_shorts_sessionFact

One Shorts feed viewing attempt

fact_audience_retentionFact

Video × segment bucket × metric version

dim_experimentDimension

One versioned experiment definition

dim_adDimension

One ad creative/campaign version

dim_content_formatDimension

One governed content-format definition

bridge_identity_linkBridge

One permitted identity link and validity interval

metric_registryRegistry

One metric definition version

02

Interview Answer

I start by defining the grain of every fact so one row has an unambiguous meaning—for example, fact_watch_session is one playback attempt and version, while fact_video_metric_daily is one video, date, and metric version. I connect those facts to conformed date, video, channel, viewer, device, geography, surface, experiment, and ad dimensions. Video and channel use Type 2 history so facts retain the metadata and monetization state valid when the event occurred. Identity links remain consent-aware and reversible. Live, Shorts, and VOD share dimensions but use separate facts where concurrency, loops, swipes, and retention curves have different semantics. Finally, a versioned metric registry owns formulas such as qualified views instead of duplicating logic across dashboards.