How to export a Jira epic with its child issues and subtasks to Excel
Updated by Pledona
A common Atlassian Community question: how do you get an epic, every story under it and every subtask under those into one spreadsheet, with the parent and child relations still correct? Jira Cloud can do it, but the export is flat. Here is the JQL, the export, and three Excel formulas that turn the flat file back into a tree.
Step 1: find the whole tree with JQL
Go to Filters, switch to JQL and run:
key = ABC-100 OR parentEpic = ABC-100 ORDER BY key
Replace ABC-100 with your epic key. Atlassian's knowledge base says parentEpic returns an epic's child work items and the subtasks of those children. The key = part makes sure the epic row itself is in the export. Other useful variants:
parentEpic in (ABC-100, ABC-200)for several epics in one file.parent = ABC-100for only the direct children, without their subtasks.project = ABC AND (parentEpic = ABC-100 OR issue in linkedIssues("ABC-100"))to add work that is only linked to the epic, as in Atlassian's article.
Timeline and board views are not a reliable source here. Community answers point out that they leave subtasks out, so start from the issue search.
Step 2: export all fields
- Open More actions (...) above the results and choose Export.
- Choose Export Excel CSV (all fields). CSV and Excel exports from search cover up to 10,000 work items.
- Open the file in Excel. If everything lands in one column, see how to fix a Jira CSV in Excel.
The all fields file has an Issue id column and a Parent column on every child row. In an example export shared on Atlassian Community, Parent holds the parent's numeric issue id (for example 10640), not its key, next to a Parent summary column. That is enough to rebuild the hierarchy, because every parent row carries the same number in Issue id.
Step 3: rebuild Epic, Story, Subtask in Excel
The all fields file is wide, so copy the columns you need onto a new sheet in this order: A Issue key, B Issue id, C Parent, D Issue Type, E Summary, then any others such as Status or Assignee after them. Add three helper columns and fill each formula down from row 2:
- Level (1 epic, 2 story or task, 3 subtask):
=IF(C2="",1,IF(XLOOKUP(C2,B:B,C:C,0)=0,2,3)) - Sort key (keeps each epic's children and their subtasks together, in creation order):
=IF(F2=1,TEXT(B2,"0000000000"),IF(F2=2,TEXT(C2,"0000000000")&TEXT(B2,"0000000000"),TEXT(XLOOKUP(C2,B:B,C:C),"0000000000")&TEXT(C2,"0000000000")&TEXT(B2,"0000000000"))) - Outline (indented key and summary):
=REPT(" ",F2-1)&A2&" "&E2
Here F is the Level column. Copy the three helper columns and paste them back as values, then sort the sheet by Sort key, A to Z. Each epic is followed by its stories, and each story by its subtasks, with the Outline column indented by level. XLOOKUP needs Excel for Microsoft 365 or Excel 2021 or later; Google Sheets has it too.
Two things to check. If your site has a level above epics (Jira Premium hierarchy levels), the epic rows have a Parent as well, so use Issue Type for the level instead. And if a parent is not in the export, its children still group together under the missing parent's id, which is a quick way to spot work that sits outside your JQL.
Another native option: Plans on Jira Premium
On Jira Cloud Premium or Enterprise, a plan's timeline view can be exported with Share, Export, Export data (.csv). Only what is visible on the timeline is included, so set filters and hierarchy first, and you need Plans user or Plans administrator permission. Community users report that the plan CSV's Parent column carries the parent's summary but not its key, which can be ambiguous when two items share a title.
Option: an export app
If you export the same epic every week, or the reader wants a real Excel file without the numeric id lookups, an export app saves the copy and paste. Pledona Export for Jira exports the same JQL (for example key = ABC-100 OR parentEpic = ABC-100) to a native Excel file in your JQL's order. Its Parent column shows the parent's key and summary together (for example ABC-100 Checkout redesign), so a reader can see the tree without decoding ids, and the built-in Full detail template already includes Parent. It does not indent the tree for you; if you want the outline, use the formulas above with the key taken from the start of the Parent cell. One export covers up to 1,000 issues, comments and attachment links can ride along, and a saved filter can be exported on a schedule. Pledona Export runs entirely on Atlassian Forge with no outside servers, is free for up to 10 users, then $1.50 per user per month through Atlassian, and is pending Atlassian Marketplace review.
Which option to pick
- One epic, once: JQL plus Export Excel CSV (all fields), then sort or filter on Parent.
- A readable tree for a stakeholder: add the Level, Sort key and Outline formulas.
- You already plan in Jira Premium: a Plans CSV export of the timeline.
- The same report every week, or parent keys instead of ids: an export app.
Sources: Atlassian Support, Retrieve all child and linked work items of an Epic in Jira Cloud; Export search results; Export over 10,000 work items; Export your plan data as .csv. Atlassian Community: Export the full Jira hierarchy (Epic, Task, Subtask); How to export subtasks mapping in CSV; Parent issue key is missing when exporting Jira Plans to CSV.
Frequently asked questions
How do I export an epic with all its stories and subtasks in Jira Cloud?
Run key = EPIC-KEY OR parentEpic = EPIC-KEY in the issue search, then choose More actions, Export, Export Excel CSV (all fields). The file is flat, with a Parent column on every child row.
Does the Jira CSV export keep the hierarchy?
Not as an indented tree. Each work item is its own row. The all fields export includes Issue id and Parent columns, so you can sort or group on them in Excel to rebuild Epic, Story and Subtask.
Why does the Parent column show a number instead of a key?
In the all fields CSV, Parent holds the parent's numeric issue id. Match it against the Issue id column with XLOOKUP to get the parent key, or use an export app that writes the parent key and summary.
Does parentEpic include subtasks?
Yes. Atlassian documents that parentEpic returns the epic's child work items and the subtasks of those children. Add key = EPIC-KEY to make sure the epic row is included too.
Can Pledona Export indent the epic tree?
No. Pledona Export writes the Parent column as the parent's key and summary in a native Excel file, which makes sorting and grouping easy, but it does not indent rows. Use the Level, Sort key and Outline formulas in this guide for an outline.