diff --git a/ArmnnPreparedModel.hpp b/ArmnnPreparedModel.hpp
index 0d19c07..505538a 100644
--- a/ArmnnPreparedModel.hpp
+++ b/ArmnnPreparedModel.hpp
@@ -42,7 +42,7 @@
                        const bool gpuProfilingEnabled,
                        const bool asyncModelExecutionEnabled = false,
                        const unsigned int numberOfThreads = 1,
-                       const bool importEnabled = false,
+                       const bool importEnabled = true,
                        const bool exportEnabled = true);
 
     virtual ~ArmnnPreparedModel();
diff --git a/ArmnnPreparedModel_1_2.hpp b/ArmnnPreparedModel_1_2.hpp
index 6afcbbe..8f35d7b 100644
--- a/ArmnnPreparedModel_1_2.hpp
+++ b/ArmnnPreparedModel_1_2.hpp
@@ -48,7 +48,7 @@
                            const bool gpuProfilingEnabled,
                            const bool asyncModelExecutionEnabled = false,
                            const unsigned int numberOfThreads = 1,
-                           const bool importEnabled = false,
+                           const bool importEnabled = true,
                            const bool exportEnabled = true);
 
     ArmnnPreparedModel_1_2(armnn::NetworkId networkId,
@@ -57,7 +57,7 @@
                            const bool gpuProfilingEnabled,
                            const bool asyncModelExecutionEnabled = false,
                            const unsigned int numberOfThreads = 1,
-                           const bool importEnabled = false,
+                           const bool importEnabled = true,
                            const bool exportEnabled = true,
                            const bool preparedFromCache = false);
 
diff --git a/ArmnnPreparedModel_1_3.hpp b/ArmnnPreparedModel_1_3.hpp
index cb3c768..42d7dab 100644
--- a/ArmnnPreparedModel_1_3.hpp
+++ b/ArmnnPreparedModel_1_3.hpp
@@ -56,7 +56,7 @@
                            V1_3::Priority priority = V1_3::Priority::MEDIUM,
                            const bool asyncModelExecutionEnabled = false,
                            const unsigned int numberOfThreads = 1,
-                           const bool importEnabled = false,
+                           const bool importEnabled = true,
                            const bool exportEnabled = true);
 
     ArmnnPreparedModel_1_3(armnn::NetworkId networkId,
@@ -66,7 +66,7 @@
                            V1_3::Priority priority = V1_3::Priority::MEDIUM,
                            const bool asyncModelExecutionEnabled = false,
                            const unsigned int numberOfThreads = 1,
-                           const bool importEnabled = false,
+                           const bool importEnabled = true,
                            const bool exportEnabled = true,
                            const bool preparedFromCache = false);
 
diff --git a/DriverOptions.cpp b/DriverOptions.cpp
index 0018d97..9cfbabf 100644
--- a/DriverOptions.cpp
+++ b/DriverOptions.cpp
@@ -40,7 +40,7 @@
     , m_NumberOfThreads(0)
     , m_EnableAsyncModelExecution(false)
     , m_ArmnnNumberOfThreads(1)
-    , m_EnableImport(false)
+    , m_EnableImport(true)
     , m_EnableExport(true)
 {
 }
@@ -58,7 +58,7 @@
     , m_NumberOfThreads(0)
     , m_EnableAsyncModelExecution(false)
     , m_ArmnnNumberOfThreads(1)
-    , m_EnableImport(false)
+    , m_EnableImport(true)
     , m_EnableExport(true)
 {
 }
@@ -75,7 +75,7 @@
     , m_NumberOfThreads(0)
     , m_EnableAsyncModelExecution(false)
     , m_ArmnnNumberOfThreads(1)
-    , m_EnableImport(false)
+    , m_EnableImport(true)
     , m_EnableExport(true)
 {
     std::string unsupportedOperationsAsString;
@@ -177,7 +177,7 @@
          cxxopts::value<unsigned int>(m_ArmnnNumberOfThreads)->default_value("1"))
 
         ("I,enableImport", "Enable Importing of input buffers",
-         cxxopts::value<bool>(m_EnableImport)->default_value("false"))
+         cxxopts::value<bool>(m_EnableImport)->default_value("true"))
 
         ("E,enableExport", "Enable Exporting of output buffers",
          cxxopts::value<bool>(m_EnableExport)->default_value("true"));
