diff --git a/lib/modules/manager/asdf/extract.spec.ts b/lib/modules/manager/asdf/extract.spec.ts
index 54e205adc756064bf290ffe344fed8e6c33757a1..ec528331a5a37e28e9d1a5f6346056f677a15b06 100644
--- a/lib/modules/manager/asdf/extract.spec.ts
+++ b/lib/modules/manager/asdf/extract.spec.ts
@@ -88,6 +88,7 @@ mimirtool 2.11.0
 nim 1.6.8
 nodejs 18.12.0
 ocaml 4.14.0
+opentofu 1.6.0
 perl 5.37.5
 php 8.1.12
 pnpm 7.26.2
@@ -412,6 +413,13 @@ dummy 1.2.3
             packageName: 'ocaml/ocaml',
             depName: 'ocaml',
           },
+          {
+            currentValue: '1.6.0',
+            datasource: 'github-releases',
+            packageName: 'opentofu/opentofu',
+            depName: 'opentofu',
+            extractVersion: '^v(?<version>\\S+)',
+          },
           {
             currentValue: '5.37.5',
             datasource: 'github-tags',
diff --git a/lib/modules/manager/asdf/upgradeable-tooling.ts b/lib/modules/manager/asdf/upgradeable-tooling.ts
index c040f921b0a7755dfed77e58446feeb0218af23b..0a1a5e4b161d2254e205890fd2e87369999161d4 100644
--- a/lib/modules/manager/asdf/upgradeable-tooling.ts
+++ b/lib/modules/manager/asdf/upgradeable-tooling.ts
@@ -421,6 +421,14 @@ export const upgradeableTooling: Record<string, ToolingDefinition> = {
       packageName: 'ocaml/ocaml',
     },
   },
+  opentofu: {
+    asdfPluginUrl: 'https://github.com/virtualroot/asdf-opentofu',
+    config: {
+      datasource: GithubReleasesDatasource.id,
+      packageName: 'opentofu/opentofu',
+      extractVersion: '^v(?<version>\\S+)',
+    },
+  },
   perl: {
     asdfPluginUrl: 'https://github.com/ouest/asdf-perl',
     config: {