diff --git a/lib/workers/repository/update/pr/changelog/release-notes.spec.ts b/lib/workers/repository/update/pr/changelog/release-notes.spec.ts
index b366ba2a3a6769496c39fa3b30c9d22e96f9708f..bb55d243a1b84ed6d022e2dc00fca5a92b287341 100644
--- a/lib/workers/repository/update/pr/changelog/release-notes.spec.ts
+++ b/lib/workers/repository/update/pr/changelog/release-notes.spec.ts
@@ -600,7 +600,7 @@ describe('workers/repository/update/pr/changelog/release-notes', () => {
       });
     });
 
-    it('gets release notes with body "other-"', async () => {
+    it('gets release notes with body "other-" (packageName)', async () => {
       githubReleasesMock.mockResolvedValueOnce([
         {
           version: 'other-1.0.0',
@@ -644,6 +644,51 @@ describe('workers/repository/update/pr/changelog/release-notes', () => {
       });
     });
 
+    it('gets release notes with body "other-" (depName)', async () => {
+      githubReleasesMock.mockResolvedValueOnce([
+        {
+          version: 'other-1.0.0',
+          releaseTimestamp: '2020-01-01',
+          id: 1,
+          url: 'https://github.com/some/other-repository/releases/other-1.0.0',
+          name: 'some/dep',
+          description: 'some body',
+        },
+        {
+          version: 'other-1.0.1',
+          releaseTimestamp: '2020-01-01',
+          id: 2,
+          url: 'https://github.com/some/other-repository/releases/other-1.0.1',
+          name: 'some/dep',
+          description:
+            'some body #123, [#124](https://github.com/some/yet-other-repository/issues/124)',
+        },
+      ]);
+
+      const res = await getReleaseNotes(
+        {
+          ...githubProject,
+          repository: 'some/other-repository',
+          packageName: 'some.registry/some/other',
+          depName: 'other',
+        },
+        partial<ChangeLogRelease>({
+          version: '1.0.1',
+          gitRef: '1.0.1',
+        }),
+        partial<BranchUpgradeConfig>(),
+      );
+      expect(res).toEqual({
+        body: 'some body [#123](https://github.com/some/other-repository/issues/123), [#124](https://github.com/some/yet-other-repository/issues/124)\n',
+        id: 2,
+        name: 'some/dep',
+        notesSourceUrl:
+          'https://api.github.com/repos/some/other-repository/releases',
+        tag: 'other-1.0.1',
+        url: 'https://github.com/some/other-repository/releases/other-1.0.1',
+      });
+    });
+
     it('gets release notes with body "other_v"', async () => {
       githubReleasesMock.mockResolvedValueOnce([
         {
diff --git a/lib/workers/repository/update/pr/changelog/release-notes.ts b/lib/workers/repository/update/pr/changelog/release-notes.ts
index bdf4a34bd637ffe7fce5c043d0da6b245885ca14..0fc00710fa34828b1cc5b7359d2cff00768a02df 100644
--- a/lib/workers/repository/update/pr/changelog/release-notes.ts
+++ b/lib/workers/repository/update/pr/changelog/release-notes.ts
@@ -132,15 +132,22 @@ export async function getReleaseNotes(
   release: ChangeLogRelease,
   config: BranchUpgradeConfig,
 ): Promise<ChangeLogNotes | null> {
-  const { packageName, repository } = project;
+  const { packageName, depName, repository } = project;
   const { version, gitRef } = release;
   // TODO: types (#22198)
-  logger.trace(`getReleaseNotes(${repository}, ${version}, ${packageName!})`);
+  logger.trace(
+    `getReleaseNotes(${repository}, ${version}, ${packageName!}, ${depName!})`,
+  );
   const releases = await getCachedReleaseList(project, release);
   logger.trace({ releases }, 'Release list from getReleaseList');
   let releaseNotes: ChangeLogNotes | null = null;
 
-  let matchedRelease = getExactReleaseMatch(packageName!, version, releases);
+  let matchedRelease = getExactReleaseMatch(
+    packageName!,
+    depName!,
+    version,
+    releases,
+  );
   if (is.undefined(matchedRelease)) {
     // no exact match of a release then check other cases
     matchedRelease = releases.find(
@@ -166,10 +173,13 @@ export async function getReleaseNotes(
 
 function getExactReleaseMatch(
   packageName: string,
+  depName: string,
   version: string,
   releases: ChangeLogNotes[],
 ): ChangeLogNotes | undefined {
-  const exactReleaseReg = regEx(`${packageName}[@_-]v?${version}`);
+  const exactReleaseReg = regEx(
+    `(?:^|/)(?:${packageName}|${depName})[@_-]v?${version}`,
+  );
   const candidateReleases = releases.filter((r) => r.tag?.endsWith(version));
   const matchedRelease = candidateReleases.find((r) =>
     exactReleaseReg.test(r.tag!),
diff --git a/lib/workers/repository/update/pr/changelog/source.ts b/lib/workers/repository/update/pr/changelog/source.ts
index 71a9f65caf8b4c4b08540efcc7fcf31753b1789c..0101a00e056edce0fa70d7748c1577786e06b9ea 100644
--- a/lib/workers/repository/update/pr/changelog/source.ts
+++ b/lib/workers/repository/update/pr/changelog/source.ts
@@ -74,6 +74,7 @@ export abstract class ChangeLogSource {
     const newVersion = config.newVersion!;
     const sourceUrl = config.sourceUrl!;
     const packageName = config.packageName!;
+    const depName = config.depName!;
     const sourceDirectory = config.sourceDirectory;
     const version = allVersioning.get(versioning);
 
@@ -111,7 +112,9 @@ export abstract class ChangeLogSource {
       .sort((a, b) => version.sortVersions(a.version, b.version));
 
     if (validReleases.length < 2) {
-      logger.debug(`Not enough valid releases for dep ${packageName}`);
+      logger.debug(
+        `Not enough valid releases for dep ${depName} (${packageName})`,
+      );
       return null;
     }
 
@@ -143,8 +146,8 @@ export abstract class ChangeLogSource {
           compare: {},
         };
         const tags = await getTags();
-        const prevHead = this.getRef(version, packageName, prev, tags);
-        const nextHead = this.getRef(version, packageName, next, tags);
+        const prevHead = this.getRef(version, packageName, depName, prev, tags);
+        const nextHead = this.getRef(version, packageName, depName, next, tags);
         if (is.nonEmptyString(prevHead) && is.nonEmptyString(nextHead)) {
           release.compare.url = this.getCompareURL(
             baseUrl,
@@ -185,11 +188,13 @@ export abstract class ChangeLogSource {
   private findTagOfRelease(
     version: allVersioning.VersioningApi,
     packageName: string,
+    depName: string,
     depNewVersion: string,
     tags: string[],
   ): string | undefined {
-    const regex = regEx(`(?:${packageName}|release)[@-]`, undefined, false);
-    const exactReleaseRegex = regEx(`${packageName}[@\\-_]v?${depNewVersion}`);
+    const releaseRegexPrefix = `^(?:${packageName}|${depName}|release)[@_-]v?`;
+    const regex = regEx(releaseRegexPrefix, undefined, false);
+    const exactReleaseRegex = regEx(`${releaseRegexPrefix}${depNewVersion}`);
     const exactTagsList = tags.filter((tag) => {
       return exactReleaseRegex.test(tag);
     });
@@ -202,12 +207,14 @@ export abstract class ChangeLogSource {
   private getRef(
     version: allVersioning.VersioningApi,
     packageName: string,
+    depName: string,
     release: Release,
     tags: string[],
   ): string | null {
     const tagName = this.findTagOfRelease(
       version,
       packageName,
+      depName,
       release.version,
       tags,
     );
diff --git a/lib/workers/repository/update/pr/changelog/types.ts b/lib/workers/repository/update/pr/changelog/types.ts
index 8a4a19e9a8feadc1fc8481a8c46cd9d7aca9e621..969d196fd53826f27bf70b3ad704f92ee7b664a4 100644
--- a/lib/workers/repository/update/pr/changelog/types.ts
+++ b/lib/workers/repository/update/pr/changelog/types.ts
@@ -27,6 +27,7 @@ export type ChangeLogPlatform = 'bitbucket' | 'gitea' | 'github' | 'gitlab';
 
 export interface ChangeLogProject {
   packageName?: string;
+  depName?: string;
   type: ChangeLogPlatform;
   apiBaseUrl: string;
   baseUrl: string;