River
Y CombinatorBacked by Y Combinator
FREE TEMPLATE

Software Rollout Plan Template

Four documents and three sheets that measure adoption as a task at a cadence, then name every holdout and the one action that fits them.

Free download  ·  No account needed

Rollout Plan

Two adoption numbers, both real, measuring different things

Larkfield Freight. 150 seats committed, 138 assigned, renewing 31 March.

MeasureDefinitionCountRate
Vendor dashboardAny action in the tool in 30 days121 of 13887.7%
Ever did the taskLogged one conversation in 90 days94 of 13868.1%
At cadenceLogged one in each of the last four weeks61 of 13844.2%

The sixty people in the gap

Every one of them opened the tool. None logged a customer conversation weekly, which was the single thing it was bought to make happen. A calendar invite that opens the tool is an action, and so is a notification click.

Both numbers stay in every report with both definitions attached, because 87.7% is the figure the vendor's account team will quote on the day notice is due.

The 33 who did the task at some point and are not at cadence are the most interesting rows on the sheet. They tried it and stopped, which is a manager conversation rather than a session.

Every software rollout plan you can download is a phase table: pilot, training, go-live, hypercare, review. Adoption is a status column somebody updates, and the number reported upward comes from the vendor's own dashboard. Microsoft, which documents its own definition, counts an active user as anyone who performs an action in the date range. That is exactly the right instrument for whether a licence is doing anything, and the wrong one for whether the workflow you bought it for is running.

Larkfield Freight had 150 seats committed and 138 assigned. The dashboard said 121 active, or 87.7%. Logging a customer conversation in each of the last four weeks, which was the whole business case, said 61, or 44.2%. The 60 people in between had all opened the tool and none had done the thing. Their vendor's licence report records a last-active date per user, and a last-active date cannot express a cadence at all.

Then the 77 holdouts get a reason code, and the codes split three ways rather than one. 49 to enable, 9 whose old spreadsheet was still live, 19 whose role never needed it, plus 12 seats nobody was ever given. Two of the six codes cost nothing to diagnose, because a sheet join finds them. A seat utilisation review prices the whole portfolio; this prices one tool, per person, before the notice window shuts. Notice was 60 days, so the report was due 28 November.

The rows a percentage cannot show, and the manager ranking that disagrees with itself

The Adoption Tracker, the Holdout Report, and the per-manager view the push was aimed from.

Adoption Tracker

Weekly task counts per person, not a last-active date.

PersonMgrW1W2W3W4CadenceVendor
A. FerreiraOkonjo3425Yesactive
B. NkemeluOkonjo2031No, 3 of 4active
C. HalloranOkonjo0000No, neveractive
E. BrightwellVasquez1000No, stoppedactive
H. IwuchukwuBrandt0000No, blockedactive
U. DelacroixVasquez0000excluded, tieractive
W. PetrenkoPetrov0000excluded, leaverinactive

C. Halloran counts as active and has never logged a conversation. That one row is the whole argument for a cadence definition, and there are 60 of it.

The last two rows are exclusions kept visible rather than deleted. In an activity export a leaver looks exactly like somebody refusing to adopt, and only the identity provider's leaver data tells them apart.

Holdout Report

77 people assigned and not at cadence. Six codes, three actions.

Reason codePeopleEstablished byAction
No manager expectation set24manager batch replyEnable
Workflow blocked14admin console, nobody askedEnable
Trained on the wrong workflow11sheet join, nobody askedEnable
Competing tool never switched off9manager escalationRemove it
Role does not need it13role definitionReclaim
Left or changed role6identity providerReclaim
To enable49
Alternatives to switch off9
Seats reclaimable today, with the 12 never assigned31
At cadence after the four week push95 of 138
Renewal recommendation, from 150110 seats

40 seats at 118 dollars a month is 56,640 dollars a year. Two of the six codes cost nothing to diagnose: a Training Register join finds the wrong-workflow cases and the admin console finds the blocked ones.

By Manager

Ranked by cadence rate with a floor of eight reports, against the naive count ranking.

ManagerLicensedAt cadenceRateHoldoutsCount rank
Marchetti9111.1%85th
Osei14214.3%122nd
Brandt19421.1%151st
Sundaram8225.0%67th
Vasquez221463.6%84th
Lindqvist171164.7%66th
Okonjo261765.4%93rd
Radcliffe12866.7%48th

Okonjo is third on the escalation list and second best of eleven teams. He is there because he has 26 reports. Count ranking ranks by team size, which is why it is the ranking every rollout uses and close to useless.

The three worst by rate hold 35 of the 77 holdouts on 42 of the 138 seats: 45.5% of the problem on 30.4% of the population. Concentrated is a manager problem. Evenly spread would have been a design problem, and a manager escalation against a design problem produces resentment and no adoption.

What's in the pack

01

Adoption Tracker

One row per licensed person with the task count per week, so cadence is computable and every exclusion stays visible with its reason.

02

Holdout Report

A reason code per person, how the reason was established, one action, an owner and a date, with the reclaimable seats priced.

03

Training Register

Who attended, who did the task in the room, and who did it the following week, plus the role mismatches a sheet join finds for free.

04

Rollout Plan

The four-part adoption definition, both numbers with both definitions, the schedule computed backwards from notice, and the seat recommendation.

05

Enablement Guide

A session per role built around the one measured task, in an order that unblocks before it teaches and starts expectation the same week.

06

Manager Talk Track

The opening sentence for each reason code, written out, because managers need the uncomfortable first line rather than a whole script.

07

Adoption Comms

Every message with a send date and sender, including the switch-off notice and the mid-rollout report that publishes both numbers honestly.

08

The reason-code split

Six codes mapping to three actions, which is what separates an enablement problem from a licensing one inside the same holdout list.

How to use it

  1. 1

    Open in River, or take it blank

    Open the pack in River and hand it your licence list and usage export, or download the Word documents and CSV sheets and do it yourself.

  2. 2

    Start with the contract

    The renewal date and the notice period for a seat reduction. Everything else is scheduled backwards from that one clause.

  3. 3

    Define the task and the cadence

    One task the tool was bought to make happen, at the frequency the workflow needs, over four weeks, against assigned seats.

  4. 4

    Code every holdout, then push

    Each holdout gets one reason and one action. Work the enable list for four weeks, then re-measure before notice is due.

Frequently asked questions

Is this template free?

Yes. The zip is Word documents and CSV sheets, no account and no card. Edit with AI is the optional half: the agent joins your licence list to your usage export and codes the holdouts. Other packs sit in the template library.

What format are the downloaded files?

Word (.docx) for the four documents and CSV (.csv) for the three sheets, zipped together. Excel, Numbers and Google Sheets open the sheets straight off the download, and the plan and talk track open in Word or Pages.

Our tool only exports a last-active date. Can we still use this?

Partly, and the pack says so rather than downgrading quietly. A last-active date cannot express a cadence, so the best available substitute is whether the task was ever performed. That is a weaker instrument and it still separates the people who tried from the people who never did.

Isn't ranking managers by adoption rate unfair to some teams?

It is a diagnostic for where enablement effort goes, not a performance measure, and the pack says that in the document a manager reads. A team whose workflow the tool genuinely does not fit ranks badly whatever its manager does, which is why the even-spread case is treated as a design problem.

The notice deadline has already passed. Is this pointless now?

No, but the goal changes and the pack makes you say so on day one. The output becomes an enablement plan plus a target for the next renewal, rather than a seat reduction this year. The reason codes and the manager ranking are worth the same either way.

Where does this sit next to a systems migration?

A migration moves the data and ends when the load reconciles. This starts after that. The system migration plan sizes the freeze window, the CRM implementation plan designs the target, and this one gets the team using it.

What does 'Edit with AI' actually do?

It signs you up, installs this pack as a private workspace, and puts the agent in front of the three sheets with nothing in them. Send the contract dates, the licence list and the usage export, and the first thing back is the report deadline.

Find out who is actually using the tool you bought

Take the Word documents and CSV sheets blank, or open this pack in River and get the cadence number and the reclaimable seat count.

Edit with AI