How to export a Jira sprint to Excel, including completed, not completed and removed work
Updated by Pledona
The sprint report in Jira Cloud has no export button, and Atlassian Community has years of threads asking for one. You can still get a sprint into Excel with every outcome the report shows. Here is the JQL for each part, the one part JQL cannot find, and how to turn the files into a sprint review sheet.
What the sprint report can and cannot give you
- The work item lists export, the charts do not. The burndown chart has no export; a screenshot is the usual answer.
- The report is board specific. Atlassian's docs say it only includes work items that match your board's saved filter, so add the same project or filter to your JQL.
- Done means the right-most column. The report treats a work item as done when its status is mapped to the board's right-most column, not when it has a resolution.
- Subtask estimates are left out. The report only counts estimates on parent work items.
- Scope changes are marked. Work items added after the sprint started carry an asterisk on the report.
Step 1: find the sprint ID
Sprint names repeat across boards, so use the number. Two ways to get it:
- Open your board, then Reports, Sprint Report, pick the sprint and select View in issue navigator. The search that opens is already scoped to that sprint, and its JQL shows the ID.
- In the JQL editor, type
sprint =and start typing the sprint name. Atlassian's JQL reference says the suggestions show sprint dates and the sprint ID in brackets.
The examples below use sprint 123 in project ABC. Replace both with your own.
Step 2: pick the JQL for the part you need
- Everything still assigned to the sprint:
project = ABC AND sprint = 123 ORDER BY status, assignee. When a sprint is completed, unfinished work moved to the next sprint or the backlog keeps the old sprint in its Sprint field, so this returns both completed and carried over work. - The active sprint, whatever its name:
project = ABC AND sprint in openSprints(). Save it as a filter and it never needs editing between sprints. - Done work in a closed sprint:
project = ABC AND sprint = 123 AND statusCategory = Done AND sprint not in openSprints() AND sprint not in futureSprints(). This is close to the report's Completed list but not identical: it uses today's status, while the report uses the board column at the moment the sprint closed. For an older sprint, work that slipped into a later sprint that has since closed also matches, so addAND sprint not in (124, 125)with the IDs of the sprints that followed. - Carried over to a later sprint:
project = ABC AND sprint = 123 AND (sprint in openSprints() OR sprint in futureSprints()). This works while the next sprint is still active or planned. - Unfinished and sent back to the backlog:
project = ABC AND sprint = 123 AND sprint not in openSprints() AND sprint not in futureSprints() AND statusCategory != Done. - Every closed sprint for a velocity sheet:
project = ABC AND sprint in closedSprints().
Step 3: export with the right columns
- Run the JQL in Filters, Search work items, and add the columns you need to the list: Key, Summary, Work type, Status, Assignee, Sprint and your estimate field.
- Open More actions (...), then Export, then Export Excel CSV (current fields). Search exports cover up to 10,000 work items. Atlassian also offers an Open in Microsoft Excel icon above the results.
- If the file opens as one column or with broken characters, see how to fix a Jira CSV in Excel.
Two things trip people up here. First, the estimate field: company managed spaces usually estimate in Story Points and team managed spaces in Story point estimate, and they are different fields, so check which one has numbers before you sum. Second, the Sprint field keeps every sprint a work item has been in, and the CSV export writes each value into its own column with the same Sprint header. A story that slipped twice gets three Sprint columns. Atlassian tracks this as a long standing request, and Community experts advise against working out the current sprint from the order of those columns. The JQL in Step 2 already sorts work into outcomes, which is more reliable.
Step 4: get the removed work off the sprint report
Work pulled out of a sprint while it was running does not keep that sprint in its Sprint field, and JQL cannot search Sprint history: Atlassian's JQL reference lists WAS and CHANGED as unsupported for Sprint, and the feature request for it has been open for years. So no query returns the removed list. The sprint report still shows it:
- Open the sprint report for the sprint and scroll to Work items removed from sprint.
- Select the table, copy it and paste it as plain text (values only) into a new sheet.
- Add an Outcome column and fill it with Removed.
The same copy and paste works for every section of the report, and it keeps the asterisk that marks work added after the sprint started, which a JQL export loses. A Community contributor puts it at about ten minutes per sprint with nothing to install.
Step 5: build the sprint review sheet
- Export once per outcome with the Step 2 queries: Done, Carried over, Back to backlog. Paste the removed list from Step 4.
- Put all of them on one sheet with the same columns, and add an Outcome column that says which query each row came from.
- Insert a PivotTable: Outcome in Rows, Assignee in Columns if you want it, and Sum of your estimate field in Values. Add Count of Key for a work item count.
- For commitment against delivery, copy the report's completed and not completed tables the same way and mark rows with an asterisk as Added after start. The estimate of the unmarked rows is what the team committed to; the Done rows are what it delivered.
Option: an export app for a sprint you report on every two weeks
Doing four exports and a paste every sprint gets old. Pledona Export for Jira runs the same JQL into a native Excel file, so project = ABC AND sprint in openSprints() or any Step 2 query works as is. It lists every custom field on your site in its field picker, so you can save a template with Sprint and your estimate field once and reuse it. The Sprint column holds all of a work item's sprint names in one cell, separated by commas, instead of one column per sprint. A saved filter or JQL can also run as a weekly export before your sprint review: the file is attached to a Jira work item you choose, and Jira emails the people you pick a link to it. Schedule times are set in UTC.
Know its limits. It exports search results, so it cannot see the sprint report's removed list, asterisks or burndown; use Step 4 for those. Every cell is written as text, so convert the estimate column to numbers in Excel (Convert to Number or =VALUE()) before you sum it. One export covers up to 1,000 work items, plenty for a sprint but not for years of closed sprints at once. 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 sprint, once: View in issue navigator from the sprint report, then Export Excel CSV (current fields).
- A full sprint review with outcomes: the Step 2 queries plus the removed list from Step 4, then a PivotTable.
- The same sprint file every two weeks: a saved filter on
sprint in openSprints()and a scheduled export.
Sources: Atlassian Support, View and understand the sprint report; JQL fields (Sprint); Complete a sprint; Export search results; Export over 10,000 work items. Atlassian Community: How to export Jira Sprint Report including Completed, Not completed and removed to Excel; Can we export Current Sprint to Excel; Extract details of a Sprint Report; JQL: how to filter stories spilled over multiple sprints; Is there a query to find out which tickets move from the current sprint; Need ability to report on Current Sprint in a single Sprint column.
Frequently asked questions
Can I export the Jira sprint report to Excel?
Not with one button. Open the sprint report, select View in issue navigator and export the results with Export Excel CSV. The burndown chart cannot be exported, and removed work items have to be copied from the report.
How do I export the current sprint in Jira?
Search for project = ABC AND sprint in openSprints(), then choose More actions, Export, Export Excel CSV (current fields). Save the search as a filter so it works for every sprint.
How do I find work items removed from a sprint with JQL?
You cannot. JQL does not support WAS or CHANGED on the Sprint field, and work pulled out of a running sprint loses that sprint value. Copy the removed list from the sprint report instead.
Why does my Jira export have several Sprint columns?
The Sprint field keeps every sprint a work item has been in, and the CSV export writes each one to its own column. Use JQL to split the export by outcome instead of reading the columns, or use an export app that writes all sprints into one cell.
Does the sprint report count subtask story points?
No. Atlassian's docs say only estimates on parent work items are included in the sprint report, so sum the parent rows when you rebuild it in Excel.