diff --git a/src/mol-io/reader/cif/text/parser.ts b/src/mol-io/reader/cif/text/parser.ts
index 610c7b0f8eb780224f4fb822295887bded4d50c6..3ee75e270731600d06f6ab72b39d9359c1227f06 100644
--- a/src/mol-io/reader/cif/text/parser.ts
+++ b/src/mol-io/reader/cif/text/parser.ts
@@ -635,7 +635,7 @@ async function parseInternal(data: string, runtimeCtx: RuntimeContext) {
         return error(tokenizer.lineNumber, `Unfinished save frame (${saveFrame.header}).`);
     }
 
-    if (blockCtx.categoryNames.length > 0) {
+    if (blockCtx.categoryNames.length > 0 || saveFrames.length > 0) {
         dataBlocks.push(Data.CifBlock(blockCtx.categoryNames, blockCtx.categories, blockHeader, saveFrames));
     }