diff --git a/dev/js/src/loc/de.js b/dev/js/src/loc/de.js
index f7f16ca..6c121cf 100644
--- a/dev/js/src/loc/de.js
+++ b/dev/js/src/loc/de.js
@@ -38,6 +38,7 @@
   
   //Corpus statistic
   loc.SHOW_STAT = 'Korpusstatistik';
+  loc.REFRESH = 'Neu laden';
   //verbose description, for title attributes for example
   //loc.VERB_SHOWSTAT = 'Korpusstatistik';
 
diff --git a/dev/js/src/vc/statistic.js b/dev/js/src/vc/statistic.js
index eb626dc..dd955b7 100644
--- a/dev/js/src/vc/statistic.js
+++ b/dev/js/src/vc/statistic.js
@@ -38,7 +38,6 @@
       if (this._element !== undefined) {
         return this._element;
       }
-      ;
 
       // create HTML Description List Element
       var statDL = document.createElement('dl');
diff --git a/dev/js/src/view/corpstatv.js b/dev/js/src/view/corpstatv.js
index 81c18cd..410ee42 100644
--- a/dev/js/src/view/corpstatv.js
+++ b/dev/js/src/view/corpstatv.js
@@ -4,9 +4,11 @@
  * @author Helge Stallkamp
  */
 
-define([ 'view', 'vc/statistic' ], function(viewClass, statClass) {
+define([ 'view', 'vc/statistic', 'buttongroup' ], function(viewClass, statClass, buttonGroup) {
 
-  const d = document;
+  // Localization values
+  const loc   = KorAP.Locale;
+  loc.REFRESH = loc.REFRESH || 'Refresh';
 
   return {
     create : function(vc, panel) {
@@ -139,21 +141,13 @@
       var statt = this._show;
   
       if(statt.getElementsByClassName('reloadStatB').length == 0){
-        var reloadspan = document.createElement('div');
-        reloadspan.classList.add('reloadStatB'); 
-        reloadspan.classList.add('button-group');
-        reloadspan.classList.add('button-panel');
-        reloadb = reloadspan.addE('span');
-        reloadb.classList.add('refresh');
-          
+        let btg = buttonGroup.create(['reloadStatB', 'button-panel']);
         var that = this;
-        reloadb.addEventListener("click", function (e){
-        statt.classList.remove('stdisabled');
-        that.panel.reloadCorpStat(); 
+        btg.add(loc.REFRESH, ['refresh', 'button-icon'], function (e) {
+          statt.classList.remove('stdisabled');
+          that.panel.reloadCorpStat(); 
         });
-          
-
-        statt.appendChild(reloadspan);
+        statt.appendChild(btg.element());
         statt.classList.add('stdisabled');
         }
     },
