diff --git a/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/TimeZone.php b/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/TimeZone.php
new file mode 100644
index 0000000..226b8df
--- /dev/null
+++ b/core/modules/migrate_drupal/src/Plugin/migrate/process/d6/TimeZone.php
@@ -0,0 +1,40 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\migrate_drupal\Plugin\migrate\process\d6\TimeZone.
+ */
+
+namespace Drupal\migrate_drupal\Plugin\migrate\process\d6;
+
+use Drupal\migrate\MigrateExecutableInterface;
+use Drupal\migrate\ProcessPluginBase;
+use Drupal\migrate\Row;
+
+/**
+ * Process the D6 Timezone offset into a D8 compatible timezone name.
+ *
+ * @MigrateProcessPlugin(
+ *   id = "timezone"
+ * )
+ */
+class TimeZone extends ProcessPluginBase {
+
+  /**
+   * {@inheritdoc}
+   */
+  public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
+
+    $offset = $value;
+    // Convert the integer value of the offset (which can be either
+    // negative or positive) to a timezone name.
+    // Note: Daylight saving time is not to be used.
+    $timezone_name = timezone_name_from_abbr('', intval($offset), 0);
+    if (!$timezone_name) {
+      $timezone_name = 'UTC';
+    }
+
+    return $timezone_name;
+  }
+
+}
diff --git a/core/modules/migrate_drupal/src/Tests/Table/d6/Variable.php b/core/modules/migrate_drupal/src/Tests/Table/d6/Variable.php
index 83555c7..79e6680 100644
--- a/core/modules/migrate_drupal/src/Tests/Table/d6/Variable.php
+++ b/core/modules/migrate_drupal/src/Tests/Table/d6/Variable.php
@@ -173,6 +173,9 @@ public function load() {
       'name' => 'comment_subject_field_story',
       'value' => 's:1:"0";',
     ))->values(array(
+      'name' => 'configurable_timezones',
+      'value' => 's:1:"0";',
+    ))->values(array(
       'name' => 'contact_default_status',
       'value' => 'i:1;',
     ))->values(array(
@@ -380,6 +383,12 @@ public function load() {
       'name' => 'date_api_version',
       'value' => 's:3:"5.2";',
     ))->values(array(
+      'name' => 'date_default_timezone',
+      'value' => 's:4:"3600";',
+    ))->values(array(
+      'name' => 'date_first_day',
+      'value' => 's:1:"4";',
+    ))->values(array(
       'name' => 'date_format_long',
       'value' => 's:24:"\L\O\N\G l, F j, Y - H:i";',
     ))->values(array(
@@ -725,4 +734,4 @@ public function load() {
   }
 
 }
-#32b72a0543c243804368c7bc10b05be5
+#dd0717c35d3b181c80e5ad74ea2ed2f7
diff --git a/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6Test.php b/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6Test.php
index ac5a836..6efa78b 100644
--- a/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6Test.php
+++ b/core/modules/migrate_drupal/src/Tests/d6/MigrateDrupal6Test.php
@@ -120,6 +120,7 @@ class MigrateDrupal6Test extends MigrateFullDrupalTestBase {
     'd6_statistics_settings',
     'd6_syslog_settings',
     'd6_system_cron',
+    'd6_system_date',
     'd6_system_file',
     'd6_system_image',
     'd6_system_image_gd',
diff --git a/core/modules/system/migration_templates/d6_system_date.yml b/core/modules/system/migration_templates/d6_system_date.yml
new file mode 100644
index 0000000..fe8669e
--- /dev/null
+++ b/core/modules/system/migration_templates/d6_system_date.yml
@@ -0,0 +1,24 @@
+id: d6_system_date
+label: Drupal 6 system date configuration
+migration_tags:
+  - Drupal 6
+source:
+  plugin: variable
+  variables:
+    - configurable_timezones
+    - date_first_day
+    - date_default_timezone
+process:
+  'timezone/user/configurable':
+    plugin: static_map
+    source: configurable_timezones
+    map:
+      0: FALSE
+      1: TRUE
+  first_day: date_first_day
+  'timezone/default':
+    plugin: timezone
+    source: date_default_timezone
+destination:
+  plugin: config
+  config_name: system.date
diff --git a/core/modules/system/src/Tests/Migrate/d6/MigrateSystemDateTest.php b/core/modules/system/src/Tests/Migrate/d6/MigrateSystemDateTest.php
new file mode 100644
index 0000000..f3fe4e4
--- /dev/null
+++ b/core/modules/system/src/Tests/Migrate/d6/MigrateSystemDateTest.php
@@ -0,0 +1,37 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\system\Tests\Migrate\d6\MigrateSystemDateTest.
+ */
+
+namespace Drupal\system\Tests\Migrate\d6;
+
+use Drupal\migrate_drupal\Tests\d6\MigrateDrupal6TestBase;
+
+/**
+ * Upgrade date time variables to system.*.yml.
+ *
+ * @group system
+ */
+class MigrateSystemDateTest extends MigrateDrupal6TestBase {
+
+  /**
+   * {@inheritdoc}
+   */
+  protected function setUp() {
+    parent::setUp();
+    $this->loadDumps(['Variable.php']);
+    $this->executeMigration('d6_system_date');
+  }
+
+  /**
+   * Tests migration of user variables to system_date.yml.
+   */
+  public function testSystemDate() {
+    $config = \Drupal::config('system.date');
+    $this->assertIdentical(4, $config->get('first_day'));
+    $this->assertIdentical(FALSE, $config->get('timezone.user.configurable'));
+    $this->assertIdentical("Europe/Paris", $config->get('timezone.default'));
+  }
+}
