diff --git a/lib/workers/repository/process/lookup/index.ts b/lib/workers/repository/process/lookup/index.ts
index c46ab3c501498f57cfaadcfffb077d20e1fc3414..a0fa9481de4f67eeb1606a1bb02de40d4739f102 100644
--- a/lib/workers/repository/process/lookup/index.ts
+++ b/lib/workers/repository/process/lookup/index.ts
@@ -367,9 +367,6 @@ export async function lookupUpdates(
             updateType: 'digest',
             // TODO #22198
             newValue: currentValue!,
-            newDigest: dependency?.releases.find(
-              (r) => r.version === currentValue
-            )?.newDigest,
           });
         }
       } else if (pinDigests) {
@@ -396,8 +393,9 @@ export async function lookupUpdates(
       for (const update of res.updates) {
         if (pinDigests === true || currentDigest) {
           // TODO #22198
-          update.newDigest =
-            update.newDigest ?? (await getDigest(config, update.newValue))!;
+          update.newDigest ??=
+            dependency?.releases.find((r) => r.version === update.newValue)
+              ?.newDigest ?? (await getDigest(config, update.newValue))!;
 
           // If the digest could not be determined, report this as otherwise the
           // update will be omitted later on without notice.