Split `usage_quotas` License Feature Identifier
To have more control over each tab in usage_quotas page, we need to have more granular License Feature Identifiers than just a catch all usage_quotas identifier
Before we didn't need it because the whole page was hidden in CE or EE unlicensed, but now we'll show the storage tab for all editions, and the remaining tabs only in licensed EE:
EE Unlicensed
| Before | After |
|---|---|
![]() |
![]() |
EE with Premium or Ultimate License
| No Change |
|---|
![]() |
We are using license feature identifiers to follow the current strategy to guard an EE feature by a license. With each tab using their own key it'll be easier in the future to control which tab to show one by one:
| Tab | License Feature Identifier |
|---|---|
| Seats | :seat_usage_quotas |
| GitLab Duo Pro |
:code_suggestions <- this one already exists |
| Pipelines | :pipelines_usage_quotas |
| Storage | Not a licensed feature |
| Transfer | :transfer_usage_quotas |
| Product analytics | :product_analytics_usage_quotas |
Implementation Plan
| MR | Description |
|---|---|
| Split usage_quotas License Feature Identifier | !148694 (merged) |
Old Description
After we have all tabs conditionally rendered in CE we won't need usage_quotas feature because we'll control this page differently:
| Functionality | Availability |
|---|---|
| Usage Quotas Page | All Editions and Distributions |
| Storage Tab | All Editions and Distributions. Enterprise code in EE using our documented techniques, and SaaS code controlled via Application Settings |
| Remaining Tabs | Enterprise only. Code in EE conditionally rendered in our app shell, and SaaS code controlled via Application Settings |
Edited by Sheldon Led


