diff --git a/Changes b/Changes
index beb376b..0719d14 100644
--- a/Changes
+++ b/Changes
@@ -3,7 +3,7 @@
 - Add an exception for missing layer.
 - Use database for querying VC statistics.
 - Fixed statistics conversion.
-
+- Always update VC statistics at server start
 
 # version 1.0
 
diff --git a/src/main/java/de/ids_mannheim/korap/init/NamedVCLoader.java b/src/main/java/de/ids_mannheim/korap/init/NamedVCLoader.java
index b2a8eff..7973b1d 100644
--- a/src/main/java/de/ids_mannheim/korap/init/NamedVCLoader.java
+++ b/src/main/java/de/ids_mannheim/korap/init/NamedVCLoader.java
@@ -158,14 +158,17 @@
                 updateCache = true;
                 // updateVCinDB
                 storeVCinDB(vcId, json, existingVC, apiVersion);
+                cacheVC(vcId, json, updateCache);
             }
-            else if (existingVC.getStatistics()== null) {
-            	jlog.info("Update statistics for VC: {}", vcId);
+            else {
+            	cacheVC(vcId, json, updateCache);
+            	
+                jlog.info("Update statistics for VC: {}", vcId);
+                existingVC.setStatistics(null);
             	String statistics = vcService.computeStatisticsForVC(existingVC, 
             			QueryType.VIRTUAL_CORPUS, apiVersion);
             	vcService.updateVCStatistics(existingVC,statistics);
-            }
-            cacheVC(vcId, json, updateCache);
+			}
         }
         catch (KustvaktException e) {
         	cacheVC(vcId, json, updateCache);
