---
name: annual_planning_cycle
description: Run the full annual planning cycle end to end: input gathering, strategy refresh, top-down targets, bottom-up plans, budget and headcount linkage, reconciliation, cascade to teams, approval, and the in-year review cadence. Use when someone asks to run annual planning, build an annual operating plan (AOP), set next year goals and budgets, plan a planning calendar, or fix a planning process that produces a budget nobody follows.
---

# Annual Planning Cycle

## Purpose

Run one planning cycle that produces a single plan, not three separate ones. In weak cycles the strategy deck, the goals, and the budget are written by different people at different times and never meet. This skill joins them: strategy choices set priorities, priorities get costed initiatives, the budget funds only those initiatives, goals cascade from the funded plan, and a fixed review cadence manages the plan during the year.

Use it for a company, a division, or a single large team. Scale the paperwork down for small groups, never scale down the reconciliation step.

## Workflow

### 0. Setup, about 18 weeks before the fiscal year starts

- Name one planning lead. Planning run by committee drifts.
- Publish the calendar, templates, and decision dates before asking anyone for numbers. Generate a starting calendar with `bin/plan_calendar.py`, for example `python3 bin/plan_calendar.py --fy-start 2027-01-01`.
- State the rules up front: page limits, who approves what, and the date after which the plan is locked and changes go through the decision log.

### 1. Look back and gather inputs, weeks 16 to 13

Build the input pack using the checklist in `references/planning-pack.md`. Cover last year results with honest reasons, financials, customers, market, capacity, and committed carryover work. Carryover matters: work already promised often eats a large share of next year capacity, and plans that ignore it are fiction from page one.

End this phase with a short shared read of the facts. Disagreement about facts gets settled here, not during budget fights later.

### 2. Strategy refresh, weeks 12 to 10

Do not rewrite strategy from scratch each year. Test it against the input pack: what stays, what changes, and on what evidence. Produce, in rank order:

- 3 to 5 priorities for the year. More than five means no ranking happened.
- A stop list. Priorities without a stop list are additions, and additions without cuts break the budget in Phase 5.
- At most two unproven bets, each with a cost and a mid-year keep or kill result.

Use the worksheet in `references/planning-pack.md`.

### 3. Top-down targets and guardrails, weeks 9 to 8

Leadership and finance set the envelope before detailed planning: revenue target, margin floor, cash low point, total headcount range, and any hard constraints such as hiring freezes in a function. Present targets as a range with a committed number inside it. A single point target with no range hides the argument that should happen now.

### 4. Bottom-up function plans, weeks 7 to 5

Each function writes initiative one-pagers for the work that serves the priorities. Each one-pager names one owner, a measurable outcome with baseline and target, the operational driver behind it, cost by headcount role and start quarter plus other spend, dependencies with dates, quarterly milestones, and a kill or shrink trigger.

Cost with drivers, not with last year plus a percentage. If volume grows, cost follows the driver, for example cases per person or units per shift, so the plan shows what breaks when volume is higher or lower than expected.

### 5. Reconciliation and scenarios, weeks 4 to 3

Put the top-down envelope and the bottom-up ask side by side. They will not match. Close every gap with a named decision only: cut scope, add resource, move timing, change the target, or accept a lower margin with a named approver. See the reconciliation sheet in `references/planning-pack.md`.

Then build three scenarios, base, upside, and downside. For the downside, agree the trigger and the actions in advance, in order: which hiring pauses, which spend stops, which scope cuts. Agreeing this now is cheap. Agreeing it during a bad quarter is slow and political.

Flag any priority that the funded budget cannot actually support. Either fund it, shrink it, or remove it from the plan at this stage. An unfunded priority left in the plan teaches teams that the plan is not real.

### 6. Cascade to teams, weeks 2 to 1

Map company priorities to function commitments to team goals using the cascade map in `references/planning-pack.md`. Teams draft their own goals against the direction. Copying company wording down a level produces goals nobody owns. Each team goal needs an owner and a quarterly milestone, including for annual goals, so course correction is possible before December.

### 7. Approval and lock, final week

Present the plan in this order: strategy and priorities first, then function commitments and milestones, then the money and headcount that follow from them. Numbers first invites an argument about the size of the target before anyone has judged the thinking behind it.

At approval, issue each function head a one-page commitment: driver targets, money, headcount by start quarter, key assumptions, and milestones. Communicate the plan, the stop list, and the review cadence to everyone in the same week.

### 8. In-year cadence

The plan is managed, not filed.

- Monthly: actuals vs plan on priorities and drivers, variances explained in one line each, decision log updated.
- Quarterly: quarterly business review using the agenda in `references/planning-pack.md`. Re-score annual goals, set next quarter commitments, record resource moves.
- Mid-year: formal reforecast. Re-run the scenarios with actuals, choose add, shrink, move, or stop for each off-track priority, and re-issue function commitments for the second half.
- Change rule: the plan changes only through the decision log, with the money, headcount, or scope effect written down. Quiet side deals are how plans die.

## Output Contract

A finished cycle delivers all of these:

1. Planning calendar with owners and dates
2. Input pack, one page or one table per input
3. Strategy refresh: ranked priorities, stop list, and bets with keep or kill results
4. Top-down envelope: revenue, margin, cash, and headcount guardrails
5. Initiative one-pagers for every funded initiative
6. Reconciliation sheet showing every gap and the decision that closed it, plus base, upside, and downside scenarios with downside triggers and actions
7. Cascade map from company priorities to team goals, with owners and quarterly milestones
8. One-page function commitments issued at lock
9. Review cadence on the calendar: monthly checks, quarterly reviews, mid-year reforecast, and a decision log

## Operating Rules

- One plan. If the goals document and the budget disagree, the cycle is not finished.
- Rank or it did not happen. Unranked priority lists transfer the hard choice to teams, who will each choose differently.
- Every gap gets a named decision and a named approver. Never close a gap with a vague efficiency claim.
- Headcount is a timing plan, not a total. Ten hires in Q1 and ten hires in Q4 are different costs and different plans.
- Write the downside actions while everyone is calm. Triggers agreed in advance get executed. Triggers invented mid-crisis get debated.
- Keep templates short. One page per input, one page per initiative, one page per function. Length is not rigour.
- Protect the lock. After approval, changes go through the decision log or the next quarterly review. Reopening the whole plan for one change destroys trust in the process.
- Start next year from this year misses. The mid-year and year-end lists of what the plan got wrong are the first inputs to the next cycle.
