Knowledge Hub · Glossary

Custom Dimension vs Custom Metric: What's the Difference?

A dimension describes; a metric measures. Getting this backwards is why a lot of custom GA4 reporting never gets configured correctly the first time.

A custom dimension is a descriptive attribute - a category, label, or text value that describes an event or user. Examples: membership_tier ("free" or "paid"), content_category ("blog" or "product page"), or logged_in_status.

A custom metric is a quantitative value that can be aggregated - summed, averaged - across events. Examples: video_watch_seconds, items_in_cart, or scroll_depth_percentage.

The distinction matters because GA4 treats the two differently in reporting: a dimension can be used to filter and break down data ("show me conversions where membership_tier equals paid"), while a metric is the number itself being measured and totalled. Sending a numeric value as a dimension, or a category as a metric, means GA4 still records the data but reports on it in ways that don't make sense - you can't average a text value, and you can't neatly filter by a continuous number the way you can a category. Deciding which a given piece of data actually is, before configuring it in GA4's admin settings, avoids having to rebuild the reporting later once the mismatch becomes obvious.