diff --git a/CHANGELOG.md b/CHANGELOG.md
index 16c1d2677fd4d7a12a20d5103b7f2dc4a635f1cd..c55010f80507c901765164a22b2919f923a5ae02 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -6,10 +6,12 @@ Note that since we don't clearly distinguish between a public and private interf
 
 ## [Unreleased]
 
+- Fix exit code of volume pack executable (pack.ts). Now exits with non-0 status when an error happens
 - Remove pca transform from components ui focus (too distracting)
 - Fix artefacts with opaque outlines behind transparent objects
 - Fix polymer trace visual not updating
 
+
 ## [v3.31.1] - 2023-02-05
 
 - Improve Component camera focus based on the PCA of the structure and the following rules:
diff --git a/src/servers/volume/pack/main.ts b/src/servers/volume/pack/main.ts
index 5cd06cdf380d84007302b106c45c3385d6c5b79c..c51d4f4c6dcfbe483be34eed27fbddafe00cf58e 100644
--- a/src/servers/volume/pack/main.ts
+++ b/src/servers/volume/pack/main.ts
@@ -18,6 +18,7 @@ export async function pack(input: { name: string, filename: string }[], blockSiz
         await create(outputFilename, input, blockSizeInMB, isPeriodic, format);
     } catch (e) {
         console.error('[Error] ' + e);
+        process.exit(1);
     }
 }