diff --git a/config/install/webform.webform.contact.yml b/config/install/webform.webform.contact.yml
index e16d0d65..e9a4992d 100644
--- a/config/install/webform.webform.contact.yml
+++ b/config/install/webform.webform.contact.yml
@@ -77,6 +77,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -151,6 +152,7 @@ handlers:
       body: '[webform_submission:values:message:value]'
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
@@ -178,6 +180,7 @@ handlers:
       body: '[webform_submission:values:message:value]'
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/config/schema/webform.schema.yml b/config/schema/webform.schema.yml
index ed4330c7..b0f687be 100644
--- a/config/schema/webform.schema.yml
+++ b/config/schema/webform.schema.yml
@@ -520,6 +520,9 @@ webform.webform.*:
           sequence:
             type: string
             label: 'Element name'
+        preview_exclude_empty:
+          type: boolean
+          label: 'Preview exclude empty elements'
         draft:
           type: string
           label: 'Allow users to save and finish the webform later.'
@@ -815,6 +818,9 @@ webform.handler.email:
     ignore_access:
       type: boolean
       label: 'Always include private and restricted access elements.'
+    exclude_empty:
+      type: boolean
+      label: 'Preview exclude empty elements'
     html:
       type: boolean
       label: 'HTML'
diff --git a/includes/webform.theme.inc b/includes/webform.theme.inc
index 99db2a45..239209c7 100644
--- a/includes/webform.theme.inc
+++ b/includes/webform.theme.inc
@@ -139,6 +139,7 @@ function template_preprocess_webform_preview(array &$variables) {
     '#theme' => 'webform_submission_html',
     '#webform_submission' => $webform_submission,
     '#excluded_elements' => $webform->getSetting('preview_excluded_elements'),
+    '#exclude_empty' => $webform->getSetting('preview_exclude_empty'),
   ];
 
   $settings = $webform->getSettings();
@@ -367,7 +368,10 @@ function template_preprocess_webform_submission_html(array &$variables) {
 
   $webform = $webform_submission->getWebform();
   $elements = $webform->getElementsInitialized();
-  $options = ['excluded_elements' => $variables['excluded_elements']];
+  $options = [
+    'excluded_elements' => $variables['excluded_elements'],
+    'exclude_empty' => $variables['exclude_empty'],
+  ];
   $variables['data'] = $view_builder->buildElements($elements, $webform_submission, $options);
 }
 
@@ -389,7 +393,10 @@ function template_preprocess_webform_submission_table(array &$variables) {
 
   $webform = $webform_submission->getWebform();
   $elements = $webform->getElementsInitializedFlattenedAndHasValue();
-  $options = ['excluded_elements' => $variables['excluded_elements']];
+  $options = [
+    'excluded_elements' => $variables['excluded_elements'],
+    'exclude_empty' => $variables['exclude_empty'],
+  ];
   $variables['table'] = $view_builder->buildTable($elements, $webform_submission, $options);
 }
 
@@ -435,7 +442,10 @@ function template_preprocess_webform_submission_text(array &$variables) {
 
   $webform = $webform_submission->getWebform();
   $elements = $webform->getElementsInitialized();
-  $options = ['excluded_elements' => $variables['excluded_elements']];
+  $options = [
+    'excluded_elements' => $variables['excluded_elements'],
+    'exclude_empty' => $variables['exclude_empty'],
+  ];
   $variables['data'] = $view_builder->buildElements($elements, $webform_submission, $options, 'text');
 }
 
diff --git a/modules/webform_demo/webform_demo_application_evaluation/config/install/webform.webform.demo_application.yml b/modules/webform_demo/webform_demo_application_evaluation/config/install/webform.webform.demo_application.yml
index 98a64abb..afeaac5f 100644
--- a/modules/webform_demo/webform_demo_application_evaluation/config/install/webform.webform.demo_application.yml
+++ b/modules/webform_demo/webform_demo_application_evaluation/config/install/webform.webform.demo_application.yml
@@ -66,6 +66,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_demo/webform_demo_application_evaluation/config/install/webform.webform.demo_application_evaluation.yml b/modules/webform_demo/webform_demo_application_evaluation/config/install/webform.webform.demo_application_evaluation.yml
index e6010e14..39f03abc 100644
--- a/modules/webform_demo/webform_demo_application_evaluation/config/install/webform.webform.demo_application_evaluation.yml
+++ b/modules/webform_demo/webform_demo_application_evaluation/config/install/webform.webform.demo_application_evaluation.yml
@@ -65,6 +65,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: '1'
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_demo/webform_demo_event_registration/config/install/webform.webform.demo_event_registration.yml b/modules/webform_demo/webform_demo_event_registration/config/install/webform.webform.demo_event_registration.yml
index e4b238ad..47d47fc5 100644
--- a/modules/webform_demo/webform_demo_event_registration/config/install/webform.webform.demo_event_registration.yml
+++ b/modules/webform_demo/webform_demo_event_registration/config/install/webform.webform.demo_event_registration.yml
@@ -150,6 +150,7 @@ handlers:
       reply_to: ''
       return_path: ''
       ignore_access: false
+      exclude_empty: true
   email_reminder:
     id: scheduled_email
     label: 'Email Reminder'
@@ -180,3 +181,4 @@ handlers:
       days: -1
       unschedule: false
       ignore_access: false
+      exclude_empty: true
diff --git a/modules/webform_examples/config/install/webform.webform.example_computed_elements.yml b/modules/webform_examples/config/install/webform.webform.example_computed_elements.yml
index dca62d6d..2e0d7e8e 100644
--- a/modules/webform_examples/config/install/webform.webform.example_computed_elements.yml
+++ b/modules/webform_examples/config/install/webform.webform.example_computed_elements.yml
@@ -84,6 +84,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_examples/config/install/webform.webform.example_element_states.yml b/modules/webform_examples/config/install/webform.webform.example_element_states.yml
index dd4f1a36..6bd9d411 100644
--- a/modules/webform_examples/config/install/webform.webform.example_element_states.yml
+++ b/modules/webform_examples/config/install/webform.webform.example_element_states.yml
@@ -215,6 +215,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_examples/config/install/webform.webform.example_flexbox_layout.yml b/modules/webform_examples/config/install/webform.webform.example_flexbox_layout.yml
index ba70584c..7b262051 100644
--- a/modules/webform_examples/config/install/webform.webform.example_flexbox_layout.yml
+++ b/modules/webform_examples/config/install/webform.webform.example_flexbox_layout.yml
@@ -155,6 +155,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_examples/config/install/webform.webform.example_input_masks.yml b/modules/webform_examples/config/install/webform.webform.example_input_masks.yml
index 076163cd..ada5227f 100644
--- a/modules/webform_examples/config/install/webform.webform.example_input_masks.yml
+++ b/modules/webform_examples/config/install/webform.webform.example_input_masks.yml
@@ -115,6 +115,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_examples/config/install/webform.webform.example_style_guide.yml b/modules/webform_examples/config/install/webform.webform.example_style_guide.yml
index 51c77047..5441a3ef 100644
--- a/modules/webform_examples/config/install/webform.webform.example_style_guide.yml
+++ b/modules/webform_examples/config/install/webform.webform.example_style_guide.yml
@@ -507,6 +507,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_examples/config/install/webform.webform.example_wizard.yml b/modules/webform_examples/config/install/webform.webform.example_wizard.yml
index aa65a0e6..27bdf668 100644
--- a/modules/webform_examples/config/install/webform.webform.example_wizard.yml
+++ b/modules/webform_examples/config/install/webform.webform.example_wizard.yml
@@ -93,6 +93,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: true
diff --git a/modules/webform_scheduled_email/config/schema/webform_scheduled_email.yml b/modules/webform_scheduled_email/config/schema/webform_scheduled_email.yml
index f08be6b7..b6bb2a62 100644
--- a/modules/webform_scheduled_email/config/schema/webform_scheduled_email.yml
+++ b/modules/webform_scheduled_email/config/schema/webform_scheduled_email.yml
@@ -57,6 +57,9 @@ webform.handler.scheduled_email:
     ignore_access:
       type: boolean
       label: 'Always include private and restricted access elements.'
+    exclude_empty:
+      type: boolean
+      label: 'Preview exclude empty elements'
     html:
       type: boolean
       label: 'HTML'
diff --git a/modules/webform_scheduled_email/test/modules/webform_scheduled_email_test/config/install/webform.webform.test_handler_scheduled_email.yml b/modules/webform_scheduled_email/test/modules/webform_scheduled_email_test/config/install/webform.webform.test_handler_scheduled_email.yml
index 9176dad6..b201511b 100644
--- a/modules/webform_scheduled_email/test/modules/webform_scheduled_email_test/config/install/webform.webform.test_handler_scheduled_email.yml
+++ b/modules/webform_scheduled_email/test/modules/webform_scheduled_email_test/config/install/webform.webform.test_handler_scheduled_email.yml
@@ -74,6 +74,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: all
   draft_multiple: false
   draft_auto_save: false
@@ -158,6 +159,7 @@ handlers:
       days: 1
       unschedule: false
       ignore_access: false
+      exclude_empty: true
   yesterday:
     id: scheduled_email
     label: Yesterday
@@ -190,6 +192,7 @@ handlers:
       days: -1
       unschedule: false
       ignore_access: false
+      exclude_empty: true
   last_year:
     id: scheduled_email
     label: 'Last year'
@@ -222,6 +225,7 @@ handlers:
       days: 0
       unschedule: false
       ignore_access: false
+      exclude_empty: true
   broken:
     id: scheduled_email
     label: Broken
@@ -254,6 +258,7 @@ handlers:
       days: 0
       unschedule: false
       ignore_access: false
+      exclude_empty: true
   other:
     id: scheduled_email
     label: Other
@@ -288,6 +293,7 @@ handlers:
       days: 14
       unschedule: false
       ignore_access: false
+      exclude_empty: true
   draft_reminder:
     id: scheduled_email
     label: 'Draft reminder'
@@ -320,3 +326,4 @@ handlers:
       days: 14
       unschedule: true
       ignore_access: false
+      exclude_empty: true
diff --git a/modules/webform_templates/config/install/webform.webform.template_contact.yml b/modules/webform_templates/config/install/webform.webform.template_contact.yml
index a0236da0..07973d0f 100644
--- a/modules/webform_templates/config/install/webform.webform.template_contact.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_contact.yml
@@ -73,6 +73,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -147,6 +148,7 @@ handlers:
       body: '[webform_submission:values:message:value]'
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
@@ -174,6 +176,7 @@ handlers:
       body: '[webform_submission:values:message:value]'
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_donation.yml b/modules/webform_templates/config/install/webform.webform.template_donation.yml
index 2cae623b..e35d26b5 100644
--- a/modules/webform_templates/config/install/webform.webform.template_donation.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_donation.yml
@@ -124,6 +124,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -200,6 +201,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_employee_evaluation.yml b/modules/webform_templates/config/install/webform.webform.template_employee_evaluation.yml
index 0da61f52..fe660395 100644
--- a/modules/webform_templates/config/install/webform.webform.template_employee_evaluation.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_employee_evaluation.yml
@@ -120,6 +120,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_feedback.yml b/modules/webform_templates/config/install/webform.webform.template_feedback.yml
index 4f35d458..6dcf5502 100644
--- a/modules/webform_templates/config/install/webform.webform.template_feedback.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_feedback.yml
@@ -78,6 +78,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -152,6 +153,7 @@ handlers:
       body: '[webform_submission:values:comments:value]'
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
@@ -189,6 +191,7 @@ handlers:
       body: '[webform_submission:values:comments:value]'
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_issue.yml b/modules/webform_templates/config/install/webform.webform.template_issue.yml
index 5f5bce40..d84f8134 100644
--- a/modules/webform_templates/config/install/webform.webform.template_issue.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_issue.yml
@@ -161,6 +161,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_job_application.yml b/modules/webform_templates/config/install/webform.webform.template_job_application.yml
index 049f3760..25867b2d 100644
--- a/modules/webform_templates/config/install/webform.webform.template_job_application.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_job_application.yml
@@ -121,6 +121,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -195,6 +196,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_job_seeker_profile.yml b/modules/webform_templates/config/install/webform.webform.template_job_seeker_profile.yml
index 10e0d34e..12dede0d 100644
--- a/modules/webform_templates/config/install/webform.webform.template_job_seeker_profile.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_job_seeker_profile.yml
@@ -120,6 +120,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -194,6 +195,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_registration.yml b/modules/webform_templates/config/install/webform.webform.template_registration.yml
index 782ed360..af3f535e 100644
--- a/modules/webform_templates/config/install/webform.webform.template_registration.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_registration.yml
@@ -90,6 +90,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -164,6 +165,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_session_evaluation.yml b/modules/webform_templates/config/install/webform.webform.template_session_evaluation.yml
index cb351f49..1d4e7a63 100644
--- a/modules/webform_templates/config/install/webform.webform.template_session_evaluation.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_session_evaluation.yml
@@ -82,6 +82,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -156,6 +157,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_subscribe.yml b/modules/webform_templates/config/install/webform.webform.template_subscribe.yml
index 025e9175..16d182f0 100644
--- a/modules/webform_templates/config/install/webform.webform.template_subscribe.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_subscribe.yml
@@ -69,6 +69,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -143,6 +144,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/modules/webform_templates/config/install/webform.webform.template_user_profile.yml b/modules/webform_templates/config/install/webform.webform.template_user_profile.yml
index 200c3e05..b2dc1ccd 100644
--- a/modules/webform_templates/config/install/webform.webform.template_user_profile.yml
+++ b/modules/webform_templates/config/install/webform.webform.template_user_profile.yml
@@ -163,6 +163,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -237,6 +238,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/src/Entity/Webform.php b/src/Entity/Webform.php
index 94de3526..2a42e74c 100644
--- a/src/Entity/Webform.php
+++ b/src/Entity/Webform.php
@@ -726,6 +726,7 @@ class Webform extends ConfigEntityBundleBase implements WebformInterface {
       'preview_message' => '',
       'preview_attributes' => [],
       'preview_excluded_elements' => [],
+      'preview_exclude_empty' => TRUE,
       'draft' => self::DRAFT_NONE,
       'draft_multiple' => FALSE,
       'draft_auto_save' => FALSE,
diff --git a/src/Plugin/WebformElementBase.php b/src/Plugin/WebformElementBase.php
index 07a52b34..ee8dd7b0 100644
--- a/src/Plugin/WebformElementBase.php
+++ b/src/Plugin/WebformElementBase.php
@@ -835,13 +835,23 @@ class WebformElementBase extends PluginBase implements WebformElementInterface {
    *   A render array representing an element as text or HTML.
    */
   protected function build($format, array &$element, WebformSubmissionInterface $webform_submission, array $options = []) {
+    $options += [
+      'exclude_empty' => TRUE,
+    ];
     $options['multiline'] = $this->isMultiline($element);
     $format_function = 'format' . ucfirst($format);
     $formatted_value = $this->$format_function($element, $webform_submission, $options);
 
-    // Return NULL for empty formatted value.
+    // Handle empty value.
     if ($formatted_value === '') {
-      return NULL;
+      // Return NULL for empty formatted value.
+      if (!empty($options['exclude_empty'])) {
+        return NULL;
+      }
+      // Else set the formatted value to {Empty}.
+      else {
+        $formatted_value = $this->t('{Empty}');
+      }
     }
 
     // Convert string to renderable #markup.
diff --git a/src/Plugin/WebformHandler/EmailWebformHandler.php b/src/Plugin/WebformHandler/EmailWebformHandler.php
index 3304b0ba..bb8fb881 100644
--- a/src/Plugin/WebformHandler/EmailWebformHandler.php
+++ b/src/Plugin/WebformHandler/EmailWebformHandler.php
@@ -177,6 +177,7 @@ class EmailWebformHandler extends WebformHandlerBase implements WebformHandlerMe
       'body' => 'default',
       'excluded_elements' => [],
       'ignore_access' => FALSE,
+      'exclude_empty' => TRUE,
       'html' => TRUE,
       'attachments' => FALSE,
       'debug' => FALSE,
@@ -435,6 +436,14 @@ class EmailWebformHandler extends WebformHandlerBase implements WebformHandlerMe
       '#default_value' => $this->configuration['ignore_access'],
       '#parents' => ['settings', 'ignore_access'],
     ];
+    $form['elements']['exclude_empty'] = array(
+      '#type' => 'checkbox',
+      '#title' => t('Exclude empty elements'),
+      '#return_value' => TRUE,
+      '#default_value' => $this->configuration['exclude_empty'],
+      '#parents' => ['settings', 'exclude_empty'],
+    );
+
     $elements = $this->webform->getElementsInitializedFlattenedAndHasValue();
     foreach ($elements as $key => $element) {
       if (!empty($element['#access_view_roles']) || !empty($element['#private'])) {
@@ -586,6 +595,7 @@ class EmailWebformHandler extends WebformHandlerBase implements WebformHandlerMe
       'email' => TRUE,
       'excluded_elements' => $this->configuration['excluded_elements'],
       'ignore_access' => $this->configuration['ignore_access'],
+      'exclude_empty' => $this->configuration['exclude_empty'],
       'html' => ($this->configuration['html'] && $this->supportsHtml()),
     ];
 
diff --git a/src/Tests/Handler/WebformHandlerEmailAdvancedTest.php b/src/Tests/Handler/WebformHandlerEmailAdvancedTest.php
index 1efff95f..5cb14982 100644
--- a/src/Tests/Handler/WebformHandlerEmailAdvancedTest.php
+++ b/src/Tests/Handler/WebformHandlerEmailAdvancedTest.php
@@ -72,11 +72,11 @@ class WebformHandlerEmailAdvancedTest extends WebformTestBase {
     $this->assertEqual($sent_mail['headers']['Sender'], 'return_path@example.com');
     $this->assertEqual($sent_mail['headers']['Reply-to'], 'reply_to@example.com');
 
-    $handler = $webform->getHandler('email');
-    $configuration = $handler->getConfiguration();
+    $email_handler = $webform->getHandler('email');
+    $configuration = $email_handler->getConfiguration();
     $configuration['settings']['reply_to'] = '';
     $configuration['settings']['return_path'] = '';
-    $handler->setConfiguration($configuration);
+    $email_handler->setConfiguration($configuration);
     $webform->save();
 
     // Check no custom reply to and return path.
@@ -108,6 +108,7 @@ class WebformHandlerEmailAdvancedTest extends WebformTestBase {
       'email' => 'from@example.com',
       'subject' => 'Subject',
       'message[value]' => '<p><em>Please enter a message.</em> Test that double "quotes" are not encoded.</p>',
+      'optional' => '',
     ];
     $this->postSubmissionTest($webform, $edit);
     $sid = $this->getLastSubmissionId($webform);
@@ -120,6 +121,7 @@ class WebformHandlerEmailAdvancedTest extends WebformTestBase {
     $this->assertContains($sent_mail['params']['body'], '<b>Subject</b><br />Subject<br /><br />');
     $this->assertContains($sent_mail['params']['body'], '<b>Message</b><br /><p><em>Please enter a message.</em> Test that double "quotes" are not encoded.</p><br /><br />');
     $this->assertContains($sent_mail['params']['body'], '<p style="color:yellow"><em>Custom styled HTML markup</em></p>');
+    $this->assertNotContains($sent_mail['params']['body'], '<b>Optional</b><br />{Empty}<br /><br />');
 
     // Check email has attachment.
     $this->assertEqual($sent_mail['params']['attachments'][0]['filecontent'], "this is a sample txt file\nit has two lines\n");
@@ -142,11 +144,12 @@ class WebformHandlerEmailAdvancedTest extends WebformTestBase {
     $this->assertEqual($sent_mail['params']['attachments'][0]['filename'], 'file.txt');
     $this->assertEqual($sent_mail['params']['attachments'][0]['filemime'], 'text/plain');
 
+    $email_handler = $webform->getHandler('email');
+
     // Exclude file element.
-    $handler = $webform->getHandler('email');
-    $configuration = $handler->getConfiguration();
+    $configuration = $email_handler->getConfiguration();
     $configuration['settings']['excluded_elements'] = ['file' => 'file'];
-    $handler->setConfiguration($configuration);
+    $email_handler->setConfiguration($configuration);
     $webform->save();
 
     // Check excluding files.
@@ -154,7 +157,23 @@ class WebformHandlerEmailAdvancedTest extends WebformTestBase {
     $sent_mail = $this->getLastEmail();
     $this->assertFalse(isset($sent_mail['params']['attachments'][0]['filecontent']));
 
-    // Logut and use anonymous user accont.
+    // Check empty element is excluded.
+    $this->postSubmission($webform);
+    $sent_mail = $this->getLastEmail();
+    $this->assertNotContains($sent_mail['params']['body'], '<b>Optional</b><br />{Empty}<br /><br />');
+
+    // Include empty.
+    $configuration = $email_handler->getConfiguration();
+    $configuration['settings']['exclude_empty'] = FALSE;
+    $email_handler->setConfiguration($configuration);
+    $webform->save();
+
+    // Check empty included.
+    $this->postSubmission($webform);
+    $sent_mail = $this->getLastEmail();
+    $this->assertContains($sent_mail['params']['body'], '<b>Optional</b><br />{Empty}<br /><br />');
+
+    // Logut and use anonymous user account.
     $this->drupalLogout();
 
     // Check that private is include in email because 'ignore_access' is TRUE.
@@ -163,10 +182,10 @@ class WebformHandlerEmailAdvancedTest extends WebformTestBase {
     $this->assertContains($sent_mail['params']['body'], '<b>Notes</b><br />These notes are private.<br /><br />');
 
     // Disable ignore_access.
-    $handler = $webform->getHandler('email');
-    $configuration = $handler->getConfiguration();
+    $email_handler = $webform->getHandler('email');
+    $configuration = $email_handler->getConfiguration();
     $configuration['settings']['ignore_access'] = FALSE;
-    $handler->setConfiguration($configuration);
+    $email_handler->setConfiguration($configuration);
     $webform->save();
 
     // Check that private is excluded from email because 'ignore_access' is FALSE.
diff --git a/src/Tests/WebformSubmissionFormPreviewTest.php b/src/Tests/WebformSubmissionFormPreviewTest.php
index c3f916ae..7d1df12e 100644
--- a/src/Tests/WebformSubmissionFormPreviewTest.php
+++ b/src/Tests/WebformSubmissionFormPreviewTest.php
@@ -56,6 +56,15 @@ class WebformSubmissionFormPreviewTest extends WebformTestBase {
     $this->assertRaw('<b>Email</b><br /><a href="mailto:example@example.com">example@example.com</a><br /><br />');
     $this->assertRaw('<div class="webform-preview">');
 
+    // Set preview to include empty.
+    $webform_preview->setSetting('preview_exclude_empty', FALSE);
+    $webform_preview->save();
+
+    // Check empty element is included from preview.
+    $this->drupalPostForm('webform/test_form_preview', ['name' => '', 'email' => ''], t('Preview'));
+    $this->assertRaw('<b>Name</b><br />{Empty}<br /><br />');
+    $this->assertRaw('<b>Email</b><br />{Empty}<br /><br />');
+
     // Check required preview with custom settings.
     $webform_preview->setSettings([
       'preview' => DRUPAL_REQUIRED,
@@ -88,6 +97,11 @@ class WebformSubmissionFormPreviewTest extends WebformTestBase {
     $this->drupalGet('webform/test_form_preview');
     $this->assertNoFieldByName('op', 'Submit');
     $this->assertFieldByName('op', '{Preview}');
+
+    // Check empty element is excluded from preview.
+    $this->drupalPostForm('webform/test_form_preview', ['name' => 'test', 'email' => ''], t('{Preview}'));
+    $this->assertRaw('<b>Name</b><br />test<br /><br />');
+    $this->assertNoRaw('<b>Email</b><br /><a href="mailto:example@example.com">example@example.com</a><br /><br />');
   }
 
 }
diff --git a/src/WebformEntitySettingsForm.php b/src/WebformEntitySettingsForm.php
index 43f6aa90..0dbe3eac 100644
--- a/src/WebformEntitySettingsForm.php
+++ b/src/WebformEntitySettingsForm.php
@@ -508,6 +508,12 @@ class WebformEntitySettingsForm extends EntityForm {
       '#webform_id' => $this->getEntity()->id(),
       '#default_value' => $settings['preview_excluded_elements'],
     ];
+    $form['preview_settings']['preview_container']['elements']['preview_exclude_empty'] = array(
+      '#type' => 'checkbox',
+      '#title' => t('Exclude empty elements'),
+      '#return_value' => TRUE,
+      '#default_value' => $settings['preview_exclude_empty'],
+    );
 
     // Draft settings.
     $form['draft_settings'] = [
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_ajax.yml b/tests/modules/webform_test/config/install/webform.webform.test_ajax.yml
index f0973519..19a93ab8 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_ajax.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_ajax.yml
@@ -57,6 +57,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_inline.yml b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_inline.yml
index ac07da14..4f06cc76 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_inline.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_inline.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_message.yml b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_message.yml
index a9f226ea..4bb2bd17 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_message.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_message.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_page.yml b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_page.yml
index 8d29e833..044b718b 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_page.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_page.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_url.yml b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_url.yml
index 61831e46..bc28c045 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_url.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_url.yml
@@ -55,6 +55,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_url_msg.yml b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_url_msg.yml
index b5e6426c..eb2c8f1a 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_url_msg.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_ajax_confirmation_url_msg.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_inline.yml b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_inline.yml
index 7c76ae53..23190a9c 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_inline.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_inline.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_message.yml b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_message.yml
index e283b9c4..21bbd89d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_message.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_message.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_page.yml b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_page.yml
index 623cae08..10dbf6d0 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_page.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_page.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_page_custom.yml b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_page_custom.yml
index eee8b7ae..91d157ca 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_page_custom.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_page_custom.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_url.yml b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_url.yml
index b6c46cab..f1795d72 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_url.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_url.yml
@@ -55,6 +55,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_url_message.yml b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_url_message.yml
index 47856da6..8f405fdb 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_confirmation_url_message.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_confirmation_url_message.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element.yml b/tests/modules/webform_test/config/install/webform.webform.test_element.yml
index bcd1612e..0dc9946f 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element.yml
@@ -271,6 +271,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_access.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_access.yml
index 4f06937b..da414c46 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_access.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_access.yml
@@ -119,6 +119,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_actions.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_actions.yml
index 3129c6ab..48cb2005 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_actions.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_actions.yml
@@ -150,6 +150,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: all
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_actions_buttons.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_actions_buttons.yml
index 8fe33e43..bd4d04fd 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_actions_buttons.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_actions_buttons.yml
@@ -92,6 +92,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: authenticated
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_allowed_tags.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_allowed_tags.yml
index 096d264a..60fbdd48 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_allowed_tags.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_allowed_tags.yml
@@ -57,6 +57,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_attributes.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_attributes.yml
index 3a9f9c79..9b32b8c7 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_attributes.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_attributes.yml
@@ -70,6 +70,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_autocomplete.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_autocomplete.yml
index b3eedde7..42198aed 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_autocomplete.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_autocomplete.yml
@@ -75,6 +75,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_codemirror.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_codemirror.yml
index b6f14f70..b85e13ad 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_codemirror.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_codemirror.yml
@@ -75,6 +75,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_composite.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_composite.yml
index 9ede118c..62da38ea 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_composite.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_composite.yml
@@ -129,6 +129,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_computed_token.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_computed_token.yml
index 4fbdc211..23e49878 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_computed_token.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_computed_token.yml
@@ -107,6 +107,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_computed_twig.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_computed_twig.yml
index f58e284a..c29a36d2 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_computed_twig.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_computed_twig.yml
@@ -124,6 +124,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_date.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_date.yml
index 858dc4c7..75c9d24a 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_date.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_date.yml
@@ -94,6 +94,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_datelist.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_datelist.yml
index dcbf97b1..ba1c0fbc 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_datelist.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_datelist.yml
@@ -89,6 +89,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_datetime.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_datetime.yml
index d5a1c0be..03a64761 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_datetime.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_datetime.yml
@@ -103,6 +103,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_disabled.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_disabled.yml
index 25d86564..d1735b40 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_disabled.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_disabled.yml
@@ -387,6 +387,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_email.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_email.yml
index cad06ca7..b117dac5 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_email.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_email.yml
@@ -90,6 +90,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_entity_reference.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_entity_reference.yml
index 18481194..3980bfe3 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_entity_reference.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_entity_reference.yml
@@ -154,6 +154,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_flexbox.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_flexbox.yml
index 54f930cc..7131a45d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_flexbox.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_flexbox.yml
@@ -980,6 +980,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_flexbox_flex.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_flexbox_flex.yml
index 101248a4..0f43698c 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_flexbox_flex.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_flexbox_flex.yml
@@ -843,6 +843,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_format.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_format.yml
index fdcdd888..cd1ac5e1 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_format.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_format.yml
@@ -1150,6 +1150,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -1224,6 +1225,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: false
       attachments: false
       debug: true
@@ -1251,6 +1253,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_format_composite.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_format_composite.yml
index dcf3825a..4165b03b 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_format_composite.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_format_composite.yml
@@ -482,6 +482,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -556,6 +557,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: false
       attachments: false
       debug: true
@@ -583,6 +585,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_format_multi_comp.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_format_multi_comp.yml
index 33a1246c..4545d9be 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_format_multi_comp.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_format_multi_comp.yml
@@ -444,6 +444,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -518,6 +519,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: false
       attachments: false
       debug: true
@@ -545,6 +547,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_format_multiple.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_format_multiple.yml
index 36ec722b..6b9fc6ac 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_format_multiple.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_format_multiple.yml
@@ -1615,6 +1615,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -1689,6 +1690,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: false
       attachments: false
       debug: true
@@ -1716,6 +1718,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_format_token.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_format_token.yml
index 142d12a3..a8ca43ea 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_format_token.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_format_token.yml
@@ -64,6 +64,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -145,6 +146,7 @@ handlers:
         <h3>raw:</h3>[webform_submission:values:checkboxes:raw]<hr />
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -192,6 +194,7 @@ handlers:
         [webform_submission:values:checkboxes:raw]
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: false
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_html_editor.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_html_editor.yml
index 40b46eaf..820715da 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_html_editor.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_html_editor.yml
@@ -67,6 +67,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_html_escape.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_html_escape.yml
index 5767288a..c22c5994 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_html_escape.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_html_escape.yml
@@ -561,6 +561,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_html_markup.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_html_markup.yml
index 2101c22b..a1f639af 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_html_markup.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_html_markup.yml
@@ -561,6 +561,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_icheck.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_icheck.yml
index 18c3813e..6c130628 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_icheck.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_icheck.yml
@@ -135,6 +135,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_icheck_styles.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_icheck_styles.yml
index 64df9715..8bf5126d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_icheck_styles.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_icheck_styles.yml
@@ -909,6 +909,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_ignored_properties.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_ignored_properties.yml
index a43bcb4d..b7ccaa02 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_ignored_properties.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_ignored_properties.yml
@@ -67,6 +67,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_image_select.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_image_select.yml
index e16f5fec..f846d673 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_image_select.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_image_select.yml
@@ -163,6 +163,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_invalid.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_invalid.yml
index 9e86c487..2654dcaa 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_invalid.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_invalid.yml
@@ -56,6 +56,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_likert.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_likert.yml
index 3608bdac..3c533f2b 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_likert.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_likert.yml
@@ -83,6 +83,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_location.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_location.yml
index 9c58782d..77282dad 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_location.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_location.yml
@@ -129,6 +129,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_managed_file.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_managed_file.yml
index 9d8c2def..61e96799 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_managed_file.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_managed_file.yml
@@ -62,6 +62,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_mapping.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_mapping.yml
index 62185f49..376878d7 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_mapping.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_mapping.yml
@@ -145,6 +145,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_markup.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_markup.yml
index e36c3aee..0fec6398 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_markup.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_markup.yml
@@ -67,6 +67,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_media_file.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_media_file.yml
index 31302df9..b7630411 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_media_file.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_media_file.yml
@@ -104,6 +104,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_message.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_message.yml
index b8dd070b..b347052e 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_message.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_message.yml
@@ -122,6 +122,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_multiple.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_multiple.yml
index e3bc3c66..8a6bc516 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_multiple.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_multiple.yml
@@ -200,6 +200,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_date.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_date.yml
index 161cd6f4..786e3e60 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_date.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_date.yml
@@ -77,6 +77,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_property.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_property.yml
index 5e44f430..0254975d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_property.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_property.yml
@@ -73,6 +73,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_text.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_text.yml
index 1fee4ab6..96bb3fb6 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_text.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_multiple_text.yml
@@ -118,6 +118,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_options.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_options.yml
index a905f50b..eb9ad5d4 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_options.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_options.yml
@@ -95,6 +95,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_other.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_other.yml
index 53abe06b..1d78f507 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_other.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_other.yml
@@ -176,6 +176,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_private.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_private.yml
index 4906d1c7..39fa6530 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_private.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_private.yml
@@ -61,6 +61,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_radios.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_radios.yml
index 741d30f5..44034631 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_radios.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_radios.yml
@@ -94,6 +94,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_rating.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_rating.yml
index ba09a9cd..42ce185d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_rating.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_rating.yml
@@ -67,6 +67,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_select.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_select.yml
index 1795f11d..fcbf0726 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_select.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_select.yml
@@ -170,6 +170,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_signature.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_signature.yml
index 29b0d519..e976b159 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_signature.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_signature.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_states.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_states.yml
index aa923798..e7d35f2d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_states.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_states.yml
@@ -117,6 +117,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_table.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_table.yml
index 633948e2..0b321bf5 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_table.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_table.yml
@@ -216,6 +216,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_telephone.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_telephone.yml
index 9762173d..7f2fd6c4 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_telephone.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_telephone.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_term_reference.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_term_reference.yml
index cac4f33c..cb779220 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_term_reference.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_term_reference.yml
@@ -134,6 +134,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_text.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_text.yml
index 4e8449d1..a54e624a 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_text.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_text.yml
@@ -85,6 +85,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_text_format.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_text_format.yml
index 4f562981..7b871355 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_text_format.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_text_format.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_time.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_time.yml
index 7e7b16bb..a02fc762 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_time.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_time.yml
@@ -100,6 +100,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_toggle.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_toggle.yml
index 9ed62fe9..f8afad59 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_toggle.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_toggle.yml
@@ -87,6 +87,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_users_roles.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_users_roles.yml
index 3e545737..62a58664 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_users_roles.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_users_roles.yml
@@ -70,6 +70,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_validate_minlength.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_validate_minlength.yml
index 8ca2f112..c3d05f69 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_validate_minlength.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_validate_minlength.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_validate_multiple.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_validate_multiple.yml
index f557fee6..dc0342cd 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_validate_multiple.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_validate_multiple.yml
@@ -116,6 +116,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_validate_required.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_validate_required.yml
index 69fa3393..a24db4af 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_validate_required.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_validate_required.yml
@@ -67,6 +67,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_element_validate_unique.yml b/tests/modules/webform_test/config/install/webform.webform.test_element_validate_unique.yml
index 6f250deb..4e14503e 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_element_validate_unique.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_element_validate_unique.yml
@@ -77,6 +77,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_example_elements.yml b/tests/modules/webform_test/config/install/webform.webform.test_example_elements.yml
index bd142fd2..9ee3e3e5 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_example_elements.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_example_elements.yml
@@ -561,6 +561,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_example_elements_composite.yml b/tests/modules/webform_test/config/install/webform.webform.test_example_elements_composite.yml
index d7bd004f..c5cc795a 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_example_elements_composite.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_example_elements_composite.yml
@@ -176,6 +176,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_api.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_api.yml
index 415b96d1..304a2eea 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_api.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_api.yml
@@ -156,6 +156,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_assets.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_assets.yml
index 2abd662c..17ddd9d6 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_assets.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_assets.yml
@@ -66,6 +66,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_autofocus.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_autofocus.yml
index 1a9f2335..096bfcac 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_autofocus.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_autofocus.yml
@@ -56,6 +56,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_closed.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_closed.yml
index a39ece8b..2b37dced 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_closed.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_closed.yml
@@ -55,6 +55,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_confidential.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_confidential.yml
index 9807cbcb..1d0e4e57 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_confidential.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_confidential.yml
@@ -56,6 +56,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_details_toggle.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_details_toggle.yml
index 022ea5ec..21f535e3 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_details_toggle.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_details_toggle.yml
@@ -63,6 +63,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_disable_autocomplete.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_disable_autocomplete.yml
index 368144ed..343bc87d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_disable_autocomplete.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_disable_autocomplete.yml
@@ -58,6 +58,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_disable_back.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_disable_back.yml
index 34a9fbf6..a4125752 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_disable_back.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_disable_back.yml
@@ -383,6 +383,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_draft_anonymous.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_draft_anonymous.yml
index 4ebeea1a..5dee1291 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_draft_anonymous.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_draft_anonymous.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: all
   draft_multiple: false
   draft_auto_save: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_draft_authenticated.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_draft_authenticated.yml
index bd0b4741..0fbff3fd 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_draft_authenticated.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_draft_authenticated.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: authenticated
   draft_multiple: false
   draft_auto_save: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_draft_multiple.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_draft_multiple.yml
index 7d51715c..41c2dae8 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_draft_multiple.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_draft_multiple.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: all
   draft_multiple: true
   draft_auto_save: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_limit.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_limit.yml
index 9824ce5b..7b66187d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_limit.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_limit.yml
@@ -56,6 +56,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: authenticated
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_long_100.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_long_100.yml
index 25df7178..4b6f1073 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_long_100.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_long_100.yml
@@ -353,6 +353,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_long_200.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_long_200.yml
index 8141c12a..9caf0c00 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_long_200.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_long_200.yml
@@ -653,6 +653,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_long_300.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_long_300.yml
index 86271d7d..1061319a 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_long_300.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_long_300.yml
@@ -953,6 +953,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_novalidate.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_novalidate.yml
index 030692fe..3be43052 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_novalidate.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_novalidate.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_opening.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_opening.yml
index 9bfcb256..8e040840 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_opening.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_opening.yml
@@ -55,6 +55,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_prepopulate.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_prepopulate.yml
index b28c14f2..f600635d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_prepopulate.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_prepopulate.yml
@@ -65,6 +65,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_preview.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_preview.yml
index e6ea604d..76920e04 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_preview.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_preview.yml
@@ -59,6 +59,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_properties.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_properties.yml
index 400761ba..a9eb4921 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_properties.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_properties.yml
@@ -68,6 +68,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_results_disabled.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_results_disabled.yml
index bfee35e2..64593d99 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_results_disabled.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_results_disabled.yml
@@ -55,6 +55,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_states.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_states.yml
index 8f778f41..3d2ce1ed 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_states.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_states.yml
@@ -2596,6 +2596,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_states_triggers.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_states_triggers.yml
index d84f0ead..e8976b8d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_states_triggers.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_states_triggers.yml
@@ -168,6 +168,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_submit_once.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_submit_once.yml
index aceaf94d..3bf73516 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_submit_once.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_submit_once.yml
@@ -64,6 +64,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: authenticated
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_submit_text.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_submit_text.yml
index d47ec65b..491d4490 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_submit_text.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_submit_text.yml
@@ -57,6 +57,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_template.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_template.yml
index f01ea761..76b01266 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_template.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_template.yml
@@ -55,6 +55,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_unsaved.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_unsaved.yml
index d6acdaa3..81b548a3 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_unsaved.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_unsaved.yml
@@ -57,6 +57,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_validate.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_validate.yml
index 1961dfcb..d583c2e0 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_validate.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_validate.yml
@@ -56,6 +56,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_advanced.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_advanced.yml
index aeb2a425..b37ff5fb 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_advanced.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_advanced.yml
@@ -98,6 +98,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: authenticated
   draft_multiple: false
   draft_auto_save: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_basic.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_basic.yml
index fef6f9ef..d023212c 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_basic.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_basic.yml
@@ -67,6 +67,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_custom.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_custom.yml
index 3c275c19..05f5601f 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_custom.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_custom.yml
@@ -99,6 +99,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_100.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_100.yml
index d97d03e9..6c55dd41 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_100.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_100.yml
@@ -383,6 +383,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_200.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_200.yml
index 2106b5ad..a4252058 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_200.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_200.yml
@@ -713,6 +713,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_300.yml b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_300.yml
index 9d097d71..a34df319 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_300.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_form_wizard_long_300.yml
@@ -1043,6 +1043,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_handler_email.yml b/tests/modules/webform_test/config/install/webform.webform.test_handler_email.yml
index ee0bcd26..1d708541 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_handler_email.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_handler_email.yml
@@ -78,6 +78,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -152,6 +153,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: false
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_handler_email_advanced.yml b/tests/modules/webform_test/config/install/webform.webform.test_handler_email_advanced.yml
index addb06ed..f18c5736 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_handler_email_advanced.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_handler_email_advanced.yml
@@ -38,6 +38,9 @@ elements: |
     '#title': Message
     '#required': true
     '#default_value': '<p><em>Please enter a message.</em></p>'
+  optional:
+    '#title': Optional
+    '#type': textfield
   file:
     '#type': managed_file
     '#title': File
@@ -87,6 +90,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -167,6 +171,7 @@ handlers:
         <p style="color:yellow"><em>Custom styled HTML markup</em></p>
       excluded_elements: {  }
       ignore_access: true
+      exclude_empty: true
       html: true
       attachments: true
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_handler_email_mapping.yml b/tests/modules/webform_test/config/install/webform.webform.test_handler_email_mapping.yml
index 309d2548..b059468a 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_handler_email_mapping.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_handler_email_mapping.yml
@@ -68,6 +68,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -144,6 +145,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -173,6 +175,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -202,6 +205,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -233,6 +237,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -262,6 +267,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_handler_email_roles.yml b/tests/modules/webform_test/config/install/webform.webform.test_handler_email_roles.yml
index 22ff065c..f027f5b7 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_handler_email_roles.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_handler_email_roles.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -140,6 +141,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_handler_email_states.yml b/tests/modules/webform_test/config/install/webform.webform.test_handler_email_states.yml
index 67f02752..5623e871 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_handler_email_states.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_handler_email_states.yml
@@ -55,6 +55,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: all
   draft_multiple: false
   draft_auto_save: false
@@ -129,6 +130,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -156,6 +158,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -183,6 +186,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -210,6 +214,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
@@ -237,6 +242,7 @@ handlers:
       body: default
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_libraries_optional.yml b/tests/modules/webform_test/config/install/webform.webform.test_libraries_optional.yml
index b30cedf7..f3c4438f 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_libraries_optional.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_libraries_optional.yml
@@ -131,6 +131,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_results.yml b/tests/modules/webform_test/config/install/webform.webform.test_results.yml
index 01c7d229..bd846d6d 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_results.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_results.yml
@@ -96,6 +96,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_submission_label.yml b/tests/modules/webform_test/config/install/webform.webform.test_submission_label.yml
index 8a8c4c1b..003a2d9e 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_submission_label.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_submission_label.yml
@@ -57,6 +57,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_submission_log.yml b/tests/modules/webform_test/config/install/webform.webform.test_submission_log.yml
index 327e9656..c6b4b23f 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_submission_log.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_submission_log.yml
@@ -56,6 +56,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: all
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_token.yml b/tests/modules/webform_test/config/install/webform.webform.test_token.yml
index cd407ccd..e3453e07 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_token.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_token.yml
@@ -161,6 +161,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -235,6 +236,7 @@ handlers:
       body: '<a href="[webform_submission:update-url]">[webform_submission:update-url]</a>'
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_token_submission_value.yml b/tests/modules/webform_test/config/install/webform.webform.test_token_submission_value.yml
index be0487b8..e60480eb 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_token_submission_value.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_token_submission_value.yml
@@ -142,6 +142,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -203,7 +204,7 @@ settings:
     <tr><th width="50%">webform_submission:values:contacts:0:email:html</th><td width="50%">[webform_submission:values:contacts:0:email:html]</td></tr>
     <tr><th width="50%">webform_submission:values:contacts:1:email:raw:html</th><td width="50%">[webform_submission:values:contacts:1:email:raw:html]</td></tr>
     </table>
-
+    
     <h3>submission limits</h3>
     <table class="table">
     <tr><th width="50%">webform_submission:limit:webform</th><td width="50%">[webform_submission:limit:webform]</td></tr>
@@ -215,7 +216,6 @@ settings:
     <tr><th width="50%">webform_submission:limit:user:source_entity</th><td width="50%">[webform_submission:limit:user:source_entity]</td></tr>
     <tr><th width="50%">webform_submission:total:user:source_entity</th><td width="50%">[webform_submission:total:user:source_entity]</td></tr>
     </table>
-
   confirmation_url: ''
   confirmation_attributes: {  }
   confirmation_back: true
diff --git a/tests/modules/webform_test/config/install/webform.webform.test_token_update.yml b/tests/modules/webform_test/config/install/webform.webform.test_token_update.yml
index 79706ea4..989254cb 100644
--- a/tests/modules/webform_test/config/install/webform.webform.test_token_update.yml
+++ b/tests/modules/webform_test/config/install/webform.webform.test_token_update.yml
@@ -56,6 +56,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -130,6 +131,7 @@ handlers:
       body: '<a href="[webform_submission:update-url]">[webform_submission:update-url]</a>'
       excluded_elements: {  }
       ignore_access: false
+      exclude_empty: true
       html: true
       attachments: false
       debug: false
diff --git a/tests/modules/webform_test_element/config/install/webform.webform.test_element_composite_custom.yml b/tests/modules/webform_test_element/config/install/webform.webform.test_element_composite_custom.yml
index 1a133f24..2d93fc87 100644
--- a/tests/modules/webform_test_element/config/install/webform.webform.test_element_composite_custom.yml
+++ b/tests/modules/webform_test_element/config/install/webform.webform.test_element_composite_custom.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test_element/config/install/webform.webform.test_element_plugin.yml b/tests/modules/webform_test_element/config/install/webform.webform.test_element_plugin.yml
index 9426c403..2940a580 100644
--- a/tests/modules/webform_test_element/config/install/webform.webform.test_element_plugin.yml
+++ b/tests/modules/webform_test_element/config/install/webform.webform.test_element_plugin.yml
@@ -60,6 +60,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test_handler/config/install/webform.webform.test_handler_remote_post.yml b/tests/modules/webform_test_handler/config/install/webform.webform.test_handler_remote_post.yml
index 0d715694..885c2dba 100644
--- a/tests/modules/webform_test_handler/config/install/webform.webform.test_handler_remote_post.yml
+++ b/tests/modules/webform_test_handler/config/install/webform.webform.test_handler_remote_post.yml
@@ -78,6 +78,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test_handler/config/install/webform.webform.test_handler_test.yml b/tests/modules/webform_test_handler/config/install/webform.webform.test_handler_test.yml
index 8d9f1e5a..f1d9c6e7 100644
--- a/tests/modules/webform_test_handler/config/install/webform.webform.test_handler_test.yml
+++ b/tests/modules/webform_test_handler/config/install/webform.webform.test_handler_test.yml
@@ -59,6 +59,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test_options/config/install/webform.webform.test_options.yml b/tests/modules/webform_test_options/config/install/webform.webform.test_options.yml
index ff416b2e..70978176 100644
--- a/tests/modules/webform_test_options/config/install/webform.webform.test_options.yml
+++ b/tests/modules/webform_test_options/config/install/webform.webform.test_options.yml
@@ -261,6 +261,7 @@ settings:
   preview_message: ''
   preview_attributes: {  }
   preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
diff --git a/tests/modules/webform_test_translation/config/install/webform.webform.test_translation.yml b/tests/modules/webform_test_translation/config/install/webform.webform.test_translation.yml
index 94ea771a..8d6888f9 100644
--- a/tests/modules/webform_test_translation/config/install/webform.webform.test_translation.yml
+++ b/tests/modules/webform_test_translation/config/install/webform.webform.test_translation.yml
@@ -54,6 +54,8 @@ settings:
   form_convert_anonymous: false
   form_prepopulate: false
   form_prepopulate_source_entity: false
+  form_prepopulate_source_entity_required: false
+  form_prepopulate_source_entity_type: ''
   form_disable_autocomplete: false
   form_novalidate: false
   form_unsaved: false
@@ -74,6 +76,8 @@ settings:
   preview_title: ''
   preview_message: ''
   preview_attributes: {  }
+  preview_excluded_elements: {  }
+  preview_exclude_empty: true
   draft: none
   draft_multiple: false
   draft_auto_save: false
@@ -153,3 +157,4 @@ handlers:
       reply_to: ''
       return_path: ''
       ignore_access: false
+      exclude_empty: true
diff --git a/webform.install b/webform.install
index 281e1e03..2d571fc3 100644
--- a/webform.install
+++ b/webform.install
@@ -927,5 +927,40 @@ function webform_update_8064() {
   $config->save();
 
   _webform_update_admin_settings();
+}
+
+/**
+ * Issue #2888717: Option to include empty components in [webform-submission:values] token.
+ */
+function webform_update_8065() {
+  _webform_update_webform_settings();
+
+  // Add exclude_empty: TRUE to email handler settings.
+  $config_factory = \Drupal::configFactory();
+  foreach ($config_factory->listAll('webform.webform.') as $webform_config_name) {
+    $webform_config = $config_factory->getEditable($webform_config_name);
+
+    $data = $webform_config->getRawData();
+    $has_email_handler = FALSE;
+    foreach ($data['handlers'] as &$handler) {
+      if ($handler['id'] === 'email') {
+        $has_email_handler = TRUE;
 
+        $settings = [];
+        foreach ($handler['settings'] as $settings_key => $setting_value) {
+          $settings[$settings_key] = $setting_value;
+          if ($settings_key == 'ignore_access') {
+            $settings['exclude_empty'] = TRUE;
+          }
+        }
+        $handler['settings'] = $settings;
+      }
+    }
+
+    if ($has_email_handler) {
+      $webform_config->setData($data);
+      $webform_config->save();
+    }
+  }
 }
+
diff --git a/webform.module b/webform.module
index 3a582f21..be96cb09 100644
--- a/webform.module
+++ b/webform.module
@@ -539,13 +539,13 @@ function webform_theme() {
     ],
 
     'webform_submission_html' => [
-      'variables' => ['webform_submission' => NULL, 'source_entity' => NULL, 'excluded_elements' => []],
+      'variables' => ['webform_submission' => NULL, 'source_entity' => NULL, 'excluded_elements' => [], 'exclude_empty' => TRUE],
     ],
     'webform_submission_table' => [
-      'variables' => ['webform_submission' => NULL, 'source_entity' => NULL, 'excluded_elements' => []],
+      'variables' => ['webform_submission' => NULL, 'source_entity' => NULL, 'excluded_elements' => [], 'exclude_empty' => TRUE],
     ],
     'webform_submission_text' => [
-      'variables' => ['webform_submission' => NULL, 'source_entity' => NULL, 'excluded_elements' => []],
+      'variables' => ['webform_submission' => NULL, 'source_entity' => NULL, 'excluded_elements' => [], 'exclude_empty' => TRUE],
     ],
     'webform_submission_yaml' => [
       'variables' => ['webform_submission' => NULL, 'source_entity' => NULL],
