diff --git a/include/armnn/IProfiler.hpp b/include/armnn/IProfiler.hpp
index 5fbb670..1b450d0 100644
--- a/include/armnn/IProfiler.hpp
+++ b/include/armnn/IProfiler.hpp
@@ -40,8 +40,8 @@
     void Print(std::ostream& outStream) const;
 
     /// Print out details of each layer within the network that possesses a descriptor.
-    /// Also outputs tensor info.
-    void EnableNetworkDetailsToStdOut();
+    /// Also outputs tensor info. This will be part of the profiling json output
+    void EnableNetworkDetailsToStdOut(ProfilingDetailsMethod detailsMethod);
 
     ~IProfiler();
     IProfiler();
diff --git a/include/armnn/IRuntime.hpp b/include/armnn/IRuntime.hpp
index 97a9c28..345cdeb 100644
--- a/include/armnn/IRuntime.hpp
+++ b/include/armnn/IRuntime.hpp
@@ -40,7 +40,7 @@
           m_ExportEnabled(exportEnabled),
           m_AsyncEnabled(asyncEnabled),
           m_ProfilingEnabled(profilingEnabled),
-          m_OutputNetworkDetails(false),
+          m_OutputNetworkDetailsMethod(ProfilingDetailsMethod::Undefined),
           m_InputSource(m_ImportEnabled ? MemorySource::Malloc : MemorySource::Undefined),
           m_OutputSource(m_ExportEnabled ? MemorySource::Malloc : MemorySource::Undefined)
     {}
@@ -55,7 +55,7 @@
           m_ExportEnabled(outputSource != MemorySource::Undefined),
           m_AsyncEnabled(asyncEnabled),
           m_ProfilingEnabled(profilingEnabled),
-          m_OutputNetworkDetails(false),
+          m_OutputNetworkDetailsMethod(ProfilingDetailsMethod::Undefined),
           m_InputSource(inputSource),
           m_OutputSource(outputSource)
     {
@@ -66,12 +66,12 @@
                        MemorySource inputSource,
                        MemorySource outputSource,
                        bool profilingEnabled = false,
-                       bool outputDetails = false)
+                       ProfilingDetailsMethod detailsMethod = ProfilingDetailsMethod::Undefined)
         : m_ImportEnabled(inputSource != MemorySource::Undefined),
           m_ExportEnabled(outputSource != MemorySource::Undefined),
           m_AsyncEnabled(asyncEnabled),
           m_ProfilingEnabled(profilingEnabled),
-          m_OutputNetworkDetails(outputDetails),
+          m_OutputNetworkDetailsMethod(detailsMethod),
           m_InputSource(inputSource),
           m_OutputSource(outputSource)
     {}
@@ -85,7 +85,7 @@
 
     const bool m_ProfilingEnabled;
 
-    const bool m_OutputNetworkDetails;
+    const ProfilingDetailsMethod m_OutputNetworkDetailsMethod;
 
     const MemorySource m_InputSource;
     const MemorySource m_OutputSource;
diff --git a/include/armnn/Types.hpp b/include/armnn/Types.hpp
index 056aa83..5e00026 100644
--- a/include/armnn/Types.hpp
+++ b/include/armnn/Types.hpp
@@ -56,6 +56,15 @@
     NHWC = 2
 };
 
+/// Define the behaviour of the internal profiler when outputting network details
+enum class ProfilingDetailsMethod
+{
+    Undefined = 0,
+    DetailsWithEvents = 1,
+    DetailsOnly = 2
+};
+
+
 enum class QosExecPriority
 {
     Low    = 0,
