# Epic

**In short:** An epic is a large user story that is too big to finish in one iteration. It holds a place for a wanted feature until the team splits it into smaller stories.

## Explanation

An epic is a large user story (see the article User Story). It is too big to fit into one sprint or iteration, which is a short, fixed work period.

**A placeholder.** An epic marks a feature the team wants but has not yet worked out. It stands in for future discussions. Those discussions produce finer-grained backlog items. So the team defers detail until it is needed.

**Splitting.** Before implementation, the team splits the epic into a set of smaller stories. Teams often do this during backlog refinement, the regular session where the team prepares upcoming work.

**Epic and theme.** A theme is a different idea. It is a collection of user stories. A theme is therefore broader than one story or one epic.

**Ways to split.** The article Story Splitting covers this in depth. Three common cuts:

- *By operation.* The word "manage" often signals several operations, such as create, edit, and delete. Each operation can become its own story.
- *By data variation.* Some complexity comes from handling different kinds of data. Each variation can become a story.
- *By workflow step.* Splitting one step at a time is the obvious cut, but it is often wrong. The most value usually sits at the beginning and the end of a workflow.

**Size target.** After splitting, each story should be small. One guideline says 6 to 10 stories should fit into a sprint (see INVEST Criteria).

## Example

A team lists the epic "Customers can manage their saved addresses." Nobody needs it yet, so it stays a one-line placeholder in the backlog.

Later the team needs the feature. During backlog refinement, it sees that "manage" covers several operations. It splits the epic into smaller stories: add an address, edit an address, and delete an address. Each story now fits into one iteration and can be built on its own.

## Trade-offs

Keeping an epic as a placeholder avoids specifying a feature in detail before anyone needs it. The cost is that an epic is too big to deliver in one iteration. It cannot be built as written. The team must split it first, and a poor split, such as one workflow step at a time, can leave the most valuable parts for last.

An epic is split into smaller stories that fit one iteration.

```mermaid
flowchart TD
  T[Theme: collection of stories] --> E[Epic: too big for one iteration]
  E --> S1[Story: add]
  E --> S2[Story: edit]
  E --> S3[Story: delete]
```

## Checks

- Stories too large for one iteration are labeled as epics and not scheduled for implementation as they are.
- Each epic is split into smaller user stories before implementation starts.
- Epics that are not yet needed stay as placeholders without detailed specification.
- Epics are not confused with themes, which are collections of stories.

## Related

- [User Story](https://arc.fuet.ch/concepts/functional-requirements/user-story.md)
- [Story Splitting](https://arc.fuet.ch/concepts/functional-requirements/story-splitting.md)
- [Story Mapping](https://arc.fuet.ch/concepts/functional-requirements/story-mapping.md)
- [INVEST Criteria](https://arc.fuet.ch/concepts/functional-requirements/invest-criteria.md)
- [Agile Enterprise Backlog Model](https://arc.fuet.ch/concepts/functional-requirements/agile-enterprise-backlog-model.md)
- [Card, Conversation, Confirmation](https://arc.fuet.ch/concepts/functional-requirements/card-conversation-confirmation.md)
- [Iterative and Incremental Development](https://arc.fuet.ch/concepts/fundamentals/iterative-and-incremental-development.md)
- [Working with Functional Requirements (method phase)](https://arc.fuet.ch/concepts/functional-requirements/method-phase-working-with-functional-requirements.md)

## Sources

- [Epics, Features and User Stories - Mountain Goat Software](https://www.mountaingoatsoftware.com/agile/stories-epics-and-themes) — mountaingoatsoftware.com, accessed 2026-11-09
- [What is an Epic User Story? | Agile Alliance](https://agilealliance.org/glossary/epic/) — agilealliance.org, accessed 2026-11-09
- [The Humanizing Work Guide to Splitting User Stories](https://www.humanizingwork.com/the-humanizing-work-guide-to-splitting-user-stories/) — humanizingwork.com, accessed 2026-11-09
