Managing user licenses and cost for Azure DevOps.
User
licenses contribute to a major share of the cost for Azure DevOps services. In
this post we will focus mainly on user licenses and some tips for managing them efficiently.
Managing the cost associated with other paid services for Azure DevOps will be
covered in a separate post.
If you
are part of the Azure DevOps admin team of your organization, you should be
having an idea about the monthly / annual spend for Azure DevOps. The user who
sets up billing for Azure DevOps services needs to have permissions at the
subscription level, as explained in this article - Add
a user who can set up billing for Azure DevOps. Often what happens is,
setting up billing for Azure DevOps is done by someone who has more privileges
in Azure - like a subscription admin. However once the subscription is linked,
an ADO collection admin can then add people and assign them licenses. It
is also possible that the ADO admin doesn't get a copy of the bill, thereby
blocking the visibility to the expenses.
Since adding people
and assigning them licenses is fairly simple, it is easy for an ADO admin to
keep doing that, without really thinking about it from the billing perspective.
This can be dangerous, as over a period of time this can really increase the amount being
spent. A copy of the bill is not really required, if we keep a tab on the paid
services and do some regular checks.
Let's check some
basics here:
Tip 1 : Understand the license types for Azure DevOps.
You should be
knowing:
- The different types of
licenses.
Manage paid access for users - this Microsoft article sums it up quite nicely.The below can be used as a quick reference for the license types.
- The differences between them
and the actions that can be performed with each.
This is very important so that you can assign the right licenses to the right people.
About access levels - this is the go to guide to find out the features available with each of the different access levels / license types. It also talks about the differences in features for the different types of Visual Studio subscriptions. Below is a short summary:
- Cost associated with each type.The cost associated with the Visual Studio subscribers are handled via their individual subscriptions. Stakeholders are free. So in effect, the two license types that has a cost associated with it, and have to be assigned directly by an Azure DevOps admin are :
- Basic - priced as :First 5 users free, then $6 per user per month
- Basic + Test Plans - priced as :$52 per user per month
Refer
Pricing
for Azure DevOps
Optimizing license usage and cost saving considerations:
User
assignment based billing and Daily billing which is now available in Azure
DevOps give more control over the way licenses are managed. This means that you
will be paying only for the licenses you are using, and only for the exact
duration, rather than on a monthly basis.
Tip 2 : Assigning user licenses.
Once you have a
clear understanding of the license types, their features and the associated
cost, the next important thing is to make sure that you are assigning licenses
appropriately - so that their usage is optimized. You can also choose to use group
rules, which helps automating the process of assigning and revoking user licenses. One catch here is that
you will have to remove direct assignments for users as mentioned in the
article.
Tip 3 : Automate removal of user licenses.
While group rules
are a great way to automate license management, you should also be having an
automated mechanism, to free up the licenses consumed by inactive users and
users with direct assignments. The logic to be used is fairly simple, as
explained in this FAQ item: How
can I stop paying for users who aren't actively using Azure DevOps?
- Export the user list and sort by last access date to get the inactive users.
- For users who have never signed in, look for the date on which they were added.
- Either remove the users or assign them Stakeholder license.
If you have not done this process of evaluating inactive user licenses ever, you might be quite surprised by the number and the associated cost!
Doing these things
manually on a regular basis can be tedious. There are different options
available to automate this and make sure that you are not paying extra by
wasting licenses. We will discuss about the options in the next post!
Comments
Post a Comment