diff --git a/lib/constants/category.ts b/lib/constants/category.ts
index 1404a515ffccc3b8286c15375fb514f3f7a73cd0..c908ccff4ec37c14b8843a5d7c17175047eac05f 100644
--- a/lib/constants/category.ts
+++ b/lib/constants/category.ts
@@ -17,6 +17,7 @@ const Categories = [
   'js',
   'kubernetes',
   'node',
+  'perl',
   'php',
   'python',
   'ruby',
diff --git a/lib/modules/manager/cpanfile/index.ts b/lib/modules/manager/cpanfile/index.ts
index 3d09e935f5b5c3498cae1db4b5b0226c6cd8ac7b..365e4862d6901944ec2027594cd3656fb651d848 100644
--- a/lib/modules/manager/cpanfile/index.ts
+++ b/lib/modules/manager/cpanfile/index.ts
@@ -1,3 +1,4 @@
+import type { Category } from '../../../constants';
 import { CpanDatasource } from '../../datasource/cpan';
 import { GithubTagsDatasource } from '../../datasource/github-tags';
 
@@ -11,6 +12,8 @@ export const defaultConfig = {
   fileMatch: ['(^|/)cpanfile$'],
 };
 
+export const categories: Category[] = ['perl'];
+
 export const supportedDatasources = [
   CpanDatasource.id,
   GithubTagsDatasource.id,
diff --git a/tools/docs/manager.ts b/tools/docs/manager.ts
index 9965ca1c3dbe536cd155a4bb94d3a12786e97d02..a7d2833578f1e901316a5c2eb62df8fe6107aa2a 100644
--- a/tools/docs/manager.ts
+++ b/tools/docs/manager.ts
@@ -42,6 +42,7 @@ export const CategoryNames: Record<Category, string> = {
   js: 'JavaScript',
   kubernetes: 'Kubernetes',
   node: 'Node.js',
+  perl: 'Perl',
   php: 'PHP',
   python: 'Python',
   ruby: 'Ruby',