diff --git a/doc/manual/nix-instantiate.xml b/doc/manual/nix-instantiate.xml
index b388560a1..936f154dd 100644
--- a/doc/manual/nix-instantiate.xml
+++ b/doc/manual/nix-instantiate.xml
@@ -124,6 +124,15 @@ input.
+
+
+ When used with and
+ , print the resulting expression as an
+ JSON representation of the abstract syntax tree rather than as an
+ ATerm.
+
+
+
When used with ,
diff --git a/src/nix-instantiate/nix-instantiate.cc b/src/nix-instantiate/nix-instantiate.cc
index cdd74523c..7acc9d501 100644
--- a/src/nix-instantiate/nix-instantiate.cc
+++ b/src/nix-instantiate/nix-instantiate.cc
@@ -5,6 +5,7 @@
#include "get-drvs.hh"
#include "attr-path.hh"
#include "value-to-xml.hh"
+#include "value-to-json.hh"
#include "util.hh"
#include "store-api.hh"
#include "common-opts.hh"
@@ -13,6 +14,12 @@
#include