River
Y CombinatorBacked by Y Combinator

Free template

Promotion Criteria Framework Template

Level definitions, a promotion case format and committee guidance, plus sheets for spotting anyone who has stayed unusually long at one level.

Free download · No account needed

What you get

Pack of 6 files: 3 documents, 3 spreadsheets

Promotion Criteria Framework Template
  • Level DefinitionsDocument
  • Promotion Case FormatDocument
  • Committee GuidanceDocument
  • Level RegisterSpreadsheet
  • Time-in-level AnalysisSpreadsheet
  • Promotion Case TrackerSpreadsheet

How to build a promotion criteria framework

A promotion criteria framework is the written standard a company uses to decide who moves up a level. It has three parts. Level definitions describe the work expected at each level. A promotion case sets one person's evidence against the next level up. A committee then holds every case to the same bar. A good framework also checks for people who were never put forward at all.

The principle underneath: promote people for work they already do at the next level, not for time served or for what they might do someday.

Four colleagues in business clothes talking around an office table with a tablet, notebooks and coffee cups
A small committee holds every case to one written bar. Photo: Vitaly Gariev on Unsplash

Define each level by scope, not tenure

Start with the levels, since every case will be judged against them. For each one, write down what the person owns, how much guidance they need and what others trust them to do.

Three levels from the template's sample engineering ladder

LevelOwnsGuidanceTrusted to
L3 EngineerA well-scoped project, end to endSome, on approachGet well-specified work right
L4 Senior EngineerA project area and its technical approachNone, and spots problems before being askedReview others' work in the area by default
L5 Staff EngineerTechnical direction across more than one teamGives it, in design reviews beyond their projectMake routine calls with no second sign-off

Write each line so someone who has never worked with the person could check it. "Strong communicator" fails that test. "Reviews others' work in the area by default" passes, because anyone can see who reviews what.

Share the levels with everyone they apply to, well before any case depends on them. Once they're settled, each level can carry its own salary band.

Base your promotion criteria on evidence

The bar is sustained work at the next level, shown by evidence. Dropbox's public engineering framework calls this "evidence, not faith"1: "We don't promote someone because we hope they can handle it." It also says no set of checkboxes guarantees a promotion.

Doing the current job well is not the same as being ready for the next one. In a study of sales staff at 214 firms, researchers Alan Benson, Danielle Li and Kelly Shue found top sellers were more likely to be promoted into management. Yet each doubling of a new manager's past sales was associated with a 7.5% fall2 in the sales of each person they went on to manage.

Leave tenure out of the criteria. Time at a level helps you spot who to look at, but nobody should move up because months have passed. Nobody should wait once the evidence is there, either.

Check who was never put forward

A process that only reviews submitted cases can't see the people nobody nominated. Lara Hogan, who coaches managers in tech, notes that the names we raise for opportunities are naturally the people we're closest to3. They are also the colleagues whose work we know best, and who look like us.

Being passed over has a cost. In a 2022 Pew Research Center survey, 63% of US workers who quit a job in 20214 named a lack of opportunities for advancement as a reason. A time-in-level check at the start of each cycle shows who may have been missed:

  1. Count months at level

    For each person, the months since they reached their current level, by promotion or hire.

  2. Find each level's median

    Work it out level by level, because normal time grows with seniority. Dropbox's engineering framework gives individual contributors a typical time in level5 of 1.5 to 2 years at L1 but 2 to 4 at L3.

  3. Flag the long stays

    The template flags anyone at or above 1.5 times their own level's median. A flag means look closer, not promote.

  4. Remove anyone already handled

    Take out anyone with an open case, since they're in process. A rating below Meets in the last performance review calls for a performance conversation instead.

  5. Ask why for each name left

    Their manager says which is true: the evidence isn't there yet, or nobody has built the case.

In the template's sample team of 22 engineers, the medians are 15, 21.5 and 27 months at L3, L4 and L5. Five people pass the 1.5 times mark. One already has a case in committee, so four people, 18% of the team, are overlooked.

Some levels are meant to be a long-term home. Dropbox expects L4 to be a career level for many engineers5, so a long stay there is normal. At a level like that, treat a flag as a talk about growth, not a missed promotion.

Write each promotion case in four parts

A promotion case is the written argument for one person. Its job is to let a stranger decide, so use the same four parts every time:

  1. Evidence at the target level

    Specific instances, each tied to a line in the next level's definition: what happened and what it shows.

  2. The gap

    Anything in the definition not yet shown. A case can go forward with a gap, as long as it is named.

  3. Rating context

    If the latest rating is Meets rather than Exceeds, say so and explain why the case still stands.

  4. Sponsor and reviewers

    The manager backing the case, plus peers who saw the work and can vouch for it.

ExampleOne line of evidence, rewrittenAn illustrative example written for this guide. The person and project are made up.

Before: "Priya is a natural leader and clearly ready for the next level."

After: "Led the move of order routing to a new queue, March to June. Wrote the design, split the work across three engineers and reviewed every change. Meets the L4 line: sets an area's technical approach without guidance."

  • Checkable. Anyone can confirm the project, the dates and who did the work.
  • Tied to the bar. It names the line of the L4 definition it meets.
  • No adjectives. "Natural leader" is an opinion, and a committee can't weigh it.

Collect evidence as the work happens, not the week before the committee meets. Results tracked in an OKR template make strong evidence, since the goal and the outcome are already written down.

Review every case against the same bar

Have a small committee decide, rather than each manager alone, so one bar applies across teams. Members reread the target level's definition before each case, then judge every line of evidence against it.

Tenure and a manager's enthusiasm aren't evidence. A case with three years at level and thin evidence is weaker than one with a single year and a clear example of the target scope.

Put the overlooked list on the same agenda as the submitted cases, so a missing case is as visible as a rejected one. Log each decision and its reason in the case tracker, and tell every candidate what the committee found.

Keep it fair, and keep the records

In the US, federal law forbids basing promotions on race, sex, age (40 or older), disability or other protected traits6, or on stereotypes about them. Covered employers must keep promotion records for at least a year7 and, if a discrimination charge is filed, until it is resolved. If a decision is challenged, talk to an employment lawyer before you respond.

Before the committee meets

  • Every level has a written definition a newcomer could check
  • The time-in-level check used each level's own median
  • Every name on the overlooked list has a reason from their manager
  • Each case cites evidence against the next level and names any gap
  • A Meets rating is stated in the case, not left out
  • Last cycle's decisions are logged with their outcomes

Open this template with Edit with AI to skip the arithmetic. River works out each level's median from your team list, checks every flag against open cases and ratings, and drafts cases for the people your committee puts forward.

How to use this template

Use the files as they are, or open them in River with Edit with AI. River asks for your level definitions and a list of each person's level, the date they reached it and their latest rating. It also asks for last cycle's case tracker, if you kept one, so open cases aren't counted twice.

The first thing back is the Time-in-level Analysis and the overlooked list, worked out level by level. River can then draft cases in the Promotion Case Format for the people your committee chooses to put forward. A name on the list means someone deserves a look, not a promotion.

  1. Download it or open it in River

    Get three Word documents and three CSV sheets free, or open the whole template in River to work with AI.

  2. Rewrite the level definitions

    Replace the sample engineering ladder with your own levels, describing what each one owns and how independently it works.

  3. Run the time-in-level check

    Fill in the Level Register yourself, or let River find each level's median and check every long stay.

  4. Build cases and log outcomes

    Write cases in the Promotion Case Format, review them with Committee Guidance and log every decision in the tracker.

What's in the template

Five flagged by tenure. Four actually overlookedThe gap between the two numbers is the point. Marcus Oyelaran is flagged by tenure and already has a case in committee, so counting him as overlooked would be wrong in the other direction.
Promotion Criteria Framework Template
RiverTime-in-level Analysis

Time-in-level Analysis

Illustrative example. Marloe Logistics, fictional warehouse software company, 22-person engineering org, L3 to L5.

LevelPopulationMedian months at levelFlag threshold (1.5x median)Flagged
L3 Engineer91522.526mo, 31mo
L4 Senior Engineer821.532.2533mo, 38mo
L5 Staff Engineer52740.541mo

The median and the threshold are computed per level. A single org-wide cutoff would flag mostly senior people, since normal tenure at L5 is already longer than the L3 threshold.

RiverLevel Register

Level Register

The 5 flagged rows from a 22-row register, each with rating and case status.

NameLevelMonths at levelMost recent ratingCase on file?
Marcus OyelaranL326MeetsYes, in committee
Priya SundaramL331ExceedsNo
Ilse NovakL433MeetsNo
Devon AchebeL438ExceedsNo
Tomas ReykL541MeetsNo

Marcus Oyelaran is flagged by tenure but already has a case moving, so he is excluded from the overlooked count. The other four are not.

RiverPromotion Case Tracker

Promotion Case Tracker

What is actually in flight, and what the register shows has never been opened.

NameProposed moveStatusNote
Marcus OyelaranL3 to L4In committee reviewOpened 2026-02-02
Priya SundaramL3 to L4No case on fileOverlooked: 31mo at L3, Exceeds
Ilse NovakL4 to L5No case on fileOverlooked: 33mo at L4, Meets
Devon AchebeL4 to L5No case on fileOverlooked: 38mo at L4, Exceeds
Tomas ReykL5 to L6No case on fileOverlooked: 41mo at L5, Meets

4 of 22 people, 18.2 percent of the org, rated Meets or better with no case ever opened. That is the number the committee sees, not a raw tenure list.

  • Level DefinitionsA sample L3 to L5 engineering ladder, and why time served is never a reason to promote.
  • Promotion Case FormatThe write-up for one person: evidence at the target level, any gap, rating context and sponsor.
  • Committee GuidanceHow to judge cases against the level, question the overlooked list and log every decision.
  • Level Register sheetOne row per person with level, months at level, latest rating and whether a case is on file.
  • Time-in-level Analysis sheetEach level's headcount, median months, a flag threshold at 1.5 times the median, and every stay at or above it.
  • Promotion Case Tracker sheetEvery case with its proposed move, status and date opened, plus flagged people with no case.

Common questions

What are promotion criteria?

Promotion criteria are the written standards a company uses to decide whether someone is ready for the next level. Good criteria describe observable work at each level, such as the size of problem a person owns and how independently they work. They leave out adjectives and years of service, and every case is judged against them.

How long should someone stay at a level before promotion?

No universal minimum exists, and normal time at a level grows with seniority. Dropbox, for example, publishes typical stays of 1.5 to 2 years at its first engineering level and 4 or more years at its fourth. Rather than set a minimum, compare each person with their own level's median and look closer at anyone well past it.

Who should make promotion decisions?

A small committee should decide, with the manager acting as the case's sponsor rather than its judge. A committee applies one standard across teams, so a generous manager can't carry a weak case and a quiet one can't sink a strong case. Members should weigh only evidence against the target level's definition.

What should you tell someone who wasn't promoted?

Tell them soon, in person, and name the specific gap between their evidence and the next level's definition. Then agree what work would close it, who will help, and when the case will be looked at again. Write that down, so next cycle's review starts from the conversation rather than from memory.

Can this framework work outside engineering?

Yes. The sample ladder is written for engineers, but the method fits any job family with levels, from sales to finance. Rewrite Level Definitions for your own roles, keeping every line something an outsider could check. The case format, committee guidance and the three sheets' columns stay the same.

Is this promotion criteria template free?

Yes. Download the three Word documents and three CSV sheets with no signup. The sheets come filled with a made-up 22-person engineering team, so you can see how the time-in-level check works before adding your own people. Edit with AI opens the same template in a free River workspace.

What does Edit with AI do?

It opens the template in a free River workspace. River asks for your level definitions, each person's level, when they reached it and their latest rating, plus any case tracker from last cycle. It lists people well past their level's median, rated Meets or better, with no open case, and drafts cases for those you put forward. Your committee still decides.

Sources

  1. Dropbox. “Promotion Principles.” dropbox.github.io (opens in a new tab)

  2. National Bureau of Economic Research. “The Peter Principle Isn't Just Real, It's Costly.” nber.org (opens in a new tab)

  3. Lara Hogan. “What does sponsorship look like?” larahogan.me (opens in a new tab)

  4. Pew Research Center. “Majority of workers who quit a job in 2021 cite low pay, no opportunities for advancement, feeling disrespected.” pewresearch.org (opens in a new tab)

  5. Dropbox. “Promotion Guidelines.” dropbox.github.io (opens in a new tab)

  6. U.S. Equal Employment Opportunity Commission. “Prohibited Employment Policies/Practices.” eeoc.gov (opens in a new tab)

  7. eCFR. “29 CFR 1602.14 — Preservation of records made or kept.” ecfr.gov (opens in a new tab)

Written by

Chandler Supple

Co-founder & CEO, River

Chandler has spent the last six years working in AI, building tools for millions of users and Fortune 100 companies. In 2025, he co-founded River to build a new kind of operating system for AI agents.

Reviewed by

Brian Joseff, Co-founder, River