Index: src/wp-admin/includes/privacy-tools.php
===================================================================
--- src/wp-admin/includes/privacy-tools.php	(revision 46178)
+++ src/wp-admin/includes/privacy-tools.php	(working copy)
@@ -234,8 +234,17 @@
  * @return string The HTML for this group and its items.
  */
 function wp_privacy_generate_personal_data_export_group_html( $group_data ) {
-	$group_html = '<h2>' . esc_html( $group_data['group_label'] ) . '</h2>';
 
+	$group_html  = '<h2>';
+	$group_html .= esc_html( $group_data['group_label'] );
+
+	$items_count = count( (array) $group_data['items'] );
+	if ( $items_count > 1 ) {
+		$group_html .= sprintf( ' <span class="count">(%d)</span>', $items_count );
+	}
+
+	$group_html .= '</h2>';
+
 	if ( ! empty( $group_data['group_description'] ) ) {
 		$group_html .= '<p>' . esc_html( $group_data['group_description'] ) . '</p>';
 	}
Index: tests/phpunit/tests/privacy/wpPrivacyGeneratePersonalDataExportGroupHtml.php
===================================================================
--- tests/phpunit/tests/privacy/wpPrivacyGeneratePersonalDataExportGroupHtml.php	(revision 46178)
+++ tests/phpunit/tests/privacy/wpPrivacyGeneratePersonalDataExportGroupHtml.php	(working copy)
@@ -50,6 +50,7 @@
 	 * Test when a multiple data items are passed.
 	 *
 	 * @ticket 44044
+	 * @ticket 46895 Updated to remove </h2> from test to avoid Count introducing failure.
 	 */
 	public function test_group_html_generation_multiple_data_items() {
 		$data = array(
@@ -80,7 +81,7 @@
 
 		$actual = wp_privacy_generate_personal_data_export_group_html( $data );
 
-		$this->assertContains( '<h2>Test Data Group</h2>', $actual );
+		$this->assertContains( '<h2>Test Data Group', $actual );
 		$this->assertContains( '<td>Field 1 Value', $actual );
 		$this->assertContains( '<td>Another Field 1 Value', $actual );
 		$this->assertContains( '<td>Field 2 Value', $actual );
@@ -197,4 +198,60 @@
 		$this->assertNotContains( $data['items'][0]['images']['value'], $actual );
 		$this->assertContains( '<th>Images are not allowed</th><td></td>', $actual );
 	}
+
+	/**
+	 * Test group count is displayed for multiple items.
+	 *
+	 * @ticket 46895
+	 */
+	public function test_group_html_generation_should_display_group_count_when_multiple_items() {
+		$data = array(
+			'group_label' => 'Test Data Group',
+			'items'       => array(
+				array(
+					array(
+						'name'  => 'Field 1 Name',
+						'value' => 'Field 1 Value',
+					),
+				),
+				array(
+					array(
+						'name'  => 'Field 2 Name',
+						'value' => 'Field 2 Value',
+					),
+				),
+			),
+		);
+
+		$actual = wp_privacy_generate_personal_data_export_group_html( $data );
+
+		$this->assertContains( '<h2>Test Data Group', $actual );
+		$this->assertContains( '<span class="count">(2)</span></h2>', $actual );
+		$this->assertSame( 2, substr_count( $actual, '<table>' ) );
+	}
+
+	/**
+	 * Test group count is not displayed for a single item.
+	 *
+	 * @ticket 46895
+	 */
+	public function test_group_html_generation_should_not_display_group_count_when_single_item() {
+		$data = array(
+			'group_label' => 'Test Data Group',
+			'items'       => array(
+				array(
+					array(
+						'name'  => 'Field 1 Name',
+						'value' => 'Field 1 Value',
+					),
+				),
+			),
+		);
+
+		$actual = wp_privacy_generate_personal_data_export_group_html( $data );
+
+		$this->assertContains( '<h2>Test Data Group</h2>', $actual );
+		$this->assertNotContains( '<span class="count">', $actual );
+		$this->assertSame( 1, substr_count( $actual, '<table>' ) );
+	}
 }
