diff --git a/cfg_checker/helpers/tgz.py b/cfg_checker/helpers/tgz.py
index 631125e..754f0de 100644
--- a/cfg_checker/helpers/tgz.py
+++ b/cfg_checker/helpers/tgz.py
@@ -8,13 +8,17 @@
 
 class TGZFile(object):
     basefile = None
+    _labelname = "labelfile"
 
     def __init__(self, _filepath, label=None):
         # Check if this filename exists
         if not os.path.exists(_filepath):
             # If the archive not exists, create it
             # simple labelfile for a non-empty archive
-            _labelname = "labelfile"
+
+            if not label:
+                label = "MCP Checker TGZ file"
+
             with tempfile.TemporaryFile() as _tempfile:
                 _tempfile.write(label.encode('utf-8'))
                 _tempfile.flush()
@@ -22,7 +26,7 @@
                 # create tgz
                 with tarfile.open(_filepath, "w:gz") as tgz:
                     _info = tgz.gettarinfo(
-                        arcname=_labelname,
+                        arcname=self._labelname,
                         fileobj=_tempfile
                     )
                     tgz.addfile(_info, fileobj=_tempfile)
@@ -124,9 +128,11 @@
                     _n.append(f.rsplit('/', 1)[1])
                 else:
                     _n.append(f)
-            return _n
-        else:
-            return _names
+            _names = _n
+        # remove label file from output
+        if self._labelname in _names:
+            _names.remove(self._labelname)
+        return _names
 
     def has_file(self, name):
         if name in self.list_files():
