Skip to content

Analytics & Measurement

One measurement plane, from data source to dashboard

The same metric gets defined once in the warehouse and again in the BI tool, then quoted differently in a board deck, so three teams argue about a number none of them can reconcile. UPG types the whole measurement plane: the data source that emits an event, the pipelines that move it, the metric that decomposes into its inputs and traces up to a key result, the dashboards that show it, and the data-quality rules that flag it when it drifts. One definition, one line back to the source.

01Data Sources

The data source the measurement plane rests on

A data sourcedata_sourceA data source or integration emits the event schemaevent_schemaAn event schema for tracking nodes a team instruments, defines the metricmetricA unified metric that measures progress, health, or behaviour across the product it grounds, is processed via a data pipelinedata_pipelineAn automated pipeline for data transformation, and is traced via data lineagedata_lineageA record of data origin and transformations. And each event schema tracks the funnel stepfunnel_stepA stage within a conversion funnel it stands for.

The event is a typed node before any code emits it, so the metric names the exact event it counts. The column it reads is documented in the graph rather than inferred from a query.

Product events (PostHog)anchor
data_sourcedata_sourceA data source or integration
emitsdata_source_emits_event_schema
dashboard_opened
event_schemaevent_schemaAn event schema for tracking
definesdata_source_defines_metric
Dashboard adoption
metricmetricA unified metric that measures progress, health, or behaviour across the product
processed viadata_source_processed_via_data_pipeline
events_to_warehouse
data_pipelinedata_pipelineAn automated pipeline for data transformation
traced viadata_source_traced_via_data_lineage
PostHog to dbt to metrics
data_lineagedata_lineageA record of data origin and transformations
And the event is wired to the funnel it measures:
tracksevent_schema_tracks_funnel_step
Activate
funnel_stepfunnel_stepA stage within a conversion funnel

A data source emits the event schemas a team instruments, defines the metrics it grounds, is processed via a pipeline, and is traced via lineage. Each event schema tracks the funnel step it stands for. The event schema is defined before instrumentation, so a metric records the event it counts.

02Pipelines & Models

Every hop from source to warehouse is a node

A data pipelinedata_pipelineAn automated pipeline for data transformation reads from one data sourcedata_sourceA data source or integration, writes to another, and feeds the data productdata_productA curated, reusable data asset the organisation consumes, and the data modeldata_modelA data model or schema it produces is persisted in a database schemadatabase_schemaA database schema definition.

A number is traceable through every transformation rather than asserted at the end of the job. When a metric looks wrong, the lineage walks back hop by hop to the source it came from.

events_to_warehouseanchor
data_pipelinedata_pipelineAn automated pipeline for data transformation
reads fromdata_pipeline_reads_from_data_source
Product events (PostHog)
data_sourcedata_sourceA data source or integration
writes todata_pipeline_writes_to_data_source
warehouse.events
data_sourcedata_sourceA data source or integration
feedsdata_pipeline_feeds_data_product
Metrics mart
data_productdata_productA curated, reusable data asset
And the model the warehouse exposes is itself typed:
persisted indata_model_persisted_in_database_schema
metrics_warehouse
database_schemadatabase_schemaA database schema definition

Each hop from source to warehouse is a node. A pipeline reads from one source, writes to another, and feeds the data product the organisation consumes. The data model it produces is persisted in a schema. A number is traceable through every transformation rather than asserted at the end of an opaque job.

03The Metric Tree

A north star decomposes into the inputs that move it

A north-star metricmetricA unified metric that measures progress, health, or behaviour across the product decomposes into the input metrics beneath it and drives the outcomeoutcomeA desired business or user outcome it stands for. Each metric is validated by a data quality ruledata_quality_ruleA data quality validation rule, so a number that fails freshness or completeness is flagged at the source rather than in a review.

The tree makes the leverage explicit. Move an input and the graph shows what it rolls up to; question the north star and it names the inputs that move it. Guardrail metrics sit alongside, so a win on one number cannot quietly break another.

Weekly active teamsanchor
metric_drives_outcome: Teams decide in-product
metric · north star
decomposes intometric_decomposes_into_metric
Activation rate
input metric
Weekly retention
input metric
Dashboard adoption
input metric
validated bymetric_validated_by_data_quality_rule
Freshness < 24h, no null org_id
data_quality_ruledata_quality_ruleA data quality validation rule

A north-star metric decomposes_into the input metrics that move it and drives the outcome it stands for. Each metric is validated by a data-quality rule, so the tree is honest: a number nobody can trust is flagged at the source, not discovered in a board review.

04Metrics To Strategy

The metric carries the goal it serves

A metricmetricA unified metric that measures progress, health, or behaviour across the product is a connected number. It measures a key resultkey_resultA measurable result tied to an objective, drives an outcomeoutcomeA desired business or user outcome, decomposes into its inputs, guards against the metricmetricA unified metric that measures progress, health, or behaviour across the product it must not break, and is segmented by a personapersonaAn archetype representing a user segment.

Measurement and strategy sit one edge apart. The question of what a metric is for resolves to the key result it proves and the outcome it serves, both named on the graph.

Weekly active teamsanchor
metric · north star
measuresmetric_measures_key_result
70% of weekly teams open a dashboard
key_resultkey_resultA measurable result tied to an objective
drivesmetric_drives_outcome
Teams decide in-product
outcomeoutcomeA desired business or user outcome
decomposes intometric_decomposes_into_metric
Activation, retention, adoption
metricmetricA unified metric that measures progress, health, or behaviour across the product
guardsmetric_guards_metric
Support ticket rate
metricmetricA unified metric that measures progress, health, or behaviour across the product
segmented bymetric_segmented_by_persona
Data-wary team lead
personapersonaAn archetype representing a user segment

A metric carries its connections. It measures the key result it proves, drives the outcome it stands for, decomposes into the inputs that move it, guards against the metric it must not break, and is segmented by the persona it describes. Measurement and strategy sit one edge apart, so a number records the goal it serves.

05Dashboards

A dashboard composed for one audience

A dashboarddashboardAn analytics dashboard tracks the metricmetricA unified metric that measures progress, health, or behaviour across the product nodes an audience reads, contains the reportreportA structured analytical report it drills into, and can even contain a live experiment runexperiment_runAn execution instance of an experiment that records actual conditions, observations, and raw results..

Each dashboard points to the same metric nodes everyone else uses, so a number on the leadership board is the same number the team and the on-call see. There is one metric node behind every view, so no second definition exists to drift.

Leadership weeklyanchor
dashboarddashboardAn analytics dashboard
tracksdashboard_tracks_metric
Weekly active teams
metricmetricA unified metric that measures progress, health, or behaviour across the product
tracksdashboard_tracks_metric
Monthly recurring revenue
metricmetricA unified metric that measures progress, health, or behaviour across the product
containsdashboard_contains_report
Cohort retention
reportreportA structured analytical report
containsdashboard_contains_experiment_run
Verification badge test
experiment_runexperiment_runAn execution instance of an experiment that records actual conditions, observations, and raw results.

A dashboard composes metrics for an audience: it tracks the metrics leadership reads, contains the reports they drill into, and contains a live experiment run. It points to the same metric nodes the rest of the graph uses, so a number on the board resolves to the metric defined once.

06Data Quality

The rules that say whether a number is trustworthy

A metricmetricA unified metric that measures progress, health, or behaviour across the product is validated by the data quality ruledata_quality_ruleA data quality validation rule nodes it must pass (freshness, completeness, schema integrity) and assessed by a dated metric quality assessmentmetric_quality_assessmentAn assessment of whether a metric is well-defined, measurable, and aligned to a meaningful outcome..

A number that fails its rules is flagged at the source, and a stale or untrusted metric is marked as distinct from a fresh, verified one. Whether a number can be trusted is a property on the graph, recorded before anyone quotes it.

Dashboard adoptionanchor
metricmetricA unified metric that measures progress, health, or behaviour across the product
validated bymetric_validated_by_data_quality_rule
Freshness under 24h
data_quality_ruledata_quality_ruleA data quality validation rule
validated bymetric_validated_by_data_quality_rule
No null org_id
data_quality_ruledata_quality_ruleA data quality validation rule
assessed bymetric_assessed_by_metric_quality_assessment
Grade A, reviewed 2026-06
metric_quality_assessmentmetric_quality_assessmentAn assessment of whether a metric is well-defined, measurable, and aligned to a meaningful outcome.

Data quality is recorded as a layer. A metric is validated by the data-quality rules it must pass (freshness, completeness, schema integrity) and assessed by a dated quality assessment. A number that fails its rules is flagged at the source, and a stale or untrusted metric is distinguishable from a fresh one before it is quoted in a review.

07Where To Go Next

Measurement connects straight to the strategy it proves and the operations that watch it. Follow a thread: