diff --git a/lib/config/types.ts b/lib/config/types.ts
index ef944bece28cb8e3bb76ac42cc27a64dd3b9cf6d..a5dfa89ff5aaaf24920c2d3c68649ec1543547dc 100644
--- a/lib/config/types.ts
+++ b/lib/config/types.ts
@@ -213,6 +213,7 @@ export interface RenovateConfig
   registryUrls?: string[];
 
   repoIsOnboarded?: boolean;
+  repoIsActivated?: boolean;
 
   updateType?: UpdateType;
 
diff --git a/lib/workers/repository/finalise/__fixtures__/pr-list.json b/lib/workers/repository/finalise/__fixtures__/pr-list.json
new file mode 100644
index 0000000000000000000000000000000000000000..3dc5601d3dca4c62cc28aa610f34128129e57005
--- /dev/null
+++ b/lib/workers/repository/finalise/__fixtures__/pr-list.json
@@ -0,0 +1,7 @@
+{
+  "1": {"title": "Configure Renovate", "state": "open"},
+  "2": {"title": "Update dependency debian to v12 - autoclosed", "state": "closed"},
+  "3": {"title": "Update dependency debian to v11", "state": "open"},
+  "4": {"title": "Update dependency ubuntu to v22", "state": "merged"},
+  "5": {"title": "Update dependency ubuntu to v20", "state": "update"}
+}
diff --git a/lib/workers/repository/finalise/index.ts b/lib/workers/repository/finalise/index.ts
index bb920e96273cc759c59073aef27ec03b746e6a26..419a3a5cda917da1e61858d6fc6a70dee2ecfcce 100644
--- a/lib/workers/repository/finalise/index.ts
+++ b/lib/workers/repository/finalise/index.ts
@@ -1,8 +1,10 @@
 import type { RenovateConfig } from '../../../config/types';
+import { logger } from '../../../logger';
 import { platform } from '../../../modules/platform';
 import * as repositoryCache from '../../../util/cache/repository';
 import { clearRenovateRefs } from '../../../util/git';
 import { pruneStaleBranches } from './prune';
+import { runRenovateRepoStats } from './repository-statistics';
 
 // istanbul ignore next
 export async function finaliseRepo(
@@ -15,4 +17,17 @@ export async function finaliseRepo(
     `Action Required: Fix Renovate Configuration`
   );
   await clearRenovateRefs();
+  const prList = await platform.getPrList();
+  if (
+    prList?.some(
+      (pr) =>
+        pr.state === 'merged' &&
+        pr.title !== 'Configure Renovate' &&
+        pr.title !== config.onboardingPrTitle
+    )
+  ) {
+    logger.debug('Repo is activated');
+    config.repoIsActivated = true;
+  }
+  runRenovateRepoStats(config, prList);
 }
diff --git a/lib/workers/repository/finalise/repository-statistics.spec.ts b/lib/workers/repository/finalise/repository-statistics.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..46c12cf42ccce1fb8806c9368b52288008bcc442
--- /dev/null
+++ b/lib/workers/repository/finalise/repository-statistics.spec.ts
@@ -0,0 +1,46 @@
+import { Fixtures } from '../../../../test/fixtures';
+import {
+  RenovateConfig,
+  getConfig,
+  mockedFunction,
+} from '../../../../test/util';
+import { logger } from '../../../logger';
+import { platform } from '../../../modules/platform';
+import { runRenovateRepoStats } from './repository-statistics';
+
+jest.mock('../../../modules/platform/github/pr');
+jest.mock('../../../util/http/github');
+
+const prJson = Fixtures.get('./pr-list.json');
+const prObject = JSON.parse(prJson);
+const result = Object.keys(prObject).map((key) => {
+  return prObject[key];
+});
+
+describe('workers/repository/finalise/repository-statistics', () => {
+  let config: RenovateConfig;
+
+  describe('runRenovateRepoStats', () => {
+    beforeEach(() => {
+      jest.resetAllMocks();
+      config = getConfig();
+      mockedFunction(platform.getPrList).mockReturnValue(prObject);
+      config.repository = 'owner/repo';
+    });
+
+    it('Calls runRenovateRepoStats', () => {
+      runRenovateRepoStats(config, result);
+      expect(logger.debug).toHaveBeenCalledWith(
+        {
+          stats: {
+            total: 4,
+            open: 1,
+            closed: 1,
+            merged: 1,
+          },
+        },
+        `Renovate repository PR statistics`
+      );
+    });
+  });
+});
diff --git a/lib/workers/repository/finalise/repository-statistics.ts b/lib/workers/repository/finalise/repository-statistics.ts
new file mode 100644
index 0000000000000000000000000000000000000000..90277b5e52936909c22d73a6207da7b580d12c70
--- /dev/null
+++ b/lib/workers/repository/finalise/repository-statistics.ts
@@ -0,0 +1,35 @@
+import type { RenovateConfig } from '../../../config/types';
+import { logger } from '../../../logger';
+import type { Pr } from '../../../modules/platform';
+import { PrState } from '../../../types';
+
+export function runRenovateRepoStats(
+  config: RenovateConfig,
+  prList: Pr[]
+): void {
+  const prStats = { total: 0, open: 0, closed: 0, merged: 0 };
+
+  for (const pr of prList) {
+    if (
+      pr.title === 'Configure Renovate' ||
+      pr.title === config.onboardingPrTitle
+    ) {
+      continue;
+    }
+    prStats.total += 1;
+    switch (pr.state) {
+      case PrState.Merged:
+        prStats.merged += 1;
+        break;
+      case PrState.Closed:
+        prStats.closed += 1;
+        break;
+      case PrState.Open:
+        prStats.open += 1;
+        break;
+      default:
+        break;
+    }
+  }
+  logger.debug({ stats: prStats }, `Renovate repository PR statistics`);
+}
diff --git a/lib/workers/repository/result.ts b/lib/workers/repository/result.ts
index 29faa3b54576cc266f3cd748941b82ffc3933ef2..2e2318878fb6b867e952e23a1086326ba152862d 100644
--- a/lib/workers/repository/result.ts
+++ b/lib/workers/repository/result.ts
@@ -1,4 +1,5 @@
 import type { RenovateConfig } from '../../config/types';
+
 import {
   CONFIG_SECRETS_EXPOSED,
   CONFIG_VALIDATION,
@@ -19,7 +20,13 @@ import {
 } from '../../constants/error-messages';
 import { logger } from '../../logger';
 
-type ProcessStatus = 'disabled' | 'enabled' | 'onboarding' | 'unknown';
+export type ProcessStatus =
+  | 'disabled'
+  | 'onboarded'
+  | 'activated'
+  | 'onboarding'
+  | 'unknown';
+
 export interface ProcessResult {
   res: string;
   status: ProcessStatus;
@@ -55,8 +62,12 @@ export function processResult(
   if (disabledStatuses.includes(res)) {
     status = 'disabled';
     enabled = false;
+  } else if (config.repoIsActivated) {
+    status = 'activated';
+    enabled = true;
+    onboarded = true;
   } else if (enabledStatuses.includes(res) || config.repoIsOnboarded) {
-    status = 'enabled';
+    status = 'onboarded';
     enabled = true;
     onboarded = true;
   } else if (config.repoIsOnboarded === false) {
@@ -67,5 +78,8 @@ export function processResult(
     logger.debug({ res }, 'Unknown res');
     status = 'unknown';
   }
-  return { res, status, enabled, onboarded };
+  logger.debug(
+    `Repository result: ${res}, status: ${status}, enabled: ${enabled}, onboarded: ${onboarded}`
+  );
+  return { res, status, enabled: enabled, onboarded };
 }