Product OKR Examples Template
Every OKR template gives you a form. This one goes looking for the query behind each number, and finds the ones nobody can read.
Free download · No account needed
A key result is a claim that a specific number will move by a specific amount. It can be empty in exactly two ways and every OKR template in circulation checks neither: the number cannot be read anywhere, or the move being asked for has never once happened. Both checks require going and looking at data before the period starts, which is inconvenient, because the appeal of an OKR form is that it can be filled in during a workshop.
So the register carries two columns no template has. Data Source holds the actual query, the table and column or the event and property, and it is not satisfiable by writing "analytics". Best Move On Record holds the largest change that metric has made in a single period in its own history, which turns "is this ambitious or delusional" from a matter of temperament into a ratio. In the worked period, nine proposed key results produced five with a query, three with none, and one deliverable in disguise.
Of the five that could be checked, all five asked for a bigger move than the metric had ever made, at a median of four times. One survived, because a new matching model was in staging that had not existed when the record was set, and that is exactly the answer the check exists to find. Capacity for the period comes from the quarterly planning pack, and where the effort actually went last time comes from the portfolio review.
What is in the pack
Key Result Register
One row per key result carrying the query that produces the number, the baseline read from that query, and the largest move the metric has ever made in a period.
Four verdicts, not a checkbox
Measurable, no instrumentation, incomplete baseline, contested definition. Plus a fourth for the deliverable in disguise. Each one costs something different to fix.
Instrumentation Gap List
Every gap sized in engineer-weeks with an owner and a date inside week three, and the consequence at the review written next to it so the work gets scheduled.
The history check
Every target expressed as a multiple of the metric's own record. Above 3x needs a named mechanism that was not present when that record was set, or it gets reset.
Measurement Plan
Window, population, contested definitions and contaminated weeks, all settled before the period rather than negotiated during the review that depends on them.
Progress Tracker
Required pace alongside actual, weekly. Two consecutive readings behind pace gets a named initiative or an explicit note that nothing is being done.
How it works
- 1
Send the drafts
Key results however rough, plus anything that says what you can measure today. A taxonomy, a dashboard list, or just your tools.
- 2
Find every query
Each key result gets a table and column, an event and property, or a named report. Whatever has none becomes a sized gap.
- 3
Check every target
Against the biggest move that metric has ever made. Above three times the record needs a mechanism, written down next to it.
- 4
Commit what survives
Usually three to five rather than nine, each with a query, a baseline, a defensible target and a weekly pace.
Frequently asked questions
What do I need to have before this is useful?
Draft key results and some idea of what you can measure. An event taxonomy, a dashboard list, warehouse table names or just the tools you use. An objective alone is a better starting point than most, because the key results get proposed from what the data supports. Where the objective itself is unsettled, the tree that hangs work off an outcome comes first.
Is this saying ambitious targets are bad?
No. The check exists to find the ambitious targets that have something behind them. A target at three times a metric's record with a capability shipping this period is the best kind of goal, and it survives. One at four times with nothing new behind it is a number that arrived in a room.
What counts as a data source?
A table and a column, an event and a property, a named dashboard tile, or a report somebody runs by hand. One sentence you can write down. "Analytics" is not a source, and neither is "we track that", because in week thirteen somebody has to reproduce the number and it may not be you.
Why separate the gaps into their own sheet?
Because they have a different owner and a different deadline. Gaps go to engineering in week one, sized, with the review consequence written next to each. The cheapest one is always a contested definition, costing no engineering at all, which is precisely why it is the row still open in week nine.
Does it grade the OKRs at the end?
No. No scoring, no 0.7 convention, no rollup. Grading is an organisational ritual and this is a measurement method. A key result either reached its target or it did not, the tracker says which, and anything whose gap never closed is reported as ungradeable rather than estimated.
Where does the definition of a key result come from?
The canonical framing puts it plainly: an objective is what is to be achieved, no more and no less, and the key results are the measurable part. This pack takes the word measurable literally and asks what produces the number, the same way the roadmap pack asks what produced the date.
Why does the order matter so much?
Because instrumentation is downstream of the metric. Amplitude's own taxonomy playbook builds a tracking plan as objectives, then key metrics, then the events that produce them. A key result written after the period starts is already too late to be instrumented inside it.
Find out which of your key results has no number
Send the drafts and whatever says what you can measure. The first thing back is the query behind each one, or the fact that there is not one.
Check my key results