KPI Definition Generator

Two teams can both put "active users" on a dashboard and mean two different numbers. This page writes a metric down properly — a formula, a data source, a plain-language meaning and a list of the ways the number gets inflated — in three versions that differ in how tightly they are bounded.

A Definition Is a Decision, Not a Label

The value of a KPI definition is not the words. It is the argument you no longer have to have every quarter. Writing down that an active user is someone who completed a transaction, rather than someone who logged in, settles a question that otherwise resurfaces whenever the number is inconvenient.

From a Metric Name to Something a Data Team Accepts

  1. Type the metric name. If it is one of the recognised fourteen, an abbreviation is enough — the alias table handles case, spacing and common variants.
  2. Choose the Product or domain. Its effect is narrow and worth knowing: it adds a convention note only where there genuinely is one, such as flagging a SaaS default or the e-commerce convention for average order value and churn, rather than decorating every definition uniformly.
  3. Choose a Goal emphasis. This is what most changes the watch-out text, because the failure modes differ — retention definitions break on cohort windows, revenue definitions break on refunds and tax treatment.
  4. Press Generate Definitions and read Strict first. It is the version that is easiest to defend in a disagreement, and it is the one to put in a written document.
  5. Use Standard as the working definition for dashboards and Broad only when you deliberately want the inclusive reading, such as a top-of-funnel health check where missing a segment is worse than double-counting it.
  6. If you are defining something the table does not know, take the skeleton and fill in the bracketed placeholders. Do not delete the watch-out line it gives you — the instruction to replace placeholders with the exact columns and window your team agrees on is the actual work.

Strict, Standard and Broad Are Not Quality Grades

AlternativeNotes
Strict — narrow, defensibleThe formula is given unmodified, with no qualifying annotation. Use it when the number may be challenged: an investor metric, a contractual service level, anything that appears in a document someone else signs. It under-counts by design, and under-counting is the safe direction when the number is a commitment.
Standard — industry defaultSame core formula with an explicit annotation of what is being counted per record, which turns an implicit assumption into visible text. The right default for an internal dashboard, because the annotation is what prevents a reader from assuming a different denominator.
Broad — inclusiveWidens the data source to include auxiliary joins, so records that would be dropped by a strict join still count. Useful for engagement and reach questions where a missed segment distorts the answer more than a double count. Poorly suited to anything with a target attached, since an inclusive definition makes a target easier to hit without anyone deciding to make it easier.
Deciding between themWhichever one you pick, write down that you picked it and why. A definition that changes version between quarters without a note is worse than any of the three, because it makes the trend line unreadable and the change invisible.

The Same Metric Written Three Ways

Take Monthly Active Users on a subscription product and watch the three versions separate.

How the Definitions Are Produced

The named definitions are stored in the page as a compiled table, and the three versions are derived from each entry by adding or removing qualifiers. There is no model call in the default path, which is why the output is instant and identical every time you ask — two people defining the same metric on different days get the same text, and that predictability is the point. The trade-off is coverage: fourteen metrics are handled with real formulas and real watch-outs, and anything outside that set falls back to a skeleton that is structurally correct but has no domain knowledge in it.

Questions About Locking a Definition Down

Which version should go into a contract or a funding document?

Strict, without the annotation and without the auxiliary joins, because a commitment should be defined at its narrowest defensible reading. The failure mode with the other two is not dishonesty, it is ambiguity at the moment of measurement: a broader definition gives whoever reports the number room to choose, and that room is exactly what a written definition is meant to remove.

Why does an unknown metric produce placeholders instead of a guess?

Because the columns a metric counts are specific to your warehouse and cannot be inferred from its name. The skeleton gives you the structure — a count over a stated time window from a named table, with a data source and a watch-out field — and leaves the parts only you can fill. A generator that invented a column name would produce something that looks finished and is wrong, which is harder to catch than a visible placeholder.

Do the domain and goal selectors really change the output?

They change the notes rather than the formula. The goal emphasis is the more useful of the two, because it attaches the failure mode that matches your intent: cohort windows for retention, refund and tax treatment for revenue, verified records for quality. The domain selector is deliberately restrained and only adds a convention note where one genuinely exists, which is why switching it often appears to do nothing.

Can I define a metric that combines two of the recognised ones?

Not as a single entry. The table resolves a name to one definition, so a ratio of two metrics needs to be built from both of them — generate each side, keep the quarter-to-quarter note about consistent per-user definitions, and combine them yourself. Asking for the unrecognised name directly gives you the skeleton, which is the honest starting point for a derived metric.

Last verified: October 3, 2026

Launch KPI Definition Generator

All Tools · AI Tools · About · How We Test · Contact · Privacy

Maintained by Huang Bin · Last updated October 3, 2026

Loading Vue Application