diff --git a/lib/workers/pr/index.spec.ts b/lib/workers/pr/index.spec.ts
index ef07b1d19eb291b8e74a2337fe92b97dbc95867c..84e267fbc5e2d1cf2f0526968ed93c7c9fdf9422 100644
--- a/lib/workers/pr/index.spec.ts
+++ b/lib/workers/pr/index.spec.ts
@@ -85,6 +85,18 @@ describe('workers/pr', () => {
       pr.isModified = false;
       platform.getBranchStatus.mockResolvedValueOnce(BranchStatus.green);
       await prWorker.checkAutoMerge(pr, config);
+      expect(platform.ensureCommentRemoval).toHaveBeenCalledTimes(0);
+      expect(platform.ensureComment).toHaveBeenCalledTimes(1);
+    });
+    it('should remove previous automerge comment when rebasing', async () => {
+      config.automerge = true;
+      config.automergeType = 'pr-comment';
+      config.automergeComment = '!merge';
+      config.rebaseRequested = true;
+      pr.isModified = false;
+      platform.getBranchStatus.mockResolvedValueOnce(BranchStatus.green);
+      await prWorker.checkAutoMerge(pr, config);
+      expect(platform.ensureCommentRemoval).toHaveBeenCalledTimes(1);
       expect(platform.ensureComment).toHaveBeenCalledTimes(1);
     });
     it('should not automerge if enabled and pr is mergeable but cannot rebase', async () => {
diff --git a/lib/workers/pr/index.ts b/lib/workers/pr/index.ts
index 495eb7b0a6c2f3fc903cf781d0132f3002e637a1..7316add335696842967d7f68ef674bb6d54ff41d 100644
--- a/lib/workers/pr/index.ts
+++ b/lib/workers/pr/index.ts
@@ -437,6 +437,7 @@ export async function checkAutoMerge(
     automergeType,
     automergeComment,
     requiredStatusChecks,
+    rebaseRequested,
   } = config;
   logger.debug(
     { automerge, automergeType, automergeComment },
@@ -481,6 +482,12 @@ export async function checkAutoMerge(
         );
         return false;
       }
+      if (rebaseRequested) {
+        await platform.ensureCommentRemoval({
+          number: pr.number,
+          content: automergeComment,
+        });
+      }
       return platform.ensureComment({
         number: pr.number,
         topic: null,