diff --git a/lib/benchmark/bigo.rb b/lib/benchmark/bigo.rb
index <HASH>..<HASH> 100644
--- a/lib/benchmark/bigo.rb
+++ b/lib/benchmark/bigo.rb
@@ -35,6 +35,10 @@ module Benchmark
 
       job.run
 
+      if job.data?
+        job.generate_data
+      end
+
       if job.chart?
         job.generate_chart
       end
diff --git a/lib/benchmark/bigo/job.rb b/lib/benchmark/bigo/job.rb
index <HASH>..<HASH> 100644
--- a/lib/benchmark/bigo/job.rb
+++ b/lib/benchmark/bigo/job.rb
@@ -57,6 +57,7 @@ module Benchmark
         @increments = 5
         @logscale = false
         @chart = nil
+        @data_file = nil
       end
 
       def config opts
@@ -74,6 +75,14 @@ module Benchmark
         @chart = filename
       end
 
+      def data?
+        @data_file
+      end
+
+      def data! filename='data.json'
+        @data_file = filename
+      end
+
       def logscale= val
         @logscale = val
         @full_report.logscale! if @logscale
@@ -155,6 +164,16 @@ module Benchmark
         @full_report.per_iterations = 10**Math.log10(max_timing).ceil
       end
 
+      def generate_data
+        return if @data_file.nil?
+
+        all_data = @full_report.chart_data
+
+        File.open @data_file, 'w' do |f|
+          f.write JSON.pretty_generate(all_data)
+        end
+      end
+
       def generate_chart
         return if @chart.nil?
Add ability to save data in JSON format