diff --git a/wagtail/wagtailadmin/templates/wagtailadmin/pages/copy.html b/wagtail/wagtailadmin/templates/wagtailadmin/pages/copy.html
index 019bee7791..526705c15f 100644
--- a/wagtail/wagtailadmin/templates/wagtailadmin/pages/copy.html
+++ b/wagtail/wagtailadmin/templates/wagtailadmin/pages/copy.html
@@ -21,7 +21,7 @@
{% endif %}
- {% if can_publish %}
+ {% if pages_to_publish.count and can_publish %}
{% include "wagtailadmin/shared/field_as_li.html" with field=form.publish_copies %}
{% blocktrans with live_page_count=pages_to_copy.live.count %}{{ live_page_count }} of the pages being copied are live. Would you like to publish their copies?{% endblocktrans %}
diff --git a/wagtail/wagtailadmin/views/pages.py b/wagtail/wagtailadmin/views/pages.py
index e194f9d3ce..535db866ed 100644
--- a/wagtail/wagtailadmin/views/pages.py
+++ b/wagtail/wagtailadmin/views/pages.py
@@ -726,10 +726,13 @@ def copy(request, page_id):
# Redirect to explore of parent page
return redirect('wagtailadmin_explore', parent_page.id)
+ pages_to_copy = page.get_descendants(inclusive=True)
+
return render(request, 'wagtailadmin/pages/copy.html', {
'page': page,
- 'pages_to_copy': page.get_descendants(inclusive=True),
+ 'pages_to_copy': pages_to_copy,
'parent_page': parent_page,
+ 'pages_to_publish': pages_to_copy.live(),
'can_publish': can_publish,
'form': form,
})