diff --git a/lib/jekyll-pandoc-multiple-formats/printer.rb b/lib/jekyll-pandoc-multiple-formats/printer.rb
index 9ee45a967356a3485ca7dd8286088410efb6d6e5..e5f2cef24b406d577829ff4c81df5c0acf0a548b 100644
--- a/lib/jekyll-pandoc-multiple-formats/printer.rb
+++ b/lib/jekyll-pandoc-multiple-formats/printer.rb
@@ -75,7 +75,16 @@ module JekyllPandocMultipleFormats
       @relative_path ||= Pathname.new(output_file).relative_path_from(Pathname.new(from)).to_s
     end
 
+    def rebuild?
+      !File.exist?(output_file) || File.ctime(original_file) > File.ctime(output_file)
+    end
+
     def write
+      unless rebuild?
+        Jekyll.logger.info "#{output_file} doesn't need to be rebuilt"
+        return true
+      end
+
       # Create the imposed file
       pdflatex = RTeX::Document.new(template)
       pdflatex.to_pdf do |pdf_file|