diff --git a/BuildGuideAndroidNDK.md b/BuildGuideAndroidNDK.md
index eea70b3..1c1864d 100644
--- a/BuildGuideAndroidNDK.md
+++ b/BuildGuideAndroidNDK.md
@@ -170,7 +170,7 @@
 cd $WORKING_DIR
 git clone https://github.com/tensorflow/tensorflow.git
 cd tensorflow
-git fetch && git checkout v2.14.0
+git fetch && git checkout v2.15.0
 ```
 Or use the script that Arm NN provides:
 ```bash
diff --git a/delegate/DelegateQuickStartGuide.md b/delegate/DelegateQuickStartGuide.md
index d6fc487..9e4d3e9 100644
--- a/delegate/DelegateQuickStartGuide.md
+++ b/delegate/DelegateQuickStartGuide.md
@@ -36,11 +36,11 @@
 
 # Prepare the environment
 Pre-requisites:
- * Dynamically build Arm NN Delegate library or download the Arm NN binaries (built with a particular SHA of Tensorflow v2.14.0, which is 4dacf3f368eb7965e9b5c3bbdd5193986081c3b2)
+ * Dynamically build Arm NN Delegate library or download the Arm NN binaries (built with a particular SHA of Tensorflow v2.15.0, which is 6887368d6d46223f460358323c4b76d61d1558a8)
  * python3 (Depends on TfLite version)
  * virtualenv
  * numpy (Depends on TfLite version)
- * tflite_runtime (v2.14.0 currently available)
+ * tflite_runtime (v2.15.0 currently available)
 
 If you haven't built the delegate yet then take a look at the [build guide](./BuildGuideNative.md). Otherwise, you can download the binaries [here](https://github.com/ARM-software/armnn/releases/). Set the following environment variable to the location of the .so binary files:
 
@@ -50,7 +50,7 @@
 
 We recommend creating a virtual environment for this tutorial. For the following code to work python3 is needed. Please
 also check the documentation of the TfLite version you want to use. There might be additional prerequisites for the python
-version. We will use Tensorflow Lite 2.14.0 for this guide.
+version. We will use Tensorflow Lite 2.15.0 for this guide.
 ```bash
 # Install python3 (We ended up with python3.5.3) and virtualenv
 sudo apt-get install python3-pip
@@ -74,10 +74,10 @@
 The TfLite [website](https://www.tensorflow.org/lite/guide/python) shows you two methods to download the `tflite_runtime`  package. 
 In our experience, the use of the pip command works for most systems including debian. However, if you're using an older version of Tensorflow, 
 you may need to build the pip package from source. You can find more information [here](https://github.com/tensorflow/tensorflow/blob/master/tensorflow/lite/tools/pip_package/README.md).
-But in our case, with Tensorflow Lite 2.14.0, we can install through:
+But in our case, with Tensorflow Lite 2.15.0, we can install through:
 
 ```
-pip3 install --extra-index-url https://google-coral.github.io/py-repo/ tflite_runtime==2.14.0
+pip3 install --extra-index-url https://google-coral.github.io/py-repo/ tflite_runtime==2.15.0
 ```
 
 Your virtual environment is now all setup. Copy the final python script into a python file e.g. 
diff --git a/samples/ObjectDetection/Readme.md b/samples/ObjectDetection/Readme.md
index 0cc41eb..29d627c 100644
--- a/samples/ObjectDetection/Readme.md
+++ b/samples/ObjectDetection/Readme.md
@@ -20,7 +20,7 @@
 This example utilizes OpenCV functions to capture and output video data.
 1. Public Arm NN C++ API is provided by Arm NN library.
 2. For Delegate file mode following dependencies exist:
-2.1 Tensorflow version 2.14
+2.1 Tensorflow version 2.15
 2.2 Flatbuffers version 23.5.26
 2.3 Arm NN delegate library
 
@@ -97,7 +97,7 @@
 
 ### Tensorflow Lite (Needed only in delegate file mode)
 
-This application uses [Tensorflow Lite)](https://www.tensorflow.org/) version 2.14 for demonstrating use of 'armnnDelegate'.
+This application uses [Tensorflow Lite)](https://www.tensorflow.org/) version 2.15 for demonstrating use of 'armnnDelegate'.
 armnnDelegate is a library for accelerating certain TensorFlow Lite operators on Arm hardware by providing
 the TensorFlow Lite interpreter with an alternative implementation of the operators via its delegation mechanism.
 You may clone and build Tensorflow lite and provide the path to its root and output library directories through the cmake
@@ -106,13 +106,13 @@
 
 The application links with the Tensorflow lite library libtensorflow-lite.a
 
-#### Download and build Tensorflow Lite version. We currently use Tf 2.14 for the Cmake build.
+#### Download and build Tensorflow Lite version. We currently use Tf 2.15 for the Cmake build.
 Example for Tensorflow Lite native compilation
 ```commandline
 sudo apt install build-essential
 git clone https://github.com/tensorflow/tensorflow.git
 cd tensorflow/tensorflow
-git checkout v2.14.0
+git checkout v2.15.0
 mkdir build && cd build
 cmake ../lite -DTFLITE_ENABLE_XNNPACK=OFF
 make
