diff --git a/modules/aeolus/aeolus_amv.py b/modules/aeolus/aeolus_amv.py
index 392cf367a224f2b98951b0e7dee93686ddf301dd..e3bd4231efe02978d7a5101dc346dc98b0895424 100644
--- a/modules/aeolus/aeolus_amv.py
+++ b/modules/aeolus/aeolus_amv.py
@@ -2058,38 +2058,39 @@ def create_bestfit_file(filename, match_dct, raob_dct, gfs_at_raob_dct, bf_dct,
     dim_alevs = rootgrp.createDimension('max_num_raob_levels', size=max_num_alevels)
     dim_amvs = rootgrp.createDimension('max_num_amvs', size=max_num_amvs)
     dim_num_aeolus_prof = rootgrp.createDimension('num_raob_profs', size=num_aprofs)
+    dim_time = rootgrp.createDimension('time', size=1)
 
-    #prf_time = rootgrp.createVariable('time', 'f4', ['num_aeolus_profs'])
+    time = rootgrp.createVariable('time', 'f4', ['time'])
+    time.units = 'seconds since 1970-01-1 00:00:00'
     #amv_file_names = rootgrp.createVariable('amv_file_names', str, ['num_amv_files'])
 
     # ---- Profile variables ---------------
-    prf_lon = rootgrp.createVariable('raob_longitude', 'f4', ['num_raob_profs'])
+    prf_lon = rootgrp.createVariable('raob_longitude', 'f4', ['time', 'num_raob_profs'])
     prf_lon.units = 'degrees east'
-    prf_lat = rootgrp.createVariable('raob_latitude', 'f4', ['num_raob_profs'])
+    prf_lat = rootgrp.createVariable('raob_latitude', 'f4', ['time', 'num_raob_profs'])
     prf_lat.units = 'degrees north'
-    #prf_time.units = 'seconds since 1970-01-1 00:00:00'
 
-    prf_dir = rootgrp.createVariable('raob_dir', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
+    prf_dir = rootgrp.createVariable('raob_dir', 'f4', ['time', 'num_raob_profs', 'max_num_raob_levels'])
     prf_dir.units = 'degree'
-    prf_spd = rootgrp.createVariable('raob_spd', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
+    prf_spd = rootgrp.createVariable('raob_spd', 'f4', ['time', 'num_raob_profs', 'max_num_raob_levels'])
     prf_spd.units = 'm s-1'
-    prf_lvl = rootgrp.createVariable('raob_levels', 'f4', ['num_raob_profs', 'max_num_raob_levels'])
+    prf_lvl = rootgrp.createVariable('raob_levels', 'f4', ['time', 'num_raob_profs', 'max_num_raob_levels'])
     prf_lvl.units = 'millibar'
 
     # ----- Product variables ----------------
     nc4_vars = []
-    nc4_vars.append(rootgrp.createVariable('amv_lon', 'f4', ['num_raob_profs', 'max_num_amvs']))
-    nc4_vars.append(rootgrp.createVariable('amv_lat', 'f4', ['num_raob_profs', 'max_num_amvs']))
-    nc4_vars.append(rootgrp.createVariable('amv_elem', 'i4', ['num_raob_profs', 'max_num_amvs']))
-    nc4_vars.append(rootgrp.createVariable('amv_line', 'i4', ['num_raob_profs', 'max_num_amvs']))
+    nc4_vars.append(rootgrp.createVariable('amv_lon', 'f4', ['time', 'num_raob_profs', 'max_num_amvs']))
+    nc4_vars.append(rootgrp.createVariable('amv_lat', 'f4', ['time', 'num_raob_profs', 'max_num_amvs']))
+    nc4_vars.append(rootgrp.createVariable('amv_elem', 'i4', ['time', 'num_raob_profs', 'max_num_amvs']))
+    nc4_vars.append(rootgrp.createVariable('amv_line', 'i4', ['time', 'num_raob_profs', 'max_num_amvs']))
     var_s = rg_exmpl.variables
     for pidx, param in enumerate(amv_params):
         v = var_s[param]
         attr_s = v.ncattrs()
         if '_FillValue' in attr_s:
-            var = rootgrp.createVariable(param, v.dtype, ['num_raob_profs', 'max_num_amvs'], fill_value=v.getncattr('_FillValue'))
+            var = rootgrp.createVariable(param, v.dtype, ['time', 'num_raob_profs', 'max_num_amvs'], fill_value=v.getncattr('_FillValue'))
         else:
-            var = rootgrp.createVariable(param, v.dtype, ['num_raob_profs', 'max_num_amvs'])
+            var = rootgrp.createVariable(param, v.dtype, ['time', 'num_raob_profs', 'max_num_amvs'])
         # copy attributes from example to new output variable of the same name
         for attr in attr_s:
             if attr != '_FillValue':
@@ -2098,9 +2099,15 @@ def create_bestfit_file(filename, match_dct, raob_dct, gfs_at_raob_dct, bf_dct,
 
     amv_params = ['amv_lon', 'amv_lat', 'amv_elem', 'amv_line'] + amv_params
 
+    # Bestfit variables ------------------
+    var_u = rootgrp.createVariable('bf_raob_u', 'f4', ['time', 'num_raob_profs', 'max_num_amvs'])
+    var_v = rootgrp.createVariable('bf_raob_v', 'f4', ['time', 'num_raob_profs', 'max_num_amvs'])
+    var_p = rootgrp.createVariable('bf_raob_press', 'f4', ['time', 'num_raob_profs', 'max_num_amvs'])
+    var_flg = rootgrp.createVariable('bf_raob_flag', 'i4', ['time', 'num_raob_profs', 'max_num_amvs'])
+
     # Write data to file  ---------------------
-    prf_lon[:] = alons
-    prf_lat[:] = alats
+    prf_lon[0, :] = alons
+    prf_lat[0, :] = alats
 
     #amv_file_names[:] = amv_file_s
 
@@ -2111,12 +2118,17 @@ def create_bestfit_file(filename, match_dct, raob_dct, gfs_at_raob_dct, bf_dct,
         amvs = bf_tup[0]
         num_amvs = amvs.shape[0]
 
-        prf_lvl[idx,0:nlevs] = raob[:, 0]
-        prf_dir[idx,0:nlevs] = raob[:, 2]
-        prf_spd[idx,0:nlevs] = raob[:, 3]
+        prf_lvl[0, idx,0:nlevs] = raob[:, 0]
+        prf_dir[0, idx,0:nlevs] = raob[:, 2]
+        prf_spd[0, idx,0:nlevs] = raob[:, 3]
 
         for pidx, param in enumerate(amv_params):
-            nc4_vars[pidx][idx, 0:num_amvs] = amvs[:, pidx]
+            nc4_vars[pidx][0, idx, 0:num_amvs] = amvs[:, pidx]
+
+        bf_raob = bf_tup[1]
+        var_u[0, idx, 0:num_amvs] = bf_raob[:, 0]
+        var_v[0, idx, 0:num_amvs] = bf_raob[:, 1]
+        var_p[0, idx, 0:num_amvs] = bf_raob[:, 2]
 
     rg_exmpl.close()
     rootgrp.close()