diff --git a/core/modules/statistics/statistics.info.yml b/core/modules/statistics/statistics.info.yml
index 6582bec..e758f5c 100644
--- a/core/modules/statistics/statistics.info.yml
+++ b/core/modules/statistics/statistics.info.yml
@@ -5,3 +5,5 @@ package: Core
 version: VERSION
 core: 8.x
 configure: statistics.settings
+dependencies:
+  - node
diff --git a/core/modules/statistics/statistics.install b/core/modules/statistics/statistics.install
index 4451341..236badd 100644
--- a/core/modules/statistics/statistics.install
+++ b/core/modules/statistics/statistics.install
@@ -57,3 +57,24 @@ function statistics_schema() {
 
   return $schema;
 }
+
+/**
+ * Implements hook_update_N().
+ */
+function statistics_update_8001() {
+  if (!\Drupal::moduleHandler()->moduleExists('node')) {
+    $result = db_select('node_counter', 'nc')
+      ->countQuery()
+      ->range(0,1)
+      ->execute()
+      ->fetchField();
+    if ($result == 0) {
+      \Drupal::service('module_installer')->uninstall(array('statistics'), TRUE);
+      drupal_set_message('The statistics module depends on the node module and has therefore been uninstalled','status');
+    }
+    else {
+      \Drupal::service('module_installer')->install(array('node'), TRUE);
+      drupal_set_message('The node module is required for the statistics module and has therefore been installed.','status');
+    }
+  }
+}
