diff --git a/app/services/packages/create_event_service.rb b/app/services/packages/create_event_service.rb
index d89e079966d865603bb97115adbbdb449c101998..c46613a1a1c93224396ac023c4e8b74e57a77c92 100644
--- a/app/services/packages/create_event_service.rb
+++ b/app/services/packages/create_event_service.rb
@@ -3,6 +3,7 @@
 module Packages
   class CreateEventService < BaseService
     INTERNAL_EVENTS_NAMES = {
+      'delete_package' => 'delete_package_from_registry',
       'pull_package' => 'pull_package_from_registry'
     }.freeze
 
diff --git a/config/events/delete_package_from_registry.yml b/config/events/delete_package_from_registry.yml
new file mode 100644
index 0000000000000000000000000000000000000000..5c23e26e37132565903e1faf1fc91c653fb024b5
--- /dev/null
+++ b/config/events/delete_package_from_registry.yml
@@ -0,0 +1,23 @@
+---
+description: Packaged deleted from the registry
+internal_events: true
+action: delete_package_from_registry
+identifiers:
+  - project
+  - namespace
+  - user
+additional_properties:
+  label:
+    description: The name of the package type
+  property:
+    description: The auth type. Either 'guest', 'user' or 'deploy_token'
+product_group: package_registry
+milestone: '17.3'
+introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/153159
+distributions:
+  - ce
+  - ee
+tiers:
+  - free
+  - premium
+  - ultimate
diff --git a/config/metrics/counts_all/20210216182855_package_events_i_package_composer_delete_package.yml b/config/metrics/counts_all/20210216182855_package_events_i_package_composer_delete_package.yml
index 807bdbec7d5d22601529bdcb0ab2ec7551c551d0..094a84b9e296766e08b5e97307f90b94b6edcb53 100644
--- a/config/metrics/counts_all/20210216182855_package_events_i_package_composer_delete_package.yml
+++ b/config/metrics/counts_all/20210216182855_package_events_i_package_composer_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_composer_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: composer
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182901_package_events_i_package_conan_delete_package.yml b/config/metrics/counts_all/20210216182901_package_events_i_package_conan_delete_package.yml
index 294c6013925841ae2e7fbd63b0c178689dd69b8b..b7f4fcdd6f5f085b3e69d3020497b697769879aa 100644
--- a/config/metrics/counts_all/20210216182901_package_events_i_package_conan_delete_package.yml
+++ b/config/metrics/counts_all/20210216182901_package_events_i_package_conan_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_conan_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: conan
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182913_package_events_i_package_debian_delete_package.yml b/config/metrics/counts_all/20210216182913_package_events_i_package_debian_delete_package.yml
index 12e4adc8d7594943b2153d6d89c2f6918c2f2e94..e97fe5cf98ce890fc5ce9d0bfa5eba45a9f87e02 100644
--- a/config/metrics/counts_all/20210216182913_package_events_i_package_debian_delete_package.yml
+++ b/config/metrics/counts_all/20210216182913_package_events_i_package_debian_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_debian_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: debian
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182919_package_events_i_package_delete_package.yml b/config/metrics/counts_all/20210216182919_package_events_i_package_delete_package.yml
index e6d78d0df6c5da920c0ec46141e1a48d9eb59700..d05de137ec612de692e222da397313a09a0e9049 100644
--- a/config/metrics/counts_all/20210216182919_package_events_i_package_delete_package.yml
+++ b/config/metrics/counts_all/20210216182919_package_events_i_package_delete_package.yml
@@ -6,11 +6,9 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182921_package_events_i_package_delete_package_by_deploy_token.yml b/config/metrics/counts_all/20210216182921_package_events_i_package_delete_package_by_deploy_token.yml
index b6e6fe97847927cf9809df3c56954636aa6c5f03..9d2aff61382c6762ef1dc971dd198943aacf6372 100644
--- a/config/metrics/counts_all/20210216182921_package_events_i_package_delete_package_by_deploy_token.yml
+++ b/config/metrics/counts_all/20210216182921_package_events_i_package_delete_package_by_deploy_token.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_delete_package_by_deploy_token
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      property: deploy_token
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182923_package_events_i_package_delete_package_by_guest.yml b/config/metrics/counts_all/20210216182923_package_events_i_package_delete_package_by_guest.yml
index 5744a88f037610e9ffa5c83329a093c5a14a7d3e..80c1039cc14994e2fc30ade09d2fb462cb3614b7 100644
--- a/config/metrics/counts_all/20210216182923_package_events_i_package_delete_package_by_guest.yml
+++ b/config/metrics/counts_all/20210216182923_package_events_i_package_delete_package_by_guest.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_delete_package_by_guest
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      property: guest
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182925_package_events_i_package_delete_package_by_user.yml b/config/metrics/counts_all/20210216182925_package_events_i_package_delete_package_by_user.yml
index 962bfdcc519a2d5a7f05747895e78f2054ff6304..56312ce2f941132dcd8d670296e640a944b54c30 100644
--- a/config/metrics/counts_all/20210216182925_package_events_i_package_delete_package_by_user.yml
+++ b/config/metrics/counts_all/20210216182925_package_events_i_package_delete_package_by_user.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_delete_package_by_user
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      property: user
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182927_package_events_i_package_generic_delete_package.yml b/config/metrics/counts_all/20210216182927_package_events_i_package_generic_delete_package.yml
index 3d1750aafe93037188ace57ba2499d915cb3eaba..1a9fa81bd0f43c2dbf8d9c3a7be02384e2929667 100644
--- a/config/metrics/counts_all/20210216182927_package_events_i_package_generic_delete_package.yml
+++ b/config/metrics/counts_all/20210216182927_package_events_i_package_generic_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_generic_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: generic
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182933_package_events_i_package_golang_delete_package.yml b/config/metrics/counts_all/20210216182933_package_events_i_package_golang_delete_package.yml
index d72d66a74f247b713194f459a5a287c687c74e09..8c7fa464841f8ae2c24eb652410a371c7b0c981b 100644
--- a/config/metrics/counts_all/20210216182933_package_events_i_package_golang_delete_package.yml
+++ b/config/metrics/counts_all/20210216182933_package_events_i_package_golang_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_golang_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: golang
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182938_package_events_i_package_maven_delete_package.yml b/config/metrics/counts_all/20210216182938_package_events_i_package_maven_delete_package.yml
index e47416ca8602ce8dff4b8fe687446802ef54624f..f2ed200cc7c5d66ab89d85abaae6f2bbcde08bfc 100644
--- a/config/metrics/counts_all/20210216182938_package_events_i_package_maven_delete_package.yml
+++ b/config/metrics/counts_all/20210216182938_package_events_i_package_maven_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_maven_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: maven
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182944_package_events_i_package_npm_delete_package.yml b/config/metrics/counts_all/20210216182944_package_events_i_package_npm_delete_package.yml
index 3369dc2d174a1e3b3ef04f7e354c7c592b8bee9e..040fcc93c6cdcd4c771a2b7edea2e846f3a74dd8 100644
--- a/config/metrics/counts_all/20210216182944_package_events_i_package_npm_delete_package.yml
+++ b/config/metrics/counts_all/20210216182944_package_events_i_package_npm_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_npm_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: npm
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216182950_package_events_i_package_nuget_delete_package.yml b/config/metrics/counts_all/20210216182950_package_events_i_package_nuget_delete_package.yml
index 2bc2c2fee01891f3963c29631e5223a07a6738c8..2cce71e6cff0a6693d8c0efd61c29f923b67007e 100644
--- a/config/metrics/counts_all/20210216182950_package_events_i_package_nuget_delete_package.yml
+++ b/config/metrics/counts_all/20210216182950_package_events_i_package_nuget_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_nuget_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: nuget
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210216183011_package_events_i_package_pypi_delete_package.yml b/config/metrics/counts_all/20210216183011_package_events_i_package_pypi_delete_package.yml
index c4468639d96862aeb160d9ffed92680a5c86d9e9..d507feb9bcc5ce31adee615d86949b66ade1dccd 100644
--- a/config/metrics/counts_all/20210216183011_package_events_i_package_pypi_delete_package.yml
+++ b/config/metrics/counts_all/20210216183011_package_events_i_package_pypi_delete_package.yml
@@ -6,11 +6,11 @@ product_group: package_registry
 value_type: number
 status: active
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_pypi_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: pypi
 distribution:
 - ee
 - ce
diff --git a/config/metrics/counts_all/20210303153000_package_events_i_package_rubygems_delete_package.yml b/config/metrics/counts_all/20210303153000_package_events_i_package_rubygems_delete_package.yml
index 4967e08afa5b63d21dfbf59940eed59786d82c3f..0a9b2d3957a78b06f3ee4271f08970583e9becaf 100644
--- a/config/metrics/counts_all/20210303153000_package_events_i_package_rubygems_delete_package.yml
+++ b/config/metrics/counts_all/20210303153000_package_events_i_package_rubygems_delete_package.yml
@@ -8,11 +8,11 @@ status: active
 milestone: '13.10'
 introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/53480
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_rubygems_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: rubygems
 distribution:
 - ce
 - ee
diff --git a/config/metrics/counts_all/20210410012200_package_events_i_package_terraform_module_delete_package.yml b/config/metrics/counts_all/20210410012200_package_events_i_package_terraform_module_delete_package.yml
index 1014fb88154ce109d09958f50dd40f1daeb5462f..06310a280615e1b9c32bc5a3ebcaed5c9e9ccd0d 100644
--- a/config/metrics/counts_all/20210410012200_package_events_i_package_terraform_module_delete_package.yml
+++ b/config/metrics/counts_all/20210410012200_package_events_i_package_terraform_module_delete_package.yml
@@ -8,11 +8,11 @@ status: active
 milestone: '13.11'
 introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/55018
 time_frame: all
-data_source: redis
-instrumentation_class: RedisMetric
-options:
-  prefix: package_events
-  event: i_package_terraform_module_delete_package
+data_source: internal_events
+events:
+  - name: delete_package_from_registry
+    filter:
+      label: terraform_module
 distribution:
 - ce
 - ee
diff --git a/lib/gitlab/usage_data_counters/counter_events/package_events.yml b/lib/gitlab/usage_data_counters/counter_events/package_events.yml
index eef4e2998623eaeefbd0fcc0765bee1a0828c31e..38bf21d70bc1bc20256a81b59142da6d9ced3473 100644
--- a/lib/gitlab/usage_data_counters/counter_events/package_events.yml
+++ b/lib/gitlab/usage_data_counters/counter_events/package_events.yml
@@ -1,24 +1,12 @@
 ---
-- i_package_composer_delete_package
 - i_package_composer_push_package
-- i_package_conan_delete_package
 - i_package_conan_push_package
-- i_package_debian_delete_package
 - i_package_debian_push_package
-- i_package_delete_package
-- i_package_delete_package_by_deploy_token
-- i_package_delete_package_by_guest
-- i_package_delete_package_by_user
-- i_package_generic_delete_package
 - i_package_generic_push_package
-- i_package_golang_delete_package
 - i_package_golang_push_package
 - i_package_helm_push_package
-- i_package_maven_delete_package
 - i_package_maven_push_package
-- i_package_npm_delete_package
 - i_package_npm_push_package
-- i_package_nuget_delete_package
 - i_package_nuget_push_package
 - i_package_nuget_pull_symbol_package
 - i_package_nuget_push_symbol_package
@@ -34,10 +22,7 @@
 - i_package_push_symbol_package_by_deploy_token
 - i_package_push_symbol_package_by_guest
 - i_package_push_symbol_package_by_user
-- i_package_pypi_delete_package
 - i_package_pypi_push_package
-- i_package_rubygems_delete_package
 - i_package_rubygems_push_package
-- i_package_terraform_module_delete_package
 - i_package_terraform_module_push_package
 - i_package_rpm_push_package
diff --git a/lib/gitlab/usage_data_counters/total_counter_redis_key_overrides.yml b/lib/gitlab/usage_data_counters/total_counter_redis_key_overrides.yml
index 35b490e3e1f695d201521b1ba4d881223f9bd54a..18ccede9657218cc9d8d6f40be460b1035aa5981 100644
--- a/lib/gitlab/usage_data_counters/total_counter_redis_key_overrides.yml
+++ b/lib/gitlab/usage_data_counters/total_counter_redis_key_overrides.yml
@@ -28,6 +28,12 @@
 '{event_counters}_create_snippet_note': USAGE_NOTE_CREATE_SNIPPET
 '{event_counters}_create_wiki_page': USAGE_WIKI_PAGES_CREATE
 '{event_counters}_delete_design_management_design': USAGE_DESIGN_MANAGEMENT_DESIGNS_DELETE
+'{event_counters}_delete_package_from_registry-filter': USAGE_PACKAGE_EVENTS_I_PACKAGE_DELETE_PACKAGE
+'{event_counters}_delete_package_from_registry-filter:[label:conan]': USAGE_PACKAGE_EVENTS_I_PACKAGE_CONAN_DELETE_PACKAGE
+'{event_counters}_delete_package_from_registry-filter:[label:nuget]': USAGE_PACKAGE_EVENTS_I_PACKAGE_NUGET_DELETE_PACKAGE
+'{event_counters}_delete_package_from_registry-filter:[property:deploy_token]': USAGE_PACKAGE_EVENTS_I_PACKAGE_DELETE_PACKAGE_BY_DEPLOY_TOKEN
+'{event_counters}_delete_package_from_registry-filter:[property:guest]': USAGE_PACKAGE_EVENTS_I_PACKAGE_DELETE_PACKAGE_BY_GUEST
+'{event_counters}_delete_package_from_registry-filter:[property:user]': USAGE_PACKAGE_EVENTS_I_PACKAGE_DELETE_PACKAGE_BY_USER
 '{event_counters}_delete_wiki_page': USAGE_WIKI_PAGES_DELETE
 '{event_counters}_expand_merge_request_widget-filter:[label:accessibility]': USAGE_I_CODE_REVIEW_MERGE_REQUEST_WIDGET_ACCESSIBILITY_COUNT_EXPAND
 '{event_counters}_expand_merge_request_widget-filter:[label:accessibility,property:failed]': USAGE_I_CODE_REVIEW_MERGE_REQUEST_WIDGET_ACCESSIBILITY_COUNT_EXPAND_FAILED
diff --git a/spec/requests/api/nuget_project_packages_spec.rb b/spec/requests/api/nuget_project_packages_spec.rb
index 8252fc1c4cdfa510c49288d40c977403caa76aa5..336b6a0dbf1c79603fd0ad09badbcb9ac65dc475 100644
--- a/spec/requests/api/nuget_project_packages_spec.rb
+++ b/spec/requests/api/nuget_project_packages_spec.rb
@@ -390,7 +390,7 @@ def snowplow_context(user_role: :developer, event_user: user)
           update_visibility_to(Gitlab::VisibilityLevel.const_get(visibility.to_s.upcase, false))
         end
 
-        it_behaves_like params[:shared_examples_name], params[:user_role], params[:expected_status]
+        it_behaves_like params[:shared_examples_name], params[:user_role], params[:expected_status], params[:auth]
       end
     end
 
diff --git a/spec/support/shared_examples/requests/api/conan_packages_shared_examples.rb b/spec/support/shared_examples/requests/api/conan_packages_shared_examples.rb
index 116e987400117b3a093a8137e3b5a621df6c2d5b..e7cdac774659eacaefa19ca9f94c44345fe6528c 100644
--- a/spec/support/shared_examples/requests/api/conan_packages_shared_examples.rb
+++ b/spec/support/shared_examples/requests/api/conan_packages_shared_examples.rb
@@ -593,7 +593,11 @@
       project.add_maintainer(user)
     end
 
-    it_behaves_like 'a package tracking event', 'API::ConanPackages', 'delete_package'
+    it 'triggers an internal event' do
+      expect { subject }
+        .to trigger_internal_events('delete_package_from_registry')
+          .with(user: user, project: project, property: 'user', label: 'conan', category: 'InternalEventTracking')
+    end
 
     it 'deletes a package' do
       expect { subject }.to change { Packages::Package.count }.from(2).to(1)
diff --git a/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb b/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb
index 7019392a91a5a758d974799224e9df1787fabaad..c7d0c296b20a730f420e0486347b7390d9640113 100644
--- a/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb
+++ b/spec/support/shared_examples/requests/api/nuget_packages_shared_examples.rb
@@ -753,7 +753,7 @@
   end
 end
 
-RSpec.shared_examples 'process nuget delete request' do |user_type, status|
+RSpec.shared_examples 'process nuget delete request' do |user_type, status, auth|
   context "for user type #{user_type}" do
     before do
       target.send("add_#{user_type}", user) if user_type
@@ -761,7 +761,22 @@
 
     it_behaves_like 'returning response status', status
 
-    it_behaves_like 'a package tracking event', 'API::NugetPackages', 'delete_package'
+    it 'triggers an internal event' do
+      args = { project: project, label: 'nuget', category: 'InternalEventTracking' }
+
+      if auth.nil?
+        args[:property] = 'guest'
+      elsif auth == :deploy_token
+        args[:property] = 'deploy_token'
+      else
+        args[:user] = user
+        args[:property] = 'user'
+      end
+
+      expect { subject }
+        .to trigger_internal_events('delete_package_from_registry')
+          .with(**args)
+    end
 
     it 'marks package for deletion' do
       expect { subject }.to change { package.reset.status }.from('default').to('pending_destruction')