The short version
- At minimum: ordered recognisable items, a state on each, a declined section, and a last changed date.
- The declined section is the element most roadmaps omit and the one that changes how the page reads.
- Two items in the same column aren't ordered, and the reader assumes the top one is next.
- Four things to leave off, starting with dates.
A roadmap should include seven elements, and leave off four. The omissions matter more, because every one of the four is something a roadmap is regularly asked for and none of them can be delivered without overpromising.
What should a roadmap include, at minimum?
An ordered list of recognisable items, a state on each, a declined section, and the date it was last changed. Four things. Everything else on this page is an improvement, not a requirement.
There's a board carrying all seven elements if you want to see them together, and the demo is open without an account.
Picking the tool this lives in? Eight roadmap tools, sorted by who is allowed to look. On one of them every viewer needs a paid seat.
The seven elements
| Element | What it is for | Required? |
|---|---|---|
| The item, in the reader's words | It is the only part anybody reads | Yes |
| A state | Tells a reader how close it is without a date | Yes |
| An order | Two items with the same state still need ranking | Yes |
| A declined section with reasons | Makes the accepted items mean something | Yes |
| A last changed date | Tells the reader whether to believe the page | Yes |
| A count of who asked | Shows the order is informed rather than internal | No, but it is the strongest addition |
| A link to what shipped | Turns the claim into a record | No, and it is the second strongest |
The item
One sentence, in words a customer would use, describing something they could tell had happened.
The trap is the item that describes work, not change. "Refactor the export service" is work. "Exports of more than ten thousand rows stop timing out" is change, and only the second one can be verified by the person waiting for it.
Keep it to a line. A roadmap item with a paragraph under it has become a specification, and specifications belong where they can be argued with.
A state
Three is enough, being not started, in progress and done. Five is the most anybody needs.
The state does the job a date is usually asked to do. A reader looking at a roadmap wants to know whether their thing is close, and a state answers that without committing you to a month.
An order
Two items in the same state aren't ordered by being in the same column, and a reader assumes the top one is next. Make that true, because they will assume it either way.
A declined section with reasons
The element most roadmaps omit and the one that changes how the page reads.
One sentence per declined item. Not an apology, not a maybe later. If it's genuinely maybe later, it's not declined, it's in the queue, and saying so is also an answer.
The reason matters more than the decision. "Not building this because it only applies to boards with one project, and almost nobody runs one" tells the reader something about your product. "Not planned at this time" tells them nothing and reads as a form letter.
A last changed date
One line. It's the cheapest element on the page and it decides whether the reader trusts everything above it.
A count of who asked
Not required, and the strongest thing you can add.
A roadmap with counts on it's visibly responsive to something other than internal opinion. It also changes the conversation when somebody disagrees with the order, because the disagreement moves from taste to evidence.
The version of this worth having reads the count by weight as well as by headcount, because thirty anonymous votes and four paying accounts aren't the same information.
A link to what shipped
The second strongest addition, and mechanically the easiest.
An item that leaves the roadmap and appears in a dated changelog entry has been marked done by evidence rather than by assertion.
The four things to leave off
Dates. A public date is a commitment made before the work is understood. Every ordinary slip then reads as a broken promise, and the roadmaps with dates on them are the ones that stop being updated.
Internal work with no visible effect. A rewrite, a migration, a dependency upgrade. The reader can't evaluate it and will read it as a delay to the things they wanted.
Everything you might do. That's the backlog. A roadmap that includes it stops being a signal, because the reader can no longer tell what's real.
Confidence percentages. A number attached to a guess to make it look measured. Either you've committed to the item or it's not on the roadmap.
The mistakes
A roadmap with one state. A list of items with no states is a wish list.
Declining by deleting. The person who asked watches their request disappear and concludes nobody read it.
Two roadmaps. An internal one that's true and a public one that's optimistic. The public one gets found out, usually by a customer quoting it back.
No owner. A roadmap nobody is responsible for updating is a roadmap that will be three months old by spring.
How do you do this without a tool?
A page with five sections, being next, in progress, shipped, declined, and a last updated line. Items as one line each, ordered within each section.
It has every required element. What it doesn't have is the count of who asked, because a document can't collect one.
How does this product do it?
Five columns by default, Suggested, Denied, In Review, In Progress and Completed, so the state and the declined section are the same mechanism. The reason for a decline lives on the card as the developer response and shows on the public detail view.
Each card carries its vote count and its weighted vote count, and the weighted one reads the revenue behind the voters, not their number, so the order can be defended with something other than an opinion.
An item can be tied to a named release, so completing it feeds the changelog entry rather than needing a second write up.
The public roadmap page covers the board itself.
What a software roadmap is covers what the page is for, and six examples show the shapes it takes.
14 days, a card at signup, then $9 or $39 a month.