Allow Premium customers to apply an Ultimate trial to a group with an existing subscription
Problem
As of July 2022, users are unable to apply an Ultimate trial to an existing Premium plan. This is documented in the handbook.
Prior to July 2022, Support would support requests made by Sales to upgrade the subscription level of a namespace for current customers who wanted to trial a higher plan. However, several customers experienced unexpected reversions to the Free plan during this "trial". To avoid this risk, Support stopped supporting requests for Ultimate trials. The only workaround is for a customer to setup a new namespace, separate from their production namespace, and trial Ultimate there. More details of this can be found in this issue.
Note: the prior Support process required manually updating a customer's subscription to the higher tier and then manually downgrading it on a future date. There is no existing support for two subscriptions (either 2 paid or 1 trial + 1 paid) on a single namespace, so that would need to be addressed with this issue.
Why is this needed?
Preventing customers from trialing Ultimate results in the following:
- GitLab is possibly missing out on customer upgrade opportunities and revenue
- Users are confused and frustrated and have to create new groups to trial GitLab, which is not ideal and does not fully allow for trialing the experience with their production environment
- Increased support tickets requesting this, only to be denied
Proposal
Allow existing customers to apply an Ultimate trial to their existing namespace with an active, Premium SaaS subscription. When the trial ends, ensure that the customer's namespace is:
-
Downgraded to Premium if their current subscription is still active (or is within the 14 day grace period). For the MVC approach, we will maintain all existing requirements for current Ultimate SaaS trials, but allow applying the trial to a customer's existing namespace, including:
-
Downgraded to free if their current subscription has expired and the 14 day grace period has passed.
-
Trial duration: 30 days
NOTE: depending on implementation outcome of https://gitlab.com/gitlab-org/customers-gitlab-com/-/issues/5341 - we may need to adjust the Order.relevant_orders_for
scope to include trials (see this comment).
Expected Behavior
- Customer has an existing SaaS Premium active subscription applied to a namespace.
- From gitlab.com, customer requests an Ultimate trial
- Customer applies Ultimate trial to their existing namespace
- When trial ends:
- If customer still has time remaining on their active Premium license, they should be downgraded to Premium.
- If customer still is in the 14 day grace period of their Premium license, they should be downgraded to Premium.
- If customer's Premium license expired and the grace period ended during the trial, they should be downgraded to free.
Result
Overview: Customers on a Premium plan are able to trial Ultimate on their existing Namespace, ultimately increasing Ultimate adoption.
Support Priority Score: 22