Magrathea Software ← Blog

Field Notes

How to bulk edit Jira issues with JQL, step by step

18 July 2026 · Magrathea Software

JQL is the most precise way to say which issues you mean, so it should also be the way you change them. This guide walks through three real bulk edits in Jira Cloud using Bulk Ops for Jira: a label cleanup, a mass reassignment, and closing a backlog of stale issues, each previewed before a single issue changes.


Before you start

Example 1: Clean up an inconsistent label

Your teams have tagged tech-debt work as techdebt, tech-debt, and TechDebt over the years, and every dashboard filter has to match all three. Let's standardize on tech-debt.

Step 1: Select the issues

labels in (techdebt, TechDebt)

Type the query in the JQL editor (it autocompletes fields and values), then run the search. The matched issues appear so you can sanity-check the set before going further.

Step 2: Build the operation

Choose Add or remove values on the Labels field: add tech-debt, remove techdebt and TechDebt. Add/remove never clobbers other labels on the issue; it only touches the values you named.

Step 3: Preview and run

The preview shows the before/after label list for every issue. Tick suppress notifications (nobody needs 2,000 "labels updated" emails), confirm, and the run executes in the background. Issues already carrying only tech-debt are counted as skipped (already correct, not an error), which also means re-running the same operation later is harmless.

Example 2: Reassign everything from a departing teammate

Someone is leaving and 340 open issues across six projects still list them as assignee.

assignee = "Erin Yao" AND statusCategory != Done

Choose Set a field → Assignee and pick the new owner (or unassign). The preview lists each issue with its before/after assignee. Project permissions still apply: if the new assignee can't be assigned in some project, those issues are reported individually as failed in the audit trail while the rest proceed.

Example 3: Close a backlog of stale issues

Every backlog accumulates issues nobody has touched in a year. Closing them in bulk, with a resolution that says why, keeps velocity reports honest.

project = OPS AND statusCategory != Done AND updated <= -365d

Choose Transition issues, pick the transition (say, Done), and set the optional resolution to Won't Do. Only issues whose workflow legally allows that transition from their current status are moved; the rest are reported per-issue in the audit trail rather than blocking the run.

After the run: the audit trail

Every run keeps a per-issue record: ok, skipped, or failed, with before and after values, exportable to CSV. Two habits worth forming:

Tips for large runs

Get started: install Bulk Ops for Jira from the Atlassian Marketplace (free up to 10 users and for runs up to 1,000 issues), or read the full user guide & FAQ.

Kyle Twogood

Kyle Twogood is the founder of Magrathea Software. He’s been building production software since 1997.