diff --git a/run_test.py b/run_test.py
index 1dac2e5..3cbdae2 100755
--- a/run_test.py
+++ b/run_test.py
@@ -10,6 +10,8 @@
 import collections
 
 from concurrent.futures import ThreadPoolExecutor
+import formatters
+import report
 
 import utils
 import ssh_utils
@@ -266,10 +268,14 @@
 def report_stage(cfg, ctx):
     output_dest = cfg.get('output_dest')
     if output_dest is not None:
-        with open(output_dest, "w") as fd:
-            data = {"sensor_data": ctx.sensor_data,
-                    "results": ctx.results}
-            fd.write(json.dumps(data))
+        if output_dest.endswith(".html"):
+            report.render_html_results(ctx, output_dest)
+            logger.info("Results were stored in %s" % output_dest)
+        else:
+            with open(output_dest, "w") as fd:
+                data = {"sensor_data": ctx.sensor_data,
+                        "results": ctx.results}
+                fd.write(json.dumps(data))
     else:
         print "=" * 20 + " RESULTS " + "=" * 20
         pprint.pprint(ctx.results)
