Engineering OKR Examples: Metrics and Sample OKR Sets to Start From

OKR examples by department

Engineering OKR Examples: Metrics and Sample OKR Sets to Start From

These engineering OKR examples give you two things to work from: a full list of the metrics software teams track, and nine complete OKR sets built from them. Every Key Result follows the same formula, with an action verb, the metric, a starting value, a target and a deadline. The values are written as X and Y, because a deploy rate that suits a five-person platform team would mislead an engineering group of eighty. Fill them in from your own data.

The short answer

What makes a good engineering OKR?

A good engineering OKR names a change the business will feel, such as customers getting fixes sooner or fewer outages during peak hours, and measures it with outcomes. “Migrate the billing service to the new cluster” counts the work. “Reduce median lead time for changes from X days to Y days by the end of Q4” measures what the work was meant to cause.

Each Key Result follows one pattern:

  • Open with an action verb, such as increase, reduce, raise, hold or achieve.
  • Name the metric you’re moving.
  • Give the starting value and the target, written as from X to Y.
  • Set the deadline, such as the end of the quarter.
1 ACTION VERBReduce2 METRICmedian lead time for changes3 FROM X TO Yfrom X days to Y days4 DEADLINEby the end of Q4THE FINISHED KEY RESULTReduce median lead time forchanges from X days to Y days bythe end of Q4.

Step 1: pick your numbers

Engineering metrics to build your Key Results from

These are the numbers software teams track, and the raw material for every one of the engineering OKR examples further down. They’re grouped by the part of the work they measure. None of them is a Key Result yet. Choose the few that show the change your Objective is about, then write each one with the formula above.

Delivery speed and flow

  • Deployment frequency
  • Lead time for changes
  • Cycle time from first commit to production
  • Pull request review time
  • Work in progress per engineer
  • Share of time spent waiting on other teams

Reliability

  • Service level objective attainment
  • Error budget remaining
  • Incidents by severity
  • Time to restore service
  • Time to detect an incident
  • Repeat incidents from the same cause

Quality

  • Change failure rate
  • Escaped defects
  • Bugs reopened after a fix
  • Rollback rate
  • Test coverage
  • Flaky test rate

Security

  • Open critical vulnerabilities
  • Time to patch critical vulnerabilities
  • Dependencies past end of life
  • Security findings from audits
  • Services with secrets in a managed vault

Tech debt and maintainability

  • Share of time spent on unplanned work
  • Build time
  • Services on supported versions
  • Code ownership coverage
  • Time to make a routine change in [legacy system]

Developer experience

  • Time for a new engineer to merge a first change
  • Developer satisfaction score
  • Local setup time
  • Time lost to broken builds
  • Hours in meetings per engineer per week

Cost efficiency

  • Cloud spend per customer
  • Cloud spend as a share of revenue
  • Idle compute share
  • Cost per thousand requests
  • Storage growth per month

Predictability

  • Share of committed work delivered in the cycle
  • Estimate accuracy
  • Roadmap dates met
  • Carry-over work per sprint
  • Unplanned work per sprint

Several of these are health metrics you protect and hold steady, such as uptime, error rates, open critical vulnerabilities and on-call load. Uptime belongs in that group for almost every team. Keep it inside its service level objective while the OKRs push elsewhere. If uptime or another vital sign starts slipping, it becomes a candidate for its own OKR.

Step 2: write the Key Result

How to turn an engineering metric into a Key Result

The standard form covers almost every Key Result in the engineering OKR examples on this page. There are two more for the moments when a number isn’t available yet. Here’s one of each, written for an engineering team:

  • Standard Key Result. Reduce median lead time for changes from X days to Y days by the end of Q4.
  • Baseline Key Result, for a metric you’ve never measured. Determine the current change failure rate for each service by the end of Q1. Next cycle, it becomes “Lower the change failure rate from X% to Y% by the end of Q2.”
  • Milestone Key Result, used sparingly when there’s no metric to track yet. Complete deployment tracking for every production service by the end of week six.

Then run the outcome test: if the team could finish all the work and the number might still not move, the Key Result measures activity. Rewrite it around what the work was meant to cause. The OKR examples hub walks through the full method, from brainstorming Objectives to prioritizing them, and Google’s DORA team explains how to measure the four delivery metrics so you can find your starting values.

Step 3: start from a sample

Nine engineering OKR examples to adapt

Each of these engineering OKR examples has a qualitative Objective and three Key Results written in full. Several pair numbers so one can’t be hit by breaking another, such as speed with failure rate. Treat them as patterns, and swap in your own services, systems and starting values.

Delivery

ObjectiveGet finished work into customers’ hands faster and with confidence

  1. Increase deployment frequency from X to Y per week by the end of Q4
  2. Reduce median lead time for changes from X days to Y days by the end of Q4
  3. Hold the change failure rate at or below X% through the end of Q4
Reliability

ObjectiveWin back customer trust in [service] after a rough quarter of outages

  1. Raise monthly uptime for [service] from X% to Y% by the end of the quarter
  2. Cut the median time to restore service from X minutes to Y minutes by the end of the quarter
  3. Reduce repeat incidents from the same cause from X to Y per month by the end of the quarter
Quality

ObjectiveMake every release one our customers never have to report problems with

  1. Reduce escaped defects from X to Y per release by the end of the quarter
  2. Lower the rollback rate from X% to Y% by the end of the quarter
  3. Hold median pull request review time at or below X hours through the end of the quarter
Security

ObjectiveClose the gaps an attacker would find first

  1. Reduce open critical vulnerabilities from X to Y by the end of Q2
  2. Cut the median time to patch a critical vulnerability from X days to Y days by the end of Q2
  3. Lower the number of dependencies past end of life from X to Y by the end of Q2
Tech debt

ObjectiveMake [legacy system] safe and fast to change again

  1. Reduce the time to make a routine change in [legacy system] from X days to Y days by the end of the quarter
  2. Cut the share of engineering time spent on unplanned work from X% to Y% by the end of the quarter
  3. Lower incidents traced to [legacy system] from X to Y per month by the end of the quarter
Onboarding

ObjectiveHelp new engineers do their best work from their first month

  1. Reduce the time for a new engineer to merge a first change from X days to Y days by the end of Q4
  2. Raise the developer satisfaction score among engineers hired this year from X to Y by the end of Q4
  3. Cut local setup time from X hours to Y hours by the end of Q4
Cost

ObjectiveGrow the customer base without growing the cloud bill at the same pace

  1. Lower cloud spend per customer from X to Y by the end of the quarter
  2. Reduce the idle compute share from X% to Y% by the end of the quarter
  3. Hold the share of requests served within the latency target at or above X% through the end of the quarter
Predictability

ObjectiveBecome a team the rest of the company can plan around

  1. Raise the share of committed work delivered in the cycle from X% to Y% by the end of Q3
  2. Increase the share of roadmap dates met from X% to Y% by the end of Q3
  3. Hold escaped defects at or below X per release through the end of Q3
Observability

ObjectiveSee problems in production before customers do

  1. Determine the current time to detect an incident for each customer-facing service by the end of Q1
  2. Complete alerting tied to service level objectives for every customer-facing service by the end of week six
  3. Increase the share of incidents caught by monitoring before a customer report from X% to Y% by the end of the quarter

The last example mixes a baseline Key Result, a milestone Key Result and a standard one. That combination suits a team measuring something for the first time. Next cycle, the baseline turns into a standard “from X to Y” Key Result.

See it in context

Where these OKRs come from

The engineering OKR examples above leave out which part of the strategy each one serves, because that depends on your company. Our sample business profile shows the full picture for one made-up company: its strategic priorities, its SWOT, and the linked OKRs for every department.

More idea banks

OKR examples for other departments

Engineering OKR examples are more useful next to the goals of the teams you build for. The product page is the place to look for shared goals, our guide to OKRs for R&D teams covers running them across research and development, and Google’s chapter on service level objectives explains the reliability metrics in the list above.

An engineering team planning work next to a board of sticky notes

Frequently asked questions

How many OKRs should an engineering team set?

One to four Objectives per cycle, each with two to five Key Results. An engineering team focused on one Objective, such as getting work to customers faster, has room to finish it well alongside the maintenance work that never stops.

How do you write an engineering Key Result?

Start with an action verb, name the metric, give the starting value and the target, and set a deadline. For example: “Reduce median lead time for changes from X days to Y days by the end of Q4.”

Is uptime a good Key Result?

Uptime is a health metric for nearly every team, a vital sign you hold inside its service level objective every cycle. It earns a place as a Key Result when it has been slipping and the team needs a focused push to bring it back.

Is deployment frequency a good Key Result on its own?

On its own it’s easy to inflate by shipping smaller, riskier changes. Pair it with the change failure rate or escaped defects, so the team wins by shipping more frequently while breaking less.

Can I use these engineering OKR examples as they are?

Use them as a starting point. Keep the structure, then swap in your own services, systems and teams, and set every X from your own data before the team agrees on Y. Our guide on KPIs vs OKRs helps you sort which numbers to protect and which to move.

Bring your engineering OKRs into one weekly rhythm

Start a free trial and turn these engineering OKR examples into goals your team tracks every week. Or take the free OKR Starter Course and learn to write them first.