Epics
An epic is a ticket type for a large piece of work that spans boards: something you track rather than work on directly. The work lives in its sub-tickets, on whichever teams’ boards it belongs; the epic shows how far that work has got.
Epics and normal tickets
| Normal ticket (bug, feature, task) | Epic | |
|---|---|---|
| Where it lives | On a board, or in the backlog until it’s moved to one | Always in the backlog; it can’t be moved onto a board or planned into a sprint |
| Estimate | Its own, on the board’s scale | None; its size is the total of its sub-tickets’ estimates |
| Progress | Done or not | “3 of 5 done · 13 points · 2 not sized”, from its sub-tickets |
| Sub-tickets | Can have them, usually on the same board | Expected to have them, on any board or the backlog; its page groups them by board |
| Nesting | Can sit under another ticket | Can’t sit anywhere inside another epic, however deep |
| Finishing | Moved to Done, or closed in the backlog | Closes by itself when all its sub-tickets are done, or you can close it by hand |
| Leaving a board | Its unfinished sub-tickets on that board go with it | Converting a ticket to an epic sends only the epic to the backlog; its sub-tickets stay on their boards |
Otherwise an epic is a ticket like any other: a key (e.g. TL-412), title, description, labels, priority, comments, attachments and history, and AI agents work with it through the same tools.
When to use which: a normal parent ticket when the work belongs to one team on one board; an epic when the work spans teams or sprints and you want to see its progress overall.
Making an epic
- Choose Epic as the type when adding to the backlog, from New ticket, or when editing any ticket. It isn’t offered when creating a ticket on a board.
- Converting a ticket: edit it and change its type to Epic. If it’s on a board, it moves to the backlog and loses its estimate; its sub-tickets stay where they are. A ticket with an epic above or below it can’t become one.
- Adding work: make tickets its sub-tickets, from any board or the backlog.
Where epics show up
- Project page: an Epics tab beside the Backlog, each epic with a progress bar and its size.
- An epic’s page: its sub-tickets grouped by board (the backlog last), with its progress and size.
- Boards and the backlog: an Epic filter beside Priority shows only the work under one epic, at any depth. It’s kept in the page address, so a filtered view can be shared.
- Backlog: an Epics button in the type filter.
Epics on roadmaps
Link an epic to a roadmap milestone (Link a ticket or epic…, then Link an epic…) instead of linking each of its parts. The milestone then counts the epic’s sub-tickets, not the epic itself, worked out every time the roadmap loads, so work added to the epic later counts with nothing to relink.
- Epics and ordinary tickets can be linked to the same milestone. A ticket linked directly that’s also in a linked epic is counted once.
- It counts the epic’s direct sub-tickets, the same ones its own progress counts.
- Public roadmaps show the counts, never the tickets.
Moving a parent off its board
When a parent ticket leaves its board, its unfinished sub-tickets on that board, at any depth, go with it: to the backlog, or to the new board’s first column. Finished sub-tickets stay as the old board’s history, and ones on other boards stay with those teams.
- If any sub-ticket can’t move (the sprint ends today, the new board needs an estimate, or it’s waiting for review), nothing moves, and the message names that sub-ticket.
- Send to backlog says what will go with it before you confirm, e.g. “Sending it to the backlog also moves its 2 open sub-tickets on this board: TL-5, TL-6.”
For AI agents
Agents connected over MCP can list a project’s epics with progress (list_epics), filter the backlog and search by epic (epic on list_backlog and search_tickets), and link an epic to a milestone with set_roadmap_item_tickets, the same as a ticket.