diff --git a/src/leap/soledad/client/_db/blobs/sql.py b/src/leap/soledad/client/_db/blobs/sql.py
index 6b92c5039369ac8a78b723b33fd230124d141fef..a192ae1ec4b64e1cb702de0ce1e4821d574101bd 100644
--- a/src/leap/soledad/client/_db/blobs/sql.py
+++ b/src/leap/soledad/client/_db/blobs/sql.py
@@ -217,6 +217,20 @@ class SQLiteBlobBackend(object):
         else:
             defer.returnValue([])
 
+    @defer.inlineCallbacks
+    def get_size_list(self, blob_ids, namespace=''):
+        query = 'SELECT BLOB_ID, LENGTH(PAYLOAD) FROM BLOBS WHERE BLOB_ID IN '
+        query += ('(%s)' % ', '.join(['?' for _ in blob_ids]))
+        query += ' AND NAMESPACE = ? ORDER BY BLOB_ID'
+        values = tuple(blob_ids) + (namespace,)
+        results = yield self.dbpool.runQuery(query, values)
+        if results:
+            results = dict([(result[0], result[1]) for result in results])
+            results = [(blob_id, results[blob_id]) for blob_id in blob_ids]
+            defer.returnValue(results)
+        else:
+            defer.returnValue([])
+
     @defer.inlineCallbacks
     def exists(self, blob_id, namespace=''):
         query = 'SELECT blob_id from blobs WHERE blob_id = ? AND namespace= ?'