diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2dbc1ee2c333b968af69e7d7a83ec60fe281e6b9..9b8ee250626951f75f44cd022b5597c15b938112 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -16,6 +16,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
 
 ### Changed ###
 
+* `table_converter.to_table` now returns an empty DataFrame instead of raising a
+  ValueError when called with an empty container.
+
 ### Deprecated ###
 
 ### Removed ###
diff --git a/src/caosadvancedtools/table_converter.py b/src/caosadvancedtools/table_converter.py
index adaa2578869c775814526ec46387fe74fb8d42ff..7d1097e13a0780a7656a18c71bf7f408df5c69c5 100644
--- a/src/caosadvancedtools/table_converter.py
+++ b/src/caosadvancedtools/table_converter.py
@@ -52,8 +52,7 @@ def to_table(container):
     """Create a table from the records in a container."""
 
     if len(container) == 0:
-        raise ValueError("Container is empty")
-        # TODO Why not this? return pd.DataFrame()
+        return pd.DataFrame()
     rts = {p.name for p in container[0].parents}
 
     data = []
diff --git a/unittests/test_table_converter.py b/unittests/test_table_converter.py
index 230687444bf72998cd0af9ac9d0e731678791263..9b1ac11b7c9ed5251f05c921fb08f7c42079c91a 100644
--- a/unittests/test_table_converter.py
+++ b/unittests/test_table_converter.py
@@ -43,7 +43,8 @@ class TableTest(unittest.TestCase):
 
     def test_empty(self):
         c = db.Container()
-        self.assertRaises(ValueError, to_table, c)
+        df = to_table(c)
+        assert df.shape == (0, 0)
 
     def test_different_props(self):
         r1 = db.Record()