diff --git a/modules/webform_image_select/src/Element/WebformImageSelect.php b/modules/webform_image_select/src/Element/WebformImageSelect.php
index 212c75cc..4c2fff3b 100644
--- a/modules/webform_image_select/src/Element/WebformImageSelect.php
+++ b/modules/webform_image_select/src/Element/WebformImageSelect.php
@@ -66,8 +66,8 @@ class WebformImageSelect extends Select {
   public static function setOptions(array &$element) {
     // Randomize images.
     if (!empty($element['#images_randomize'])) {
-
       $element['#images'] = WebformArrayHelper::shuffle($element['#images']);
+      \Drupal::service('page_cache_kill_switch')->trigger();
     }
 
     // Convert #images to #options and make sure images are keyed by value.
diff --git a/src/Element/WebformLikert.php b/src/Element/WebformLikert.php
index 59d3f2d3..90642b6f 100644
--- a/src/Element/WebformLikert.php
+++ b/src/Element/WebformLikert.php
@@ -105,6 +105,7 @@ class WebformLikert extends FormElement {
     // Randomize questions.
     if (!empty($element['#questions_randomize'])) {
       $element['#questions'] = WebformArrayHelper::shuffle($element['#questions']);
+      \Drupal::service('page_cache_kill_switch')->trigger();
     }
 
     // Build rows.
diff --git a/src/Plugin/WebformElement/Container.php b/src/Plugin/WebformElement/Container.php
index 4f142a94..b39fa208 100644
--- a/src/Plugin/WebformElement/Container.php
+++ b/src/Plugin/WebformElement/Container.php
@@ -23,6 +23,8 @@ class Container extends ContainerBase {
     return [
       // Attributes.
       'attributes' => [],
+      // Randomize.
+      'randomize' => FALSE,
       // Flexbox.
       'flex' => 1,
       // Conditional logic.
diff --git a/src/Plugin/WebformElement/ContainerBase.php b/src/Plugin/WebformElement/ContainerBase.php
index 5f17f9f3..fd40aa5d 100644
--- a/src/Plugin/WebformElement/ContainerBase.php
+++ b/src/Plugin/WebformElement/ContainerBase.php
@@ -4,7 +4,9 @@ namespace Drupal\webform\Plugin\WebformElement;
 
 use Drupal\Component\Utility\Unicode;
 use Drupal\Core\Form\FormStateInterface;
+use Drupal\Core\Render\Element;
 use Drupal\webform\Plugin\WebformElementBase;
+use Drupal\webform\Utility\WebformArrayHelper;
 use Drupal\webform\WebformInterface;
 use Drupal\webform\WebformSubmissionInterface;
 
@@ -21,6 +23,8 @@ abstract class ContainerBase extends WebformElementBase {
       'title' => '',
       // Form validation.
       'required' => FALSE,
+      // Randomize.
+      'randomize' => FALSE,
       // Attributes.
       'attributes' => [],
       // Format.
@@ -53,6 +57,23 @@ abstract class ContainerBase extends WebformElementBase {
     return TRUE;
   }
 
+  /**
+   * {@inheritdoc}
+   */
+  public function prepare(array &$element, WebformSubmissionInterface $webform_submission = NULL) {
+    parent::prepare($element, $webform_submission);
+
+    if (!empty($element['#randomize'])) {
+      $elements = [];
+      foreach (Element::children($element) as $child_key) {
+        $elements[$child_key] = $element[$child_key];
+        unset($element[$child_key]);
+      }
+      $element += WebformArrayHelper::shuffle($elements);
+      \Drupal::service('page_cache_kill_switch')->trigger();
+    }
+  }
+
   /**
    * {@inheritdoc}
    */
@@ -221,6 +242,15 @@ abstract class ContainerBase extends WebformElementBase {
    */
   public function form(array $form, FormStateInterface $form_state) {
     $form = parent::form($form, $form_state);
+
+    // Randomize.
+    $form['element']['randomize'] = [
+      '#type' => 'checkbox',
+      '#title' => $this->t('Randomize elements'),
+      '#description' => $this->t('Randomizes the order of the sub-element when they are displayed in the webform.'),
+      '#return_value' => TRUE,
+    ];
+
     // Containers are wrappers, therefore wrapper classes should be used by the
     // container element.
     $form['element_attributes']['attributes']['#classes'] = $this->configFactory->get('webform.settings')->get('element.wrapper_classes');
diff --git a/src/Plugin/WebformElement/OptionsBase.php b/src/Plugin/WebformElement/OptionsBase.php
index 0ce4f568..7132de08 100644
--- a/src/Plugin/WebformElement/OptionsBase.php
+++ b/src/Plugin/WebformElement/OptionsBase.php
@@ -187,6 +187,7 @@ abstract class OptionsBase extends WebformElementBase {
     // Randomize options.
     if (isset($element['#options']) && !empty($element['#options_randomize'])) {
       $element['#options'] = WebformArrayHelper::shuffle($element['#options']);
+      \Drupal::service('page_cache_kill_switch')->trigger();
     }
 
     // Options description display must be set to trigger the description display.
