How to see what a Jira epic costs from worklogs

By Kayabyte · Updated 1 November 2026

Short answer: Jira can list the work items in an epic and add up the time logged on them, but it has no hourly rates, so it can’t tell you what the epic cost. To get a cost, collect every worklog on the epic, its child work items and their sub-tasks once, price each with the rate that applied to its author on its date, and add them up. You can do that in a spreadsheet fed by the REST API, or let an app such as Burnrate: Project Cost Tracking & Budgets for Jira keep it current and compare it with an epic budget.

“How much has this epic cost so far?” is the question behind most project reviews. Jira holds the hours, not the money. This guide covers what to add up, the mistakes that double count, and where a spreadsheet stops. It builds on how to track project cost and budgets in Jira from worklogs, which covers rates and budgets in general.

Step 1: find everything that belongs to the epic

Step 2: avoid double counting

A parent work item’s Time spent is the time logged on that work item. Jira also shows an aggregate that includes sub-tasks (the Σ time fields). If you add the aggregate of a parent and the time of its sub-tasks, the sub-tasks are counted twice. Pick one: either the individual worklogs of every work item, or the aggregate of each top-level work item, never both. On an epic, the Σ time fields don’t reliably include the time of its child work items (in company-managed projects the epic’s aggregate doesn’t sum its children, JSWCLOUD-18871), so don’t use an epic’s own Σ value as the epic total.

Step 3: get the worklogs, not just the totals

A CSV export of work items gives time spent per work item, not per person or per day, and cost needs both: different people have different rates, and rates change over time. Use the REST API for the individual worklogs: author, date and time spent (/rest/api/3/issue/{key}/worklog for each work item, or /rest/api/3/worklog/updated and /rest/api/3/worklog/list for everything changed since a date).

Step 4: price and add up

  1. Keep a rates table: one row per person or role with an hourly rate and a start date. Add a new row when a rate changes.
  2. For each worklog, multiply hours by the rate that applied to its author on the worklog’s date.
  3. Add up the cost per epic.
  4. Compare with the epic’s budget and what is left.

Where the spreadsheet breaks

Burnrate: Project Cost Tracking & Budgets for Jira

Burnrate is the app I make for this. It reads the worklogs your team already logs and prices them with a rate card of dated cost and billing rates (default, roles and people), so a new rate never changes the cost of past work.

It’s on the Atlassian Marketplace.

FAQ

Can Jira show the cost of an epic? No. Jira shows time logged, not money, because it has no hourly rates. You need rates applied to the individual worklogs.

How do I find all work items in a Jira epic with JQL? Use parent = EPIC-1 on current Jira Cloud sites, or the Epic Link field on older queries. Sub-tasks are not included; they belong to their parent work items.

Why is my epic cost too high when I add up time spent? Usually because the time of sub-tasks is counted twice, once in the parent’s aggregate time and once on the sub-tasks themselves.

Does Burnrate count sub-tasks in an epic budget? Yes. An epic budget counts time on the epic, its work items and their sub-tasks.

What happens to the cost when a work item moves to another epic? In Burnrate its time moves with it.

Jira and Atlassian are trademarks of Atlassian. Kayabyte is an independent developer and is not affiliated with or endorsed by Atlassian.