diff --git a/ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb b/ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb
index b2af52ebd21eb121a91c0b89e2d29898165ecb1b..cb707858cc33328b00db0a4b661e74b8d8e4bda5 100644
--- a/ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb
+++ b/ee/spec/lib/ee/gitlab/usage_data_counters/hll_redis_counter_spec.rb
@@ -31,9 +31,11 @@
     # depending on which day of the week test is run.
     # Monday 6th of June
     described_class.clear_memoization(:known_events)
+    described_class.clear_memoization(:known_events_names)
     reference_time = Time.utc(2020, 6, 1)
     travel_to(reference_time) { example.run }
     described_class.clear_memoization(:known_events)
+    described_class.clear_memoization(:known_events_names)
   end
 
   describe '.known_events' do
diff --git a/lib/gitlab/usage_data_counters/hll_redis_counter.rb b/lib/gitlab/usage_data_counters/hll_redis_counter.rb
index c77a809ade415d72c54adefe769d59896d70dccb..e71061c45227f988419cfaf2ff4e3e0ca0c974e4 100644
--- a/lib/gitlab/usage_data_counters/hll_redis_counter.rb
+++ b/lib/gitlab/usage_data_counters/hll_redis_counter.rb
@@ -115,7 +115,7 @@ def load_events(wildcard)
           if Feature.enabled?(:use_metric_definitions_for_events_list)
             events = Gitlab::Usage::MetricDefinition.not_removed.values.map do |d|
               d.attributes[:options] && d.attributes[:options][:events]
-            end.flatten.compact
+            end.flatten.compact.uniq
 
             events.map do |e|
               { name: e }.with_indifferent_access
@@ -132,7 +132,7 @@ def load_yaml_from_path(path)
         end
 
         def known_events_names
-          known_events.map { |event| event[:name] }
+          @known_events_names ||= known_events.map { |event| event[:name] }
         end
 
         def event_for(event_name)
diff --git a/spec/lib/gitlab/usage_data_counters/hll_redis_counter_spec.rb b/spec/lib/gitlab/usage_data_counters/hll_redis_counter_spec.rb
index 62798c1871734ed404cce5c67e2f7fc84011331f..fc1d66d1d624f5a1a031669a4ac1202b54d829f6 100644
--- a/spec/lib/gitlab/usage_data_counters/hll_redis_counter_spec.rb
+++ b/spec/lib/gitlab/usage_data_counters/hll_redis_counter_spec.rb
@@ -18,9 +18,11 @@
     # depending on which day of the week test is run.
     # Monday 6th of June
     described_class.clear_memoization(:known_events)
+    described_class.clear_memoization(:known_events_names)
     reference_time = Time.utc(2020, 6, 1)
     travel_to(reference_time) { example.run }
     described_class.clear_memoization(:known_events)
+    described_class.clear_memoization(:known_events_names)
   end
 
   describe '.known_events' do
diff --git a/spec/lib/gitlab/usage_data_metrics_spec.rb b/spec/lib/gitlab/usage_data_metrics_spec.rb
index 34e62523d4542873e71bab665bece912a413fd0d..06e85a34ec9065d7a0c938375bbf18ea24c28231 100644
--- a/spec/lib/gitlab/usage_data_metrics_spec.rb
+++ b/spec/lib/gitlab/usage_data_metrics_spec.rb
@@ -4,8 +4,6 @@
 
 RSpec.describe Gitlab::UsageDataMetrics, :with_license, feature_category: :service_ping do
   describe '.uncached_data' do
-    let(:aggregate) { instance_double('Gitlab::Usage::Metrics::Aggregates::Aggregate') }
-
     subject { described_class.uncached_data }
 
     around do |example|
@@ -15,11 +13,6 @@
     end
 
     before do
-      # stub time-consuming and unnecessary computation
-      allow(Gitlab::UsageDataCounters::HLLRedisCounter).to receive(:unique_events).and_return(1)
-      allow(Gitlab::Usage::Metrics::Aggregates::Aggregate).to receive(:new).and_return(aggregate)
-      allow(aggregate).to receive(:calculate_count_for_aggregation).and_return(1)
-
       allow_next_instance_of(Gitlab::Database::BatchCounter) do |batch_counter|
         allow(batch_counter).to receive(:transaction_open?).and_return(false)
       end