diff --git a/core/lib/Drupal/Core/Form/FormBuilder.php b/core/lib/Drupal/Core/Form/FormBuilder.php
index 40c598f..27f8bf5 100644
--- a/core/lib/Drupal/Core/Form/FormBuilder.php
+++ b/core/lib/Drupal/Core/Form/FormBuilder.php
@@ -236,10 +236,13 @@ public function buildForm($form_id, FormStateInterface &$form_state) {
       //   not desired.
       // - temporary: Any assigned data is expected to survives within the same
       //   page request.
+      // - input: Any user submitted data is expected to survive within the same
+      //   page request.
       if ($check_cache) {
         $cache_form_state = $form_state->getCacheableArray();
         $cache_form_state['always_process'] = $form_state->getAlwaysProcess();
         $cache_form_state['temporary'] = $form_state->getTemporary();
+        $cache_form_state['input'] = $form_state->getUserInput();
         $form_state = $form_state_before_retrieval;
         $form_state->setFormState($cache_form_state);
       }
