> For the complete documentation index, see [llms.txt](https://help.rhythms.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.rhythms.ai/goals-and-okrs/creating-goals/metric-types-for-key-results.md).

# Metric types for Key Results

A Key Result's metric has a name, a unit, a start value, a target value and a **metric type** that tells Rhythms how to turn the current value into a progress percentage. There are four types: **Reach to** (shown as **Achieve a target** in the metric popover), **Stay above**, **Stay below** and **Stay between**. Set them by clicking the metric pill on a Key Result, or the **Set target** pill while creating one.

This article is about metric-based tracking. Objectives and Initiatives use progress-based tracking (a plain 0 to 100 percent) by default and do not need a metric type; see [Create OKRs and initiatives](/goals-and-okrs/creating-goals/create-okrs-and-initiatives.md) for switching between the two.

## Set or change the metric

1. Open the Key Result and click its metric pill, for example `Quarterly Revenue: $2.8M → $3.5M`.
2. At the top of the popover, choose the type: **Achieve a target**, **Stay above**, **Stay below** or **Stay between**.
3. Edit the **Metric name**, **Target** and **Start**. Type the unit with the number ("$3.5M", "75%", "1,200") and Rhythms sets it.
4. Click away to save. Progress is recalculated for the latest check-in.

[Watch the video](https://www.loom.com/embed/133938eae803416a813cfeb9188fd0ec)

The popover also has a **Progress plan** tab for Reach to metrics, where you set the expected value at dates through the period; see [Progress Plans](/goals-and-okrs/managing-and-tracking-goals/set-a-progress-plan-for-an-okr.md).

## Units

Every metric has a unit: **percentage** (the default), **number**, or one of four currencies, **dollar** ($), **euro** (€), **pound** (£) and **Swiss franc** (CHF). Rhythms formats values with the unit throughout the product, abbreviating large numbers ("$1.23M"). The unit does not change how progress is calculated; the metric type does.

## The four metric types

| Type                            | Use it when                                                          | How progress is calculated                                                                                                    | Example                                                                                                 |
| ------------------------------- | -------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- |
| **Reach to** (Achieve a target) | You move a number from where it is to where you want it, up or down. | (current − start) ÷ (target − start), as a percentage, never below 0. Works for decreases too.                                | Increase monthly active users from 50,000 to 75,000. Reduce ticket resolution time from 48 to 24 hours. |
| **Stay above**                  | You must keep a value above a minimum.                               | 100 percent while the current value is above the target, otherwise 0 percent.                                                 | Keep uptime above 99.5 percent. Maintain CSAT above 4.2.                                                |
| **Stay below**                  | You must keep a value under a maximum.                               | 100 percent while the current value is below the target, otherwise 0 percent.                                                 | Keep churn below 5 percent. Keep CAC below $150.                                                        |
| **Stay between**                | Too high and too low are both problems.                              | 100 percent while the value is above the **Start** (lower bound) and below the **Target** (upper bound), otherwise 0 percent. | Keep inventory between 10,000 and 15,000 units. Keep utilisation between 75 and 85 percent.             |

### Reach to

Reach to is the only type with graded progress, so it is the right choice for anything you are trying to grow or shrink. Know your starting value before you set the target: progress is measured from the start, so a wrong start value misstates every check-in. Reach to metrics can carry a progress plan, and parents that roll up progress use Reach to children's percentages.

### Stay above, Stay below and Stay between

These are guardrails. Progress is binary: the Key Result is at 100 percent while the condition holds and drops to 0 the moment it does not. That makes them poor as the only Key Result under an Objective, because a healthy quarter shows no movement, but excellent alongside Reach to Key Results ("grow revenue, without letting churn rise above 5 percent"). Status is still your call at each check-in; a Stay above metric at 100 percent can be At Risk if you see it slipping.

For **Stay between**, enter the lower bound as the **Start** and the upper bound as the **Target**. If only one bound matters, use Stay above or Stay below instead.

## Check you chose well

* If success means a number moving, use **Reach to**. If success means a number not moving past a line, use a **Stay** type.
* You can explain the start, target or bounds to someone who asks "why that number?".
* You can actually measure it, ideally from a connector; see [How to Set Up Auto Updates](/connectivity/connectors/set-up-automatic-updates-from-a-connector.md).

## Frequently asked questions

**Can I change the metric type after tracking has started?** Yes, from the same popover. Existing check-in values are kept and progress is recalculated against the new definition, so tell your team, and prefer a new Key Result when the measure itself changes rather than just the type.

**Should all Key Results under an Objective use the same type?** No. A typical Objective pairs one or two Reach to Key Results with a Stay above or Stay below guardrail.

**Reach to or Stay above when I want a number to be high?** Reach to when you are actively pushing it higher ("Increase CSAT from 4.0 to 4.5"). Stay above when you are protecting it while focusing elsewhere ("Keep CSAT above 4.0").

**How ambitious should targets be?** For Reach to, aim for stretch targets where 70 percent is a good outcome. For Stay types, set the bound at the level that is genuinely acceptable, since anything else reads as failure the whole period.

**What if my Key Result has no number?** Leave it progress-based (0 to 100 percent) and update the percentage at check-ins. When a real measure emerges, click the goal's progress pill (labelled **Set target** while no metric is defined) and fill in the metric.

## Related articles

* [Create OKRs and initiatives](/goals-and-okrs/creating-goals/create-okrs-and-initiatives.md)
* [Progress Plans](/goals-and-okrs/managing-and-tracking-goals/set-a-progress-plan-for-an-okr.md)
* [How to Set Up Auto Updates](/connectivity/connectors/set-up-automatic-updates-from-a-connector.md)
* [Understanding OKR Automatic Rollup](/goals-and-okrs/managing-and-tracking-goals/how-parent-okr-progress-and-status-roll-up.md)
* [Write and submit check-ins](/goals-and-okrs/managing-and-tracking-goals/write-and-submit-check-ins.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://help.rhythms.ai/goals-and-okrs/creating-goals/metric-types-for-key-results.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `build a script that syncs our docs to a CMS` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
