diff --git a/Cargo.lock b/Cargo.lock
index 33815c70807..1f0af14b722 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -3095,9 +3095,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67"
 
 [[package]]
 name = "libc"
-version = "0.2.155"
+version = "0.2.171"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "97b3888a4aecf77e811145cadf6eef5901f4782c53886191b2f693f24761847c"
+checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6"
 
 [[package]]
 name = "libredox"
@@ -3264,13 +3264,13 @@ dependencies = [
 
 [[package]]
 name = "mio"
-version = "0.8.11"
+version = "1.0.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4a650543ca06a924e8b371db273b2756685faae30f8487da1b56505a8f78b0c"
+checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd"
 dependencies = [
  "libc",
  "wasi 0.11.0+wasi-snapshot-preview1",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
@@ -5294,28 +5294,27 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
 
 [[package]]
 name = "tokio"
-version = "1.38.0"
+version = "1.44.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba4f4a02a7a80d6f274636f0aa95c7e383b912d41fe721a31f29e29698585a4a"
+checksum = "e6b88822cbe49de4185e3a4cbf8321dd487cf5fe0c5c65695fef6346371e9c48"
 dependencies = [
  "backtrace",
  "bytes",
  "libc",
  "mio",
- "num_cpus",
  "parking_lot",
  "pin-project-lite",
  "signal-hook-registry",
  "socket2",
  "tokio-macros",
- "windows-sys 0.48.0",
+ "windows-sys 0.52.0",
 ]
 
 [[package]]
 name = "tokio-macros"
-version = "2.3.0"
+version = "2.5.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f5ae998a069d4b5aba8ee9dad856af7d520c3699e6159b185c2acd48155d39a"
+checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"
 dependencies = [
  "proc-macro2",
  "quote",
diff --git a/Cargo.toml b/Cargo.toml
index b938992bc30..18b28fa2e2b 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -85,7 +85,7 @@ strum = { version = "0.26", features = ["derive"] }
 syn = { version = "2.0.87", features = ["full"] }
 test-store = { path = "./store/test-store" }
 thiserror = "1.0.25"
-tokio = { version = "1.38.0", features = ["full"] }
+tokio = { version = "1.44.2", features = ["full"] }
 tonic = { version = "0.12.3", features = ["tls-roots", "gzip"] }
 tonic-build = { version = "0.12.3", features = ["prost"] }
 tower-http = { version = "0.5.2", features = ["cors"] }
diff --git a/graph/Cargo.toml b/graph/Cargo.toml
index dc4bd6e42e9..5823159bd6f 100644
--- a/graph/Cargo.toml
+++ b/graph/Cargo.toml
@@ -65,7 +65,7 @@ slog-envlogger = "2.1.0"
 slog-term = "2.7.0"
 petgraph = "0.6.5"
 tiny-keccak = "1.5.0"
-tokio = { version = "1.38.0", features = [
+tokio = { version = "1.44.2", features = [
     "time",
     "sync",
     "macros",
diff --git a/tests/Cargo.toml b/tests/Cargo.toml
index ad4a4a9c785..6f5e317fa8b 100644
--- a/tests/Cargo.toml
+++ b/tests/Cargo.toml
@@ -19,7 +19,7 @@ graph-runtime-wasm = { path = "../runtime/wasm" }
 serde = { workspace = true }
 serde_yaml = { workspace = true }
 slog = { version = "2.7.0", features = ["release_max_level_trace", "max_level_trace"] }
-tokio = { version = "1.38.0", features = ["rt", "macros", "process"] }
+tokio = { version = "1.44.2", features = ["rt", "macros", "process"] }
 # Once graph upgrades to web3 0.19, we don't need this anymore. The version
 # here needs to be kept in sync with the web3 version that the graph crate
 # uses until then