Initiatives, epics, and features
Roadmap Flow gives every item one of three levels, and lets you nest them. This exists for one reason: a roadmap with a lot of items becomes hard to read, and levels let you fold it down to the parts you are actually discussing.
The three levels
A big bet that spans quarters.
"Expand into the EU."
A meaningful chunk of that bet.
"Local date and currency formats."
One shippable piece.
"Dates in exports follow the OS locale."
An item with no level set counts as an epic. That is deliberate: a roadmap item is already epic-shaped — bigger than a feature, smaller than an initiative — so a roadmap you built before levels existed still means exactly what it always did.
Telling them apart on screen
Every item carries its level as a coloured badge: epics orange, features purple — the Azure DevOps colours, borrowed rather than invented so they are already familiar — and initiatives green, since ADO has no level above an epic to borrow from. The same colour runs down the left edge of every card, as it does on an Azure DevOps board. In Stream view the indentation is backed by a rail in the same colours, one per level of nesting, so the shape of the roadmap reads without having to work it out.
Prefer other colours? Config → Level colours sets them for the roadmap, and everyone who opens it sees the same. On a roadmap that does not use levels, the card edge keeps showing status instead.
The colour is never the only signal. The level is written on the badge wherever there is room, and where there is not — a narrow Timeline column — the word is dropped but the badge still names it to a screen reader and on hover.
The badges only appear on a roadmap that actually uses levels. If you have never set one, nothing changes.
There are no stories, on purpose
Three levels is the whole model, and a fourth will not be added.
A story is a delivery detail. It belongs in the tool your delivery team works in, alongside estimates, sprints and assignees. The moment a roadmap carries stories it stops being a roadmap and becomes a work breakdown — and then nobody can read it in a review, which is the problem levels were added to solve.
If an item feels smaller than a feature, it is probably not a roadmap item at all. Link to it from one instead.
What can sit under what
An item sits under something exactly one level above it:
- a feature can sit under an epic;
- an epic can sit under an initiative;
- an initiative is always top level.
Roadmap Flow only ever offers you legal parents, so you cannot put a feature directly under an initiative by accident.
Nothing is forced. An epic with no initiative above it is perfectly normal, and so is a feature that belongs to no epic. Use nesting where it helps you read the roadmap and leave it alone everywhere else.
When an item is in the wrong place
It still happens, usually on the way in: an import brings an "Epic 1622035" across as a feature, and everything that was under it is now a feature sitting under a feature. Nothing disappears — the item stays on your roadmap, and the Check tab lists it under Structure.
Open the item and the panel says what is wrong in one sentence, then offers the fixes that apply, each one press:
- Make the parent an epic — when the parent's level is the mistake. If that would leave the parent itself in the wrong place, the button says so before you press it.
- Move it under a named item — when the right parent is already higher up the same branch.
- Make this an epic — when it is this item's level that is off.
- Move this to the top level — always there, for when none of the others is what you meant.
The Sits under box shows the current parent even when it is the wrong level, marked in amber, so the warning and the box never disagree.
When an import got a whole batch of parents wrong, the Check tab offers to fix them together — Make these 12 epics — with Undo. It only offers that for parents where changing the level puts things right and moves nothing else.
Changing an item's level yourself can have side effects too: its parent may no longer fit, and what sits under it may no longer fit under it. The panel tells you what happened straight afterwards, with Undo beside it.
What sits under an epic or initiative
Open an epic and, under its level and parent, Under this epic lists its features — number, name and target, soonest first. Click one to open it; Show on canvas rings them all on the roadmap. An initiative lists its epics the same way.
The last line of the list adds one: type a name and press Enter. It is created right under this epic — in its streams and horizon, with any dates it lacks taken from it — and the line is ready for the next, so five features take five names and five Enters. Open any of them afterwards to fill in the rest.
Dates that follow the parent
Put a feature under an epic and it takes the epic's dates — but only the ones it is missing. A feature with no target gets the epic's target; one with no start gets the epic's start. A date you already set is never touched, and a date that would end before the feature starts is not copied.
The panel says what it took — Took its dates from "Single sign-on": start Oct 2026, target Dec 2026 — with Remove these dates beside it. Removing them keeps the feature under the epic; it only takes the dates back. Either way, change them like any other date if this one runs differently.
When a feature is due after its epic, the panel offers both ways to settle it, under the dates:
Brings this item in to the epic's target.
Not offered if it would end before it starts.
Moves the epic out to cover this item.
Says so afterwards, with Undo.
The same goes for an epic under an initiative. A feature lined up for an earlier horizon than its epic — Now under a Later epic — is listed under Needs attention, with Move this to Later beside it.
Create an epic and put this under it starts the new epic with this item's dates, as well as its workstream and horizon, so it is never born undated.
Moving a parent's target works the other way round. Change an epic from Dec 2026 to Mar 2027 and, if items under it were also due Dec 2026, the panel asks: 2 items under it were also due Dec 2026 — Move them to Mar 2027 or Leave them. Only items due on exactly the old date are offered, at every level below, because those are the ones that took their date from it; one due at any other time is its own decision and is left alone. An item that would then be due before it starts is not moved, and the note says so. Undo puts every moved date back at once.
Folding the roadmap
In Stream view, a workstream with nesting shows it as an indented tree. Each parent has a control to fold it away, and Collapse all folds everything at once — leaving initiatives and anything with nothing above it, which is the high-level read.
Showing: Initiatives / + Epics / + Features does the same job from the other end: rather than folding parents one at a time, it draws the roadmap only down to the level you pick. It is in every view. On a roadmap that never adopted levels neither control appears — use Collapse streams instead, which folds the workstream rows themselves and works on any roadmap.
A folded item tells you how many things it is hiding, so nothing disappears quietly.
Folding is just a way of looking. It is not saved into your workspace, so it never travels to anyone you share the roadmap with.
Board and Timeline cannot nest — a card belongs to one status column or one time period, not to a branch — so they let you choose which levels to show instead, and each card names the item it sits under. Stream view is the one place that shows the structure itself.
On the Timeline, an item needs dates to be placed on a calendar. If you plan the usual way — direction at the top, dates on the features — an initiative or epic with no dates of its own is spanned across the period its items occupy. On Board and Timeline that holds at every Showing level: the epic sits on its own line above its features, and Showing: Initiatives gives you the roadmap at initiative altitude instead of an empty calendar. Rank by ranks it by that span too. A span worked out this way is marked with a ~ and a dotted underline, because it is not a date you committed to. Only dates you set yourself reach your CSV, Markdown and JSON exports.
Levels in what you export
Whatever you export carries the structure:
- Markdown nests items under their parents.
- CSV gains Level and Parent columns at the end.
- Every export follows What goes in on the Share tab: each level in or out, so you can hand a stakeholder the one-level view without removing anything from your roadmap. Cards edge in their level colour and every feature names its epic.
- The handover brief says what level an item is and what it is part of.
The roadmap transfer file always contains everything, whatever you have chosen to show, so sharing a roadmap never loses detail.
When a level is wrong
If an item ends up somewhere it cannot legally sit — usually after changing a parent's level — the Check tab reports it under Structure and tells you what to fix. The item stays visible on your roadmap the whole time. Roadmap Flow will not hide your work because it disagrees with where you put it.