diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+1.3.1.0
+=======
+
+* Added flag `json` to output bundles in JSON format instead of YAML.
+
 1.3.0.0
 =======
 
diff --git a/app/Main.hs b/app/Main.hs
--- a/app/Main.hs
+++ b/app/Main.hs
@@ -40,6 +40,8 @@
 , inputOverwritePath :: Maybe FilePath
   -- | If the flag is set, temporary dirs won't be nuked after execution
 , preserveTempDirs   :: Bool
+  -- | Store bundle in JSON format instead of YAML
+, outputBundleJson   :: Bool
   -- | CLI action
 , cliCommand         :: Command
 }
@@ -71,6 +73,10 @@
        long "preserve-temp"
     <> help "If the flag is set, temporary dirs won't be nuked after execution"
     )
+  <*> switch (
+       long "json"
+    <> help "Store bundle in JSON format instead of YAML"
+    )
   <*> commandParser
 
 -- | Parser of CLI commands
@@ -135,7 +141,7 @@
           case res of
             Left e -> fail $ "Failed to pack bundle: " <> show e
             Right t -> do
-              let bs = encode t
+              let bs = if outputBundleJson then BZ.toStrict $ A.encode t else encode t
               case pdfOutputPath of
                 Nothing -> liftIO $ BS.putStr bs
                 Just outputPath -> do
diff --git a/pdf-slave.cabal b/pdf-slave.cabal
--- a/pdf-slave.cabal
+++ b/pdf-slave.cabal
@@ -1,5 +1,5 @@
 name:                pdf-slave
-version:             1.3.0.0
+version:             1.3.1.0
 synopsis:            Tool to generate PDF from haskintex templates and YAML input
 description:         Please see README.md
 homepage:            https://github.com/NCrashed/pdf-slave#readme
