Disclosure first: I build Sumline, the app in section 5. The free, built-in options come first, and for many teams one of them is enough. Facts checked 16 October 2026.
Epic Sum Up Free put a progress bar on your epics: time spent, original estimate and remaining estimate, summed from the work items below. Its Marketplace listing said, until it went paid on 7 October:
"This app will turn from the free Epic Sum Up Free App to a paid app called ESU Lite on October 5th 2026."
ESU Lite's price went up on 13 October: free for up to 10 users, then $0.11 per user per month for 11–100, falling to $0.04 by 1,000. If your team reads that bar every sprint, here are your options, cheapest first.
Which option fits
What you need | Option |
|---|
A rough "how done is this epic" | Jira's timeline progress bar (free) |
Exact hours for a report now and then | A filter and a CSV export (free) |
A number on the epic that keeps itself up to date | An Automation rule (free, needs a Jira admin) |
No change at all for your team | Pay for ESU Lite or ESU |
Story points and time from every level, on the epic, with nothing to set up | Sumline (section 5) |
The same in team-managed spaces, or across team-managed and company-managed | Sumline (section 5) |
Every epic's figures in one table | Sumline (section 5) |
1. What Jira already does
- Time rolls up one level, no further. A story's time tracking includes its sub-tasks (tick "Include subtasks"), and an epic shows its stories' own time. Time logged on sub-tasks never reaches the epic. Atlassian, on JRACLOUD-70150: "Time estimate and time tracking currently roll-up to 1 level up based on the hierarchy. The roll-up doesn't go beyond that."
- Story points don't roll up at all. The request is closed as "Not Being Considered" (JRACLOUD-90636).
- The timeline's progress bar shows how much of an epic's children are done, sub-tasks included. It counts work items, not hours or points, and only children in the epic's own space.
- Plans (Premium and Enterprise) rolls estimates up every level, initiatives included, but the totals live in the plan, not on the epic.
The gap: on Free and Standard, nothing on the epic itself adds up the time logged at every level below it. That is exactly what Epic Sum Up Free did.
2. A filter and an export (free, five minutes)
Good enough if someone needs the epic's hours for a monthly report rather than a live bar.
- Search for
parent = ABC-123 (your epic's key), or parent in (ABC-1, ABC-2) for several epics. - Add the columns Σ Time Spent, Σ Original Estimate and Σ Remaining Estimate. The Σ fields add each story's sub-tasks to the story's own time.
- Export to CSV and total the columns. Times export in seconds: divide by 3,600 for hours. Add the epic's own time if anyone logs work on the epic itself.
3. An Automation rule (free, needs a Jira admin)
Atlassian publishes a rule that sums story points into the parent. Updated for the Parent field, and writing into a field of its own so it never overwrites anyone's estimate:
- Create a number field, Story points rollup, and add it to your epics.
- Trigger: Field value changed → Story Points (team-managed spaces: Story point estimate).
- Condition: Issue Type is one of Story, Task, Bug.
- Branch: Parent. Inside it, Lookup work items with
parent = {{issue.key}}, then Edit work item → Story points rollup = {{lookupIssues.Story Points.sum|0}} (team-managed: {{lookupIssues.Story point estimate.sum|0}}).
For time, add as you log: trigger Work logged (created only, or an edited worklog is added twice), condition Issue Type is Sub-task, branch to Parent, and set a number field Sub-task hours to {{#=}}{{issue.Sub-task hours|0}} + {{worklog.timeSpentSeconds}} / 3600{{/}}. A second rule, triggered when a story's Sub-task hours changes ("Allow rule trigger" ticked), branches to the epic and writes {{lookupIssues.Sub-task hours.sum|0}} from a lookup of parent = {{issue.key}}.
What to watch for:
- The totals are only as fresh as the triggers. A story moved to another epic, a deleted story, an edited or deleted worklog, and anything that existed before the rule leave a total wrong until something else changes.
- A lookup returns at most 100 work items, and every run counts toward your Automation usage.
- If a story and its sub-tasks both carry points, summing both levels counts the work twice.
4. Stay with ESU
- No migration: ESU Lite keeps the time bar on every epic, and admins can add bars for status categories and completed work items. ESU Lite is free for up to 10 users, then $0.11 per user per month for 11–100.
- The full app, ESU, adds story points, budgets and a dashboard gadget. It is free for up to 10 users, then $0.90 per user per month for 11–100 on the Marketplace.
- Price it for your whole site: a Cloud app is billed for every Jira user, not just the people who open it. A 300-user site paying for a bar two PMs read is worth a second look.
5. Sumline (disclosure: I build it)
ESU Lite brings back the time bar. Sumline adds up everything under the epic: story points and time, at every level, in every kind of space.
- Every level, nothing to set up: story points, time spent, original and remaining estimate, from sub-tasks through stories to the epic, and to initiatives on Premium. No rules, no fields to create.
- Right in team-managed and company-managed spaces: it finds each space's story points field, so a tree that spans both adds up.
- Nothing counted twice: when a story and its sub-tasks are both estimated, one level counts and the value left out is shown. Unestimated work is named, not counted as zero.
- Every epic in one table, across the spaces you choose, and a dashboard gadget.
- It only reads, so its totals are not a field you can search with JQL.