diff --git a/ee/app/helpers/ee/namespaces_helper.rb b/ee/app/helpers/ee/namespaces_helper.rb
index cb14f54e2b2958d42b8e9824e2cc54d2e5509832..815222cf657052ab1d857a510ed48c063af76370 100644
--- a/ee/app/helpers/ee/namespaces_helper.rb
+++ b/ee/app/helpers/ee/namespaces_helper.rb
@@ -27,13 +27,13 @@ def buy_addon_target_attr(namespace)
     end
 
     def buy_storage_path(namespace)
-      return purchase_storage_url if use_customers_dot_for_addon_path?(namespace)
+      return purchase_storage_url(namespace) if use_customers_dot_for_addon_path?(namespace)
 
       buy_storage_subscriptions_path(selected_group: namespace.root_ancestor.id)
     end
 
     def buy_storage_url(namespace)
-      return purchase_storage_url if use_customers_dot_for_addon_path?(namespace)
+      return purchase_storage_url(namespace) if use_customers_dot_for_addon_path?(namespace)
 
       buy_storage_subscriptions_url(selected_group: namespace.root_ancestor.id)
     end
@@ -96,8 +96,11 @@ def storage_usage_app_data(namespace)
       })
     end
 
-    def purchase_storage_url
-      ::Gitlab::Routing.url_helpers.subscription_portal_more_storage_url
+    def purchase_storage_url(namespace)
+      ::Gitlab::Utils.add_url_parameters(
+        ::Gitlab::Routing.url_helpers.subscription_portal_more_storage_url,
+        gl_namespace_id: namespace.root_ancestor.id
+      )
     end
 
     private
diff --git a/ee/spec/helpers/ee/namespaces_helper_spec.rb b/ee/spec/helpers/ee/namespaces_helper_spec.rb
index 7f77a4338e5c17226e7a18a7742d2903cdb14b37..91cc85717836c70d3d2e204083c9a6160491ca25 100644
--- a/ee/spec/helpers/ee/namespaces_helper_spec.rb
+++ b/ee/spec/helpers/ee/namespaces_helper_spec.rb
@@ -19,7 +19,6 @@
   end
 
   let(:ci_minutes_used) { 100 }
-  let(:more_storage_url) { ::Gitlab::Routing.url_helpers.subscription_portal_more_storage_url }
 
   describe '#ci_minutes_report', feature_category: :hosted_runners do
     let(:usage) { Ci::Minutes::Usage.new(user_group) }
@@ -180,6 +179,13 @@
       let(:user) { create(:user) }
       let(:personal_namespace) { build_stubbed(:user_namespace) }
 
+      let(:more_storage_url) do
+        ::Gitlab::Utils.add_url_parameters(
+          ::Gitlab::Routing.url_helpers.subscription_portal_more_storage_url,
+          gl_namespace_id: personal_namespace.root_ancestor.id
+        )
+      end
+
       it 'returns the default purchase' do
         expect(helper.buy_storage_path(personal_namespace)).to eq more_storage_url
       end
@@ -206,6 +212,13 @@
       let(:user) { create(:user) }
       let(:personal_namespace) { build_stubbed(:user_namespace) }
 
+      let(:more_storage_url) do
+        ::Gitlab::Utils.add_url_parameters(
+          ::Gitlab::Routing.url_helpers.subscription_portal_more_storage_url,
+          gl_namespace_id: personal_namespace.root_ancestor.id
+        )
+      end
+
       it 'returns the default purchase' do
         expect(helper.buy_storage_url(personal_namespace)).to eq more_storage_url
       end
@@ -290,7 +303,14 @@
   end
 
   describe '#purchase_storage_url', feature_category: :consumables_cost_management do
-    subject { helper.purchase_storage_url }
+    subject { helper.purchase_storage_url(user_group) }
+
+    let(:more_storage_url) do
+      ::Gitlab::Utils.add_url_parameters(
+        ::Gitlab::Routing.url_helpers.subscription_portal_more_storage_url,
+        gl_namespace_id: user_group.root_ancestor.id
+      )
+    end
 
     it { is_expected.to eq(more_storage_url) }
   end
@@ -304,6 +324,13 @@
     let(:repository_size_limit) { 1000 }
     let(:storage_size_limit) { 1 }
 
+    let(:more_storage_url) do
+      ::Gitlab::Utils.add_url_parameters(
+        ::Gitlab::Routing.url_helpers.subscription_portal_more_storage_url,
+        gl_namespace_id: namespace.root_ancestor.id
+      )
+    end
+
     where(enforcement_type: [:project_repository_limit, :namespace_storage_limit])
 
     with_them do