diff --git a/igm_checks.py b/igm_checks.py
index acb6b8a1db37c86b5bb5cfdc109e81b793ebb31f..df3054bf87dec1c825e1ed2556f13b87c467f594 100644
--- a/igm_checks.py
+++ b/igm_checks.py
@@ -20,6 +20,6 @@ def spike_check(igms, parameters):
     datetime_grouped = igms.groupby('datetime')
 
     return pd.concat([
-        datetime_grouped[['spike_check']].any(),
+        datetime_grouped[['spike_check']].any() * 1.0,
         datetime_grouped[['sceneMirrorPosition']].first()
     ], axis=1).reset_index()
diff --git a/main.py b/main.py
index c5d147352303cd2233a1f6fe41a230041dc98819..b2f9be026b0ec39c69be699b84dbaa6a23bce0a8 100644
--- a/main.py
+++ b/main.py
@@ -113,6 +113,8 @@ def check_frame(frame, parameters):
     """
     frame['qc_percent'] = 0
     frame['qc_notes'] = None
+    for check_column in frame.filter(like='_check').columns:
+        frame['qc_percent'] = frame['qc_percent'] + frame[check_column].fillna(0) - frame['qc_percent'] * frame[check_column].fillna(0)
     for level in levels:
         level.set_params(parameters)
         frame = level.compute(frame)