How to Deep Clone Jira Issues (with Sub-tasks & Full Hierarchy)

Deep clone Jira issues with their full hierarchy (Epics, Stories, Tasks and sub-tasks) across projects, with field and component mapping preserved.

5 min read Updated Jira Cloud Company-managed & Team-managed

What you'll learn

  • Cloning a single issue with its full hierarchy
  • Bulk cloning via JQL / Issue search
  • Mapping issue types & components across projects
  • Resolving custom-field value differences

Requirements

  • Atlassian Cloud Jira (any plan)
  • Easy Clone installed on your site
  • Project admin or higher on the destination project

Try it now

Free 30-day trial

No credit card required

Install on Atlassian Marketplace

Cloning a single epic together with all its stories and sub-tasks, then reusing it for the next round, is walked through in cloning an epic with all its child issues.

Cloning issues

Clone from an issue

  • From any Jira issue, click the three-dot menu in the top right and choose Easy Clone.
  • The Easy Clone modal opens with the following fields:

Easy Clone modal in Jira, destination project and clone options

  • Destination project - The project the cloned issue will be created in.
  • Summary - The summary of the cloned issue. Prefilled from the source.
  • Clone child work items and sub-tasks - Keep the full hierarchy. Untick to clone only the parent.
  • Clone work item status - Replicate the source status on the cloned issue instead of starting at the workflow default.
  • Clone comments - Copy the comment thread across to the cloned issues.
  • Clone attachments - Re-upload every file attached to the source issues onto the clones.
  • Preserve the links between work items - Keep “Relates to”, “Is blocked by”, “Duplicates” and other issue links across the cloned tree.
  • Add “clones” link to original work item - Adds a “clones” issue link from each new clone back to its source.

Click Next to move on to project matching.

The fastest way to clone many issues in bulk is from a saved filter or JQL: select the whole result set, then clone it in one run.

  • In Jira, open the work items search and filter to the set you want to clone.

Jira issue search, JQL filter selecting the work items to bulk-clone

  • Open the Apps menu at the top right of the result list and choose Bulk Clone (Easy Clone).

Jira Apps menu showing the Bulk Clone (Easy Clone) entry

  • The bulk modal opens with the same options as the single-issue clone, plus a Source (JQL) field:

Easy Clone bulk modal, JQL source and clone options for bulk cloning Jira issues

  • Source (JQL) - The JQL query that selects every issue to clone.
  • Destination project - The project the cloned issues will be created in.
  • The remaining options (children, status, comments, attachments, links, “clones” backlink) behave exactly as in the single-issue clone above.

Click Next to move on to project matching.

Issue type matching

Source and destination projects often use different work types. Easy Clone shows the source types on the left and lets you map each to a type that exists in the destination.

Easy Clone project matching screen, mapping work types, components and assignees between source and destination projects

The same screen lets you bulk-reassign Assignee and Reporter (set to a specific user, set to yourself, or leave unchanged), and opens the Customize fields picker if you need per-field control over what carries over.

Click Next. If the projects share components or have differing custom-field options, you will see the matching steps below; otherwise the clone starts immediately.

Components matching

If the source issues have components, you choose a matching destination component for each one.

Easy Clone components matching screen, mapping source components to destination components

Field value matching

When dropdowns, checkboxes or multi-select custom fields use different allowed values in the source and destination, Easy Clone surfaces the gaps so you can pick a target value for each one. No mismatched values get silently dropped.

Easy Clone field value matching screen, mapping custom-field option values between projects

It’s happening!

The clone runs as a background job. You can watch the hierarchy clone in real time, cancel any time, and the completion screen lists every cloned issue with a direct link to its new copy.

Easy Clone completion screen, cloned Jira hierarchy with direct links to every new issue

Troubleshooting

Most failed clones come down to one of four causes, and each has a fix you can run yourself. Find the error you got below.

A field did not clone (Story Points, Original Estimate, custom fields)

Symptom: The clones are created, but a field is blank. You searched for Story Points did not clone, can't fill in story points, or the original estimate is lost.

Why it happens: Jira will not populate a field that is missing from the destination project’s Issue Creation Screen for that issue type, even when Easy Clone sends the value. Selecting the field in the Customize fields picker does not override this: the field still has to exist on the screen.

Fix:

  1. In the destination project, open Project settings, then Screens.
  2. Open the Issue Creation Screen for the affected issue type.
  3. Add the field: Story Points, Time Tracking (for the Original Estimate), or your custom field.
  4. Run the clone again.

Quick test: create a blank issue directly in the destination project. If the field does not appear on that create form, Easy Clone cannot fill it either. An enhancement to auto-include fields that are hidden from the creation screen is planned.

Component, Version or Category value is not valid

Symptom: The clone stops with Component id '10000' is not valid, Version id '10074' is not valid, or Specify a valid value for 'Category'.

Why it happens: Components, Versions, Categories and select-type custom fields are project scoped. The same label can have a different technical option id in the source and destination, so the value cannot carry over directly. This collision is common between company-managed and team-managed projects.

Fix:

  1. During the clone, use the in-app mapping steps: Components matching and Field value matching.
  2. Map each source value to a destination value. Nothing is dropped silently.
  3. If a field has no mapping step, do one of these: apply the exact same global field to both projects, clear the value on the source issues, or make the field optional in the destination.

Versions are mapped the same way as Components.

The reporter or assignee is not a valid user

Symptom: The clone fails with The reporter specified is not a user or User '...' cannot be assigned issues.

Why it happens: The Reporter, Assignee, or a user custom field points to a user who was deleted or suspended, or who is not assignable in the destination project (a private project, or a missing role).

Fix:

  1. On the Issue type matching screen, bulk-set Assignee and Reporter before cloning (a specific user, yourself, or leave unchanged).
  2. Run the clone again.

Alternatively, correct the user on the source issues first.

Access Denied, or the destination project will not load

Symptom: You see Access Denied, You do not have permission to create this issue type, or the Destination project dropdown stays empty.

Why it happens: Easy Clone runs as a hidden system user named “Easy Clone for Jira Cloud”, a member of the groups atlassian-addons-admin and atlassian-addons-project-access. If a permission scheme, a workflow validator, or an Issue Security level excludes those groups, the app cannot create issues in that project. Corporate firewalls can also block the app.

Fix:

  1. Add atlassian-addons-project-access to the destination project’s permission scheme.
  2. Add it to any workflow validator or Issue Security level that gates issue creation.
  3. Retry the clone.

On restricted networks, whitelist atlassian-epic.ost-consulting.be.

Ready to clone in your Jira?

Install Easy Clone from the Atlassian Marketplace - free trial, no credit card.