diff --git a/core/lib/Drupal/Core/Datetime/Element/Datelist.php b/core/lib/Drupal/Core/Datetime/Element/Datelist.php
index 59177e7..cd680ed 100644
--- a/core/lib/Drupal/Core/Datetime/Element/Datelist.php
+++ b/core/lib/Drupal/Core/Datetime/Element/Datelist.php
@@ -311,7 +311,7 @@ public static function validateDatelist(&$element, FormStateInterface $form_stat
       }
       // If there's empty input and the field is required, set an error.
       elseif (empty($input['year']) && empty($input['month']) && empty($input['day']) && $element['#required']) {
-        $form_state->setError($element, t('The %field date is required.'));
+        $form_state->setError($element, t('The %field date is required.', array('%field' => !empty($element['#title']) ? $element['#title'] : '')));
       }
       elseif (!empty($all_empty)) {
         foreach ($all_empty as $value) {
diff --git a/core/modules/datetime/src/Tests/DateTimeFieldTest.php b/core/modules/datetime/src/Tests/DateTimeFieldTest.php
index cb487d6..b969b2f 100644
--- a/core/modules/datetime/src/Tests/DateTimeFieldTest.php
+++ b/core/modules/datetime/src/Tests/DateTimeFieldTest.php
@@ -709,6 +709,7 @@ public function testInvalidField() {
     $this->fieldStorage->setSetting('datetime_type', 'datetime');
     $this->fieldStorage->save();
     $field_name = $this->fieldStorage->getName();
+    $field_label = $this->field->getLabel();
 
     // Display creation form.
     $this->drupalGet('entity_test/add');
@@ -722,7 +723,7 @@ public function testInvalidField() {
       "{$field_name}[0][value][time]" => '12:00:00',
     ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', 'Empty date value has been caught.');
+    $this->assertText(format_string('The @field_name date is invalid', ['@field_name' => $field_label]), 'Empty date value has been caught.');
 
     $date_value = 'aaaa-12-01';
     $edit = [
@@ -730,7 +731,7 @@ public function testInvalidField() {
       "{$field_name}[0][value][time]" => '00:00:00',
     ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid year value %date has been caught.', ['%date' => $date_value]));
+    $this->assertText(format_string('The @field_name date is invalid', ['@field_name' => $field_label]), format_string('Invalid year value %date has been caught.', ['%date' => $date_value]));
 
     $date_value = '2012-75-01';
     $edit = [
@@ -738,7 +739,7 @@ public function testInvalidField() {
       "{$field_name}[0][value][time]" => '00:00:00',
     ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid month value %date has been caught.', ['%date' => $date_value]));
+    $this->assertText(format_string('The @field_name date is invalid', ['@field_name' => $field_label]), format_string('Invalid month value %date has been caught.', ['%date' => $date_value]));
 
     $date_value = '2012-12-99';
     $edit = [
@@ -746,7 +747,7 @@ public function testInvalidField() {
       "{$field_name}[0][value][time]" => '00:00:00',
     ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid day value %date has been caught.', ['%date' => $date_value]));
+    $this->assertText(format_string('The @field_name date is invalid', ['@field_name' => $field_label]), format_string('Invalid day value %date has been caught.', ['%date' => $date_value]));
 
     $date_value = '2012-12-01';
     $time_value = '';
@@ -755,7 +756,7 @@ public function testInvalidField() {
       "{$field_name}[0][value][time]" => $time_value,
     ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', 'Empty time value has been caught.');
+    $this->assertText(format_string('The @field_name date is invalid', ['@field_name' => $field_label]), format_string('Invalid hour value %time has been caught.', ['%time' => $time_value]));
 
     $date_value = '2012-12-01';
     $time_value = '49:00:00';
@@ -764,7 +765,7 @@ public function testInvalidField() {
       "{$field_name}[0][value][time]" => $time_value,
     ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid hour value %time has been caught.', ['%time' => $time_value]));
+    $this->assertText(format_string('The @field_name date is invalid', ['@field_name' => $field_label]), format_string('Invalid minute value %time has been caught.', ['%time' => $time_value]));
 
     $date_value = '2012-12-01';
     $time_value = '12:99:00';
@@ -773,7 +774,7 @@ public function testInvalidField() {
       "{$field_name}[0][value][time]" => $time_value,
     ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid minute value %time has been caught.', ['%time' => $time_value]));
+    $this->assertText(format_string('The @field_name date is invalid', ['@field_name' => $field_label]), format_string('Invalid second value %time has been caught.', ['%time' => $time_value]));
 
     $date_value = '2012-12-01';
     $time_value = '12:15:99';
@@ -782,7 +783,7 @@ public function testInvalidField() {
       "{$field_name}[0][value][time]" => $time_value,
     ];
     $this->drupalPostForm(NULL, $edit, t('Save'));
-    $this->assertText('date is invalid', format_string('Invalid second value %time has been caught.', ['%time' => $time_value]));
+    $this->assertText(format_string('The @field_name date is invalid', ['@field_name' => $field_label]), format_string('Invalid second value %time has been caught.', ['%time' => $time_value]));
   }
 
   /**
