diff --git a/nix/mk_tests.nix b/nix/mk_tests.nix
index 458ef9320aca2cd4eed0c6ba985817966bd0aaba..94b36bd5ab0e48d234f69c9c72e26673e11dc7d5 100644
--- a/nix/mk_tests.nix
+++ b/nix/mk_tests.nix
@@ -90,6 +90,7 @@ stdenvNoCC.mkDerivation {
     if cover
     then ''
       bisect-ppx-report cobertura --coverage-path=coverage coverage.xml
+      tar cfJ coverage.tar.xz coverage.xml
     ''
     else "" ;
 
@@ -103,6 +104,6 @@ stdenvNoCC.mkDerivation {
   # No installation required
   installPhase = ''
     mkdir $out
-    cp -r coverage.xml $out
+    cp -r coverage.tar.xz $out
   '';
 }
diff --git a/nix/ts-api.nix b/nix/ts-api.nix
index 064a4207d0955408b9ff899bbf767dafd8af8d38..7662fdbcb2a394c82218cd8bfc939e58d07d6ad2 100644
--- a/nix/ts-api.nix
+++ b/nix/ts-api.nix
@@ -32,11 +32,12 @@ stdenv.mkDerivation rec {
     export BISECT_FILE="$(pwd)/coverage/bisect-"
     make -C ivette check-api
     bisect-ppx-report cobertura --coverage-path=coverage coverage.xml
+    tar cfJ coverage.tar.xz coverage.xml
   '';
 
   # No installation required
   installPhase = ''
     mkdir $out
-    cp -r coverage.xml $out
+    cp -r coverage.tar.xz $out
   '';
 }