Skip to content

Calculated Metrics

Calculated metrics derive new metrics from existing ones using formulas. They do not require additional data collection — they compute from metrics already in GA4 using simple arithmetic operations.

The most common use cases:

  • Revenue per user: purchase_revenue / total_users
  • Conversion rate for a specific event: event_count / sessions
  • Average order value: purchase_revenue / transactions
  • Cart abandonment rate: 1 - (transactions / add_to_cart_events)
  • Cost per acquisition: requires custom metric for cost data
TierCalculated metrics limit
Free GA45 per property
GA4 36050 per property

The 5-metric limit for free properties is tight. Choose carefully — focus on metrics that stakeholders regularly need in the GA4 UI and that cannot easily be computed manually. For complex or ad-hoc calculations, BigQuery is more flexible.

  1. Go to Admin → Custom definitions → Calculated metrics tab.

  2. Click Create calculated metric.

  3. Enter a Metric name — this is what appears in reports. Use clear, descriptive names: “Revenue per User”, “Lead Conversion Rate”.

  4. Enter a Description — document the formula and purpose.

  5. Select a Unit:

    • Standard: plain number
    • Currency: formatted as currency
    • Feet/Miles/Meters/Kilometers: distance
    • Milliseconds/Seconds/Minutes/Hours: time
    • Percent: displayed as a percentage
  6. Build the Formula using the formula editor. Click metrics to add them, use arithmetic operators.

  7. Click Save.

Formulas use:

  • Metrics: click to insert from the picker, or type {{metric_name}}
  • Arithmetic operators: +, -, *, /
  • Parentheses: for order of operations

Examples:

# Revenue per session
{{purchaseRevenue}} / {{sessions}}
# Conversion rate (any conversion event)
{{conversions}} / {{sessions}}
# Average order value
{{purchaseRevenue}} / {{transactions}}
# Engagement rate (already built-in, but as example)
{{engagedSessions}} / {{sessions}}
# Revenue per user
{{purchaseRevenue}} / {{totalUsers}}

Formula: {{purchaseRevenue}} / {{totalUsers}} Unit: Currency Use case: Identify which acquisition channels bring users with the highest average lifetime revenue in the analysis period.

Create this metric, then view the Traffic acquisition report with “Revenue per User” as a metric column. Compare Organic Search vs. Paid Search vs. Email revenue efficiency.

Formula: {{conversions:lead_form_submission}} / {{sessions}}

Wait — GA4 does not let you filter by event name within a calculated metric formula. You cannot reference a specific conversion event by name in the formula. The {{conversions}} metric represents all conversions.

Workaround: Create a custom metric for lead submissions (if you push a numeric value with lead_form_submission), or use Explorations to filter by event name.

This is a real limitation of calculated metrics — they operate on aggregate metrics, not filtered slices. For per-event conversion rates, use Explorations with event-level segmentation.

Formula: 1 - ({{transactions}} / {{addToCartEvents}})

Note: addToCartEvents is an automatically collected event count. The formula shows the proportion of add-to-cart actions that did not result in a transaction.

Unit: Percent

If you send ad spend as a custom metric (via the Measurement Protocol or a cost data import), you can compute:

Formula: {{customMetric:ad_spend}} / {{conversions}} Unit: Currency Label: Cost per Conversion

Calculated metrics appear in the same places as regular metrics:

  • Standard reports: add as a metric column in a customized report
  • Explorations: available in the metrics picker
  • Comparisons: usable in comparison metrics

They are not available in:

  • Audiences (you cannot filter audiences by calculated metric values)
  • Segments (same limitation)
  • Google Ads bidding (Smart Bidding uses native conversions, not calculated metrics)

Calculated metrics cover simple arithmetic on GA4 aggregate metrics. For anything more complex, use BigQuery:

NeedCalculated MetricsBigQuery
revenue / usersYesYes
Revenue percentile analysisNoYes
Attribution-adjusted conversion rateNoYes
Cohort-based LTV calculationNoYes
Moving averagesNoYes
Ratios with event-level filtersNoYes

If your stakeholders need it in the GA4 UI and it is a simple ratio of existing metrics, use Calculated Metrics. For everything else, build it in BigQuery and connect to Looker Studio.

Trying to filter within a calculated metric formula

Section titled “Trying to filter within a calculated metric formula”

You cannot write {{conversions WHERE event_name = 'purchase'}} in a formula. The formula editor only accepts metric names and operators. If you need a rate for a specific event, the alternatives are:

  1. Create a custom metric for that event’s count (requires sending a custom numeric parameter)
  2. Use an Exploration with event name filtering
  3. Compute it in BigQuery

{{purchaseRevenue}} / {{sessions}} and {{purchaseRevenue}} / {{totalUsers}} tell very different stories. Sessions can be much higher than users for repeat visitors. “Revenue per session” rewards high-frequency visitors; “revenue per user” normalizes by person. Know which question you are answering.

Wasting calculated metric slots on metrics easily computed manually

Section titled “Wasting calculated metric slots on metrics easily computed manually”

If a stakeholder needs “revenue per 1000 users” once a quarter and can do the math from existing report numbers, that is not worth a calculated metric slot. Reserve the 5 slots for metrics that appear in regular reports and dashboards.