Epics
Group related tasks across sprints and follow a bigger piece of work from start to finish
An epic is a large body of work that is too big for one sprint: a feature, a launch, a migration. You break it into tasks, those tasks land in whichever sprints (or sections) suit them, and the epic shows how far the whole thing has come.
Epic → Task → Sub-task
Work in Decuga has three levels. Each level has one job:
| Level | What it is | Lives in | Typical size |
|---|---|---|---|
| Epic | A goal or deliverable that groups tasks. Has its own code (e.g. DT-EP-3), owner, dates and status. | No sprint, no stage. It is only a container. | Weeks to months |
| Task | A piece of work someone can pick up and finish. Has a stage, assignee, points and due date. | One sprint (or the backlog) or one section, and optionally one epic. | Days |
| Sub-task | A step inside a task. Finishing all sub-tasks is part of finishing the task. | Always the same sprint and the same epic as its parent task. | Hours |
A task belongs to at most one epic, and an epic cannot sit inside another epic. Keeping it to one level keeps the picture readable: the epic answers “what is this for?”, the sprint answers “when?”, the section answers “where does it sit?”.
Epic, sprint or section?
They answer different questions, and a task can have all three at once.
| Answers | A task can be in | Used for | |
|---|---|---|---|
| Epic | What is this part of? | One epic (or none) | Following a feature or initiative across time |
| Sprint | When will we do it? | One sprint (or the backlog) | Planning a time-boxed chunk of work |
| Section | Where does it sit in the list? | One section (Group Tasks) | Organising tasks that have no sprint |
Creating an epic
- Open Epics in the sidebar under Project Management.
- Click New Epic.
- Give it a title. Optionally add a description, colour, status, owner, start and target dates, and the roadmap item it delivers.
- Click Create. It gets a code such as
DT-EP-1.
| Field | Notes |
|---|---|
| Title | Required, up to 200 characters. |
| Status | Planned, In progress, Done or Cancelled. It follows the tasks automatically (see below), and you can still set it yourself. A Cancelled epic is never changed automatically. |
| Owner | Any active member of the project. |
| Start / target date | Optional. The target cannot be before the start. If you leave them blank, the epic shows the span of its tasks’ own dates. |
| Colour | Used for the epic chip everywhere it appears. |
| Roadmap item | Optional link to the roadmap feature the epic delivers (needs the roadmap, a Business feature). |
Putting tasks in an epic
There are five ways to do it:
- In the task: open a task and choose the epic in its Epic card.
- From the epic, a new task: open the epic and type a title under Tasks. You are asked where it should go (the Backlog, a sprint, or a section) before it can be added. Nothing is pre-selected.
- From the epic, existing tasks: click Link existing tasks, search by title or code, tick the tasks and link them. A task that is already in another epic moves here. Sub-tasks are not listed: they follow their parent.
- In bulk: select several tasks in the Backlog and use Epic in the bar at the bottom.
- By API, MCP or AI chat: pass
epicIdwhen creating or updating a task.
Taking a task out of an epic is the same: pick No epic. Finished or cancelled epics are hidden from the pickers, except on a task that is already in one.
The Epics page
The page lists every epic as a row, like the task lists, with its status, owner, dates and a progress bar. Filter by status, or search by title or code. Click an epic to open it in a modal laid out like the task modal: two columns that scroll on their own, with the dates, description, labels, tasks, attachments, documents and whiteboards on the left, and the progress, status, owner, roadmap feature and a Comments / Activity tab on the right.
| In the epic modal | What it does |
|---|---|
| Description | Rich text, edited in place. |
| Tasks | The epic’s tasks with their sub-tasks underneath. Add a new task (choosing backlog, sprint or section), link existing tasks, or take a task out with the ✕ on its row. |
| Attachments | Upload files (up to 25 MB each, counted against your storage like task attachments), download them, delete them. You can drop files onto the box. |
| Comments | A comment thread with @mentions. Mentioned people get a notification that opens the epic. |
| Activity | The epic’s own history: edits, status and owner changes, labels, links, and tasks joining or leaving it. |
| Progress, status, owner, dates | On the right. Change the status, owner or dates straight from the modal. The title is edited in place: hover it and click the pencil next to it. Click the coloured bar at the left of the header to change the colour. |
| Labels | Free-form labels, with suggestions from the labels already used in the project. |
| Roadmap feature | Link the epic to the roadmap feature it delivers (if your plan has the roadmap). |
| Documents | Link AI documents (PRD, design, architecture, …) from the project. |
| Whiteboards | Link whiteboards from the project. |
An epic has its own address. …?section=pm&tab=epics&epicId=<id> opens the Epics page with that epic already open, so you can share a link to it.
People who can manage epics also see edit and delete buttons. Deleting an epic never deletes its tasks: they stay in their sprints and sections and simply lose the epic. Its files and comments are deleted with it.
Epics across the app
Wherever a task is shown, its epic is shown as a coloured chip, so you can see at a glance what a task is for:
| Screen | What you see |
|---|---|
| Sprint Board and Group Tasks Board | A chip at the top of every card. |
| Backlog | A chip after the title, and the Epics filter. |
| Sprint list and Group Tasks list | A chip after the title (no filter on the lists). |
| Gantt | The epic code on each bar and on unscheduled tasks. |
| Calendar | A colour dot in the month view, the epic code in the week and no-due-date views. |
| Task panel | An Epic card with a picker, and the change recorded in the activity log. |
| Epics page | Progress and the task list for each epic. |
Filtering
The boards, the Backlog, the Gantt and the Calendar have an Epics filter next to the other filters. Pick one or more epics, or None to see the tasks that are in no epic. The list views do not have one; they show the chip.
The filter works together with the others (assignee, status, labels, search). A task has to match every filter you have set. Filters are for the session and are not saved with a board.
When exactly one epic is selected in the Backlog, tasks you create there start in that epic.
Progress
An epic’s progress is worked out from its tasks every time you look:
- Percentage = tasks done ÷ tasks in the epic.
- Not started / in progress / done follow each task’s status (New, In progress, Done).
- Story points done and total are shown when tasks have points.
- Overdue counts tasks that are not done and whose due date has passed.
The epic’s status follows its tasks too: it becomes In progress as soon as any task (or sub-task) in it is In progress, and Done when every task in it is Done. A Done epic that gets a new or reopened task goes back to In progress. Cancelled epics, and epics with no tasks, are never changed automatically. When an epic moves to In progress, whether you set it or a task starting does, its start date is set to that day if it has none (unless its target date has already passed).
Rules to know
- A sub-task always has its parent’s epic. It cannot be given a different one on its own; the epic picker on a sub-task is locked. Change the parent’s epic and every sub-task (and their sub-tasks) follows. A new sub-task takes its parent’s epic automatically.
- Making a task a sub-task of another moves it into that task’s sprint and epic. Detaching it lets it choose its own epic again.
- An epic spans sprints. Its tasks can sit in different sprints, or the backlog. Moving a task to another sprint never changes its epic.
- Recurring tasks stay in the same epic each time they repeat.
- Deleting an epic keeps every task. Deleting a roadmap item clears the link on epics that delivered it. Deleting a project deletes its epics.
- Epics are per project. A task can only be put in an epic of its own project.
Permissions
Reading epics needs only project membership. The rest follows the permission you already use for the same thing on a task:
| Action | Permission |
|---|---|
| Create, edit, delete an epic (including its description, labels, status, owner, dates and roadmap feature) | Manage epics |
| Put a task in an epic, link or unlink existing tasks | Update tasks |
| Add a new task from the epic | Create tasks |
| Upload and delete attachments | Manage task attachments (the same permission as on tasks) |
| Link documents | Link documents |
| Link whiteboards | Manage whiteboards |
| Comment | Comment |
| Role | Create, edit, delete epics | Put tasks in epics |
|---|---|---|
| Project Owner, Product Owner, Product Manager, Scrum Master | Yes | Yes |
| Scrum Team Member | No (can still link tasks, attach files, comment) | Yes |
| Service Desk roles, Change Manager | No | No (no task permissions) |
| Custom roles | Only if you grant “Manage epics” in the role editor | With “Update tasks” |
Importing epics from Jira
The Jira connector brings Jira epics across as Decuga epics and keeps the structure Epic → Task → Sub-task, on Pro and above.
| In Jira | In Decuga |
|---|---|
| Epic issue (type Epic) | An epic. Title, description and target date (due date) are copied. Jira’s status category sets the epic’s status: To Do → Planned, In Progress → In progress, Done → Done. |
| Story, task or bug whose parent is an epic | A task in that epic. |
| Story with an “Epic Link” (older company-managed projects) | A task in that epic. Decuga finds the Epic Link field for your site automatically. |
| Sub-task | A sub-task of its parent task, in the same sprint and epic as the parent. |
- Epics are imported before the issues, so every issue can point at its epic. Epics ignore the status filter, because a task may belong to an epic that is already done.
- Running the import again updates the epics already imported instead of creating copies. Title, description, status and target date follow Jira; colour, owner, start date and roadmap link you set in Decuga are kept.
- A re-import does not take a task out of an epic you chose in Decuga.
- A sub-task whose parent is not part of the import (filtered out, or in another Jira project) is imported as an ordinary task.
- On Free and Starter, epics are not created. Jira epics keep coming in as ordinary tasks, as before, and nothing is lost. Upgrade to Pro and re-run the import to get real epics for new imports.
API, webhooks & AI
| What | Details |
|---|---|
| REST API | All under /api/projects/{projectId}/epics: list, get, create, update, delete, /progress and /{epicId}/tasks (list, link and unlink tasks), /activity, /attachments, /documents and /whiteboards. Pro and above for every call. Tasks carry epicId (set it, or send clearEpic: true to remove it). |
| Webhooks | EPIC_CREATED, EPIC_UPDATED, EPIC_DELETED. See the webhooks docs. |
| AI chat and MCP | Tools: list_epics, get_epic_progress, list_epic_tasks, create_epic, update_epic, delete_epic, and epicId on create_task and update_task. Ask “how is the Checkout epic going?”. |
| Activity | Epic created and deleted, and every change of a task’s epic, appear in the activity feed and the task’s history. |
Plan requirements
| Feature | Free | Starter | Pro | Business |
|---|---|---|---|---|
| Epics and epic filters | - | - | ✓ | ✓ |
| Epic progress and the Epics page | - | - | ✓ | ✓ |
| Jira epics imported as epics | - | - | ✓ | ✓ |
| Epics in AI chat, MCP and API | - | - | ✓ | ✓ |
| Linking an epic to a roadmap item | - | - | - | ✓ (roadmap is a Business feature) |
FAQ
Can a task be in two epics?
No. One epic per task keeps progress honest. If work really serves two goals, put it in the main one and mention the other in the description, or use labels.
Can an epic contain another epic?
No. There is one level of epic. If you need a layer above, use the roadmap or goals to group epics.
Do epics have a sprint?
No. An epic spans sprints. Its tasks are scheduled into sprints individually.
Why does my sub-task’s epic picker look greyed out?
A sub-task always has its parent task’s epic. Change the epic on the parent and the sub-task follows.
Why is the epic’s task count lower than the number of tasks I see?
Sub-tasks are not counted separately; they are part of their parent task. They are listed under it in the epic.
Does closing an epic close its tasks?
No. Setting an epic’s status changes nothing else. It works the other way round: the epic follows its tasks.
Does the epic status update by itself?
Yes. As soon as any task in the epic is In progress, the epic moves to In progress. When every task in it is Done, the epic becomes Done. If a Done epic gets a new or reopened task, it goes back to In progress. Cancelled epics and epics with no tasks are left alone. Each automatic change is recorded in the epic’s activity.