Custom metrics
Define calculated KPIs — ROAS, AOV, CPA, retention rate — using formulas on top of your existing datablock columns. Custom metrics work everywhere a regular metric works.
A custom metric is a formula that produces a number from other numbers. Use them to define your business's KPIs once and reuse them across every dashboard, chart, automation, and chat session.
When to create a custom metric
The metric isn't returned natively by your connection (ROAS isn't a Meta metric — you derive it from
purchase_value / spend).You want a custom version of a standard metric (e.g. "Profit-adjusted ROAS" subtracting COGS).
You want to blend across connections —
(GA4 organic_sessions) / (Google Ads spend).
Where to find custom metrics
In any project, click Custom metrics in the side menu (or open a chart's settings, scroll to the Custom columns section — see Add custom column to table for the chart-level version).
[Screenshot needed] Custom metrics list page with three saved metrics: ROAS, Blended ROAS, AOV.
Two scopes
Project-level custom metric
Created from the Custom metrics page.
Available across every dashboard in the project.
Best for KPIs that recur (ROAS, AOV, CPA, profit-adjusted versions).
Chart-level custom column
Created from inside a single chart's settings.
Only visible on that chart.
Best for one-off calculations specific to one analysis.
See Add custom column to table for the chart-level workflow.
Creating a project-level custom metric
Step 1 — Pick the base datablock(s)
A custom metric references columns from one or more datablocks. Pick the datablock(s) that contain the inputs you need.
Step 2 — Write the formula
Formulas use bracketed column names and standard arithmetic operators:
Available operators: + - * / Functions: SUM, AVG, MIN, MAX, COUNT, IF, CASE WHEN ... THEN ... ELSE ... END
[Screenshot needed] Custom metric formula editor with
[purchase_value] / [spend]typed in and the column picker visible.
Step 3 — Name and format
Name: human-readable (e.g. "ROAS"). No spaces in the underlying identifier — SMAQ converts
ROASto display correctly and accepts underscores.Format: pick how it renders — Currency, Percentage, Number, Ratio. Custom metrics with the Currency format automatically participate in currency conversion.
Description: the AI uses this when picking metrics during chat.
Step 4 — Save and use
Once saved, your custom metric appears in the Metrics picker of every chart, datablock builder, and report — alongside the platform-native metrics. Use it just like any other metric.
[Screen video needed] From creating a "ROAS" custom metric on a Google Ads + Meta blended datablock through using it in a new dashboard chart. ~90 seconds.
Blending metrics across connections
To blend across connections (e.g. organic GA4 sessions against paid Google Ads spend), you need a datablock that joins or unions the two sources. SQL connections support this natively. For API connections, use a merged table — then build the custom metric on top.
Tips
Pick the format carefully. A ratio formatted as a percentage shows
30.5%instead of0.305. A ratio formatted as a number shows0.305. They're the same value — pick what your audience reads more easily.Use parentheses generously. Operator precedence does what you'd expect, but parentheses make intent obvious and prevent mistakes.
Don't divide by zero. Use
IF([spend] = 0, NULL, [revenue] / [spend])to avoidNaNorInfshowing up in dashboards.Test against a known dataset. Build the metric, render it on a dashboard, and compare to a number you know is right.
What's next
Add custom column to table — chart-level alternative.
Currency conversion for tables — applies to custom currency metrics too.
Last updated