diff --git a/aosstower/level_b1/nc.py b/aosstower/level_b1/nc.py
index 099eea9af804d203fa29aabcd168ddf839d7bfd1..c85f9a76b1a9625a0cafbff07b5f74794da5a51e 100644
--- a/aosstower/level_b1/nc.py
+++ b/aosstower/level_b1/nc.py
@@ -16,7 +16,7 @@ from aosstower.level_00 import parser
 from metobscommon.util import calc
 from metobscommon.util.nc import (make_summary_dict, write_vars,
                                   calculate_wind_gust, summary_over_interval,
-                                  create_variables)
+                                  create_variables, write_qc_for_unwritten)
 
 LOG = logging.getLogger(__name__)
 SOFTWARE_VERSION = '00'
@@ -125,7 +125,15 @@ def create_giant_netcdf(input_files, output_fn, zlib, chunk_size,
     nc_file.createDimension('time', None)
     nc_file.createDimension('max_len_station_name', 32)
     create_variables(nc_file, first_stamp, database, chunk_sizes, zlib)
-    write_vars(nc_file, frame, database, station_info)
+    written_vars = write_vars(nc_file, frame, database, station_info)
+    unwritten_vars = set(nc_file.variables.keys()) - set(written_vars)
+    written_vars.extend(write_qc_for_unwritten(nc_file.variables,
+                                               unwritten_vars))
+    # remove any of the qc_ variables we just added
+    unwritten_vars = set(nc_file.variables.keys()) - set(written_vars)
+    for unwritten in unwritten_vars:
+        LOG.warning("Variable created but no data written: {}".format(unwritten))
+
     write_global_attributes(nc_file,
                             [os.path.basename(x) for x in input_files],
                             interval=interval_width,