diff --git a/lib/modules/manager/sbt/extract.spec.ts b/lib/modules/manager/sbt/extract.spec.ts
index 98f919b21f346204aeb6948c84f9327c124acfb1..624847a6093731be7d8b8e1abfe431934bc8cda0 100644
--- a/lib/modules/manager/sbt/extract.spec.ts
+++ b/lib/modules/manager/sbt/extract.spec.ts
@@ -243,6 +243,26 @@ describe('modules/manager/sbt/extract', () => {
       });
     });
 
+    it('extracts deps correctly when dealing with scala 3', () => {
+      const content = `
+        scalaVersion := "3.3.4"
+        libraryDependencies += "org.example" %% "bar" % "0.0.5"
+      `;
+
+      expect(extractPackageFile(content)).toMatchObject({
+        deps: [
+          {
+            packageName: 'org.scala-lang:scala3-library_3',
+            currentValue: '3.3.4',
+          },
+          {
+            packageName: 'org.example:bar_3',
+            currentValue: '0.0.5',
+          },
+        ],
+      });
+    });
+
     it('extracts deps when scala version is defined in a variable with ThisBuild scope', () => {
       const content = `
         val ScalaVersion = "2.12.10"
diff --git a/lib/modules/manager/sbt/extract.ts b/lib/modules/manager/sbt/extract.ts
index 42b2293af4da6e414dc0fcf216238fa87bd13792..812fde85cec6fca791de730f5480e38136fdbe6c 100644
--- a/lib/modules/manager/sbt/extract.ts
+++ b/lib/modules/manager/sbt/extract.ts
@@ -201,12 +201,16 @@ function depHandler(ctx: Ctx): Ctx {
   delete ctx.variableName;
 
   const depName = `${groupId!}:${artifactId!}`;
+  const isScala3 = scalaVersion?.[0] === '3';
+  const scalaVersionForPackageName = isScala3 ? '3' : scalaVersion;
 
   const dep: PackageDependency = {
     datasource: SbtPackageDatasource.id,
     depName,
     packageName:
-      scalaVersion && useScalaVersion ? `${depName}_${scalaVersion}` : depName,
+      scalaVersionForPackageName && useScalaVersion
+        ? `${depName}_${scalaVersionForPackageName}`
+        : depName,
     currentValue,
   };