diff --git a/lib/modules/manager/gradle/extract.spec.ts b/lib/modules/manager/gradle/extract.spec.ts
index 88ad473a74ccd3a21962be4658ccbc0f1b9e22aa..d31b8633f2424c62d6dbf4118788f393a86e9eb3 100644
--- a/lib/modules/manager/gradle/extract.spec.ts
+++ b/lib/modules/manager/gradle/extract.spec.ts
@@ -199,6 +199,10 @@ describe('modules/manager/gradle/extract', () => {
           maven {
               url = "\${repositoryBaseURL}/repository-build"
           }
+          maven {
+              name = "baz"
+              url = "\${repositoryBaseURL}/\${name}"
+          }
       }
 
       dependencies {
@@ -230,13 +234,14 @@ describe('modules/manager/gradle/extract', () => {
             depName: 'com.google.protobuf:protobuf-java',
             currentValue: '2.17.0',
             managerData: {
-              fileReplacePosition: 227,
+              fileReplacePosition: 335,
               packageFile: 'build.gradle',
             },
-            fileReplacePosition: 227,
+            fileReplacePosition: 335,
             registryUrls: [
               'https://repo.maven.apache.org/maven2',
               'https://dummy.org/whatever/repository-build',
+              'https://dummy.org/whatever/baz',
             ],
           },
         ],
diff --git a/lib/modules/manager/gradle/parser.spec.ts b/lib/modules/manager/gradle/parser.spec.ts
index 779d9bf10a0c43da8c243be2affa24fa597546e1..358384df5df273fa28c1a42c85815674fc49f6a6 100644
--- a/lib/modules/manager/gradle/parser.spec.ts
+++ b/lib/modules/manager/gradle/parser.spec.ts
@@ -107,26 +107,27 @@ describe('modules/manager/gradle/parser', () => {
 
   describe('registryUrls', () => {
     test.each`
-      def                         | input                                          | url
-      ${''}                       | ${'url ""'}                                    | ${null}
-      ${''}                       | ${'url "#!@"'}                                 | ${null}
-      ${''}                       | ${'url "https://example.com"'}                 | ${'https://example.com'}
-      ${'base="https://foo.bar"'} | ${'url "${base}/baz"'}                         | ${'https://foo.bar/baz'}
-      ${''}                       | ${'url("https://example.com")'}                | ${'https://example.com'}
-      ${'base="https://foo.bar"'} | ${'url("${base}/baz")'}                        | ${'https://foo.bar/baz'}
-      ${''}                       | ${'mavenCentral()'}                            | ${MAVEN_REPO}
-      ${''}                       | ${'jcenter()'}                                 | ${JCENTER_REPO}
-      ${''}                       | ${'google()'}                                  | ${GOOGLE_REPO}
-      ${''}                       | ${'google { content { includeGroup "foo" } }'} | ${GOOGLE_REPO}
-      ${''}                       | ${'gradlePluginPortal()'}                      | ${GRADLE_PLUGIN_PORTAL_REPO}
-      ${''}                       | ${'maven("https://foo.bar/baz/qux")'}          | ${'https://foo.bar/baz/qux'}
-      ${'base="https://foo.bar"'} | ${'maven("${base}/baz/qux")'}                  | ${'https://foo.bar/baz/qux'}
-      ${''}                       | ${'maven { url = uri("https://foo.bar/baz")'}  | ${'https://foo.bar/baz'}
-      ${'base="https://foo.bar"'} | ${'maven { url = uri("${base}/baz")'}          | ${'https://foo.bar/baz'}
-      ${''}                       | ${"maven { url 'https://foo.bar/baz'"}         | ${'https://foo.bar/baz'}
-      ${'base="https://foo.bar"'} | ${'maven { url "${base}/baz"'}                 | ${'https://foo.bar/baz'}
-      ${''}                       | ${"maven { url = 'https://foo.bar/baz'"}       | ${'https://foo.bar/baz'}
-      ${'base="https://foo.bar"'} | ${'maven { url = "${base}/baz"'}               | ${'https://foo.bar/baz'}
+      def                         | input                                              | url
+      ${''}                       | ${'url ""'}                                        | ${null}
+      ${''}                       | ${'url "#!@"'}                                     | ${null}
+      ${''}                       | ${'url "https://example.com"'}                     | ${'https://example.com'}
+      ${'base="https://foo.bar"'} | ${'url "${base}/baz"'}                             | ${'https://foo.bar/baz'}
+      ${''}                       | ${'url("https://example.com")'}                    | ${'https://example.com'}
+      ${'base="https://foo.bar"'} | ${'url("${base}/baz")'}                            | ${'https://foo.bar/baz'}
+      ${''}                       | ${'mavenCentral()'}                                | ${MAVEN_REPO}
+      ${''}                       | ${'jcenter()'}                                     | ${JCENTER_REPO}
+      ${''}                       | ${'google()'}                                      | ${GOOGLE_REPO}
+      ${''}                       | ${'google { content { includeGroup "foo" } }'}     | ${GOOGLE_REPO}
+      ${''}                       | ${'gradlePluginPortal()'}                          | ${GRADLE_PLUGIN_PORTAL_REPO}
+      ${''}                       | ${'maven("https://foo.bar/baz/qux")'}              | ${'https://foo.bar/baz/qux'}
+      ${'base="https://foo.bar"'} | ${'maven("${base}/baz/qux")'}                      | ${'https://foo.bar/baz/qux'}
+      ${''}                       | ${'maven { url = uri("https://foo.bar/baz")'}      | ${'https://foo.bar/baz'}
+      ${'base="https://foo.bar"'} | ${'maven { url = uri("${base}/baz")'}              | ${'https://foo.bar/baz'}
+      ${''}                       | ${"maven { url 'https://foo.bar/baz'"}             | ${'https://foo.bar/baz'}
+      ${'base="https://foo.bar"'} | ${'maven { url "${base}/baz"'}                     | ${'https://foo.bar/baz'}
+      ${''}                       | ${"maven { url = 'https://foo.bar/baz'"}           | ${'https://foo.bar/baz'}
+      ${'base="https://foo.bar"'} | ${'maven { url = "${base}/baz"'}                   | ${'https://foo.bar/baz'}
+      ${'base="https://foo.bar"'} | ${'maven { name = "baz"\nurl = "${base}/${name}"'} | ${'https://foo.bar/baz'}
     `('$def | $input', ({ def, input, url }) => {
       const expected = [url].filter(Boolean);
       const { urls } = parseGradle([def, input].join('\n'));
diff --git a/lib/modules/manager/gradle/parser.ts b/lib/modules/manager/gradle/parser.ts
index cb33ef3c111c9d0976ce9fdce86fee1391e29580..3f5d30940b7ccdd4757bd356b42c89253fe8f305 100644
--- a/lib/modules/manager/gradle/parser.ts
+++ b/lib/modules/manager/gradle/parser.ts
@@ -278,10 +278,21 @@ function processCustomRegistryUrl({
   tokenMap,
   variables,
 }: SyntaxHandlerInput): SyntaxHandlerOutput {
+  let localVariables = variables;
+  if (tokenMap.keyToken?.value === 'name') {
+    localVariables = {
+      ...variables,
+      name: {
+        key: 'name',
+        value: tokenMap.valToken.value,
+      },
+    };
+  }
+
   let registryUrl: string | null = tokenMap.registryUrl?.value;
   if (tokenMap.registryUrl?.type === TokenType.StringInterpolation) {
     const token = tokenMap.registryUrl as StringInterpolation;
-    registryUrl = interpolateString(token.children, variables);
+    registryUrl = interpolateString(token.children, localVariables);
   }
 
   try {
@@ -556,6 +567,37 @@ const matcherConfigs: SyntaxMatchConfig[] = [
     ],
     handler: processCustomRegistryUrl,
   },
+  {
+    // maven { name = "baz"; url = "https://maven.springframework.org/${name}" }
+    matchers: [
+      {
+        matchType: TokenType.Word,
+        matchValue: 'maven',
+      },
+      { matchType: TokenType.LeftBrace },
+      {
+        matchType: TokenType.Word,
+        matchValue: 'name',
+        tokenMapKey: 'keyToken',
+      },
+      { matchType: TokenType.Assignment },
+      {
+        matchType: [TokenType.String, TokenType.StringInterpolation],
+        tokenMapKey: 'valToken',
+      },
+      {
+        matchType: TokenType.Word,
+        matchValue: 'url',
+      },
+      { matchType: TokenType.Assignment },
+      {
+        matchType: [TokenType.String, TokenType.StringInterpolation],
+        tokenMapKey: 'registryUrl',
+      },
+      endOfInstruction,
+    ],
+    handler: processCustomRegistryUrl,
+  },
   {
     // maven { url = "https://maven.springframework.org/release"
     matchers: [