Azure DevOps billing can be a complex and daunting task, but with the right knowledge, you can master it. Understanding how Azure DevOps charges for its services is crucial to managing costs effectively.
The billing model for Azure DevOps is based on usage, with costs calculated on a per-minute or per-hour basis for services such as build and deployment. This means that you only pay for what you use.
To get a clear picture of your Azure DevOps costs, you can view your billing details in the Azure portal or through the Azure DevOps billing dashboard.
Understanding Azure DevOps Billing
Azure DevOps billing can be a bit complex, but don't worry, I've got you covered. You can view your Azure DevOps charges alongside your other Azure charges on your Azure bill.
To drill into your Azure DevOps specific charges, follow these steps: Go to the Azure portal > Subscriptions, and then select Cost analysis.
You can also view your charges by cost analysis to get a better understanding of your expenses. To do this, select Subscriptions > Cost analysis in the Azure portal.
Azure DevOps charges daily, so if you want to see what you're currently paying, view your charges by daily costs. To do this, select Subscriptions > Cost analysis in the Azure portal and then view by Daily costs.
If you have inactive users, you can stop paying for them by removing them or assigning them a free Stakeholder access level. This will save you money on unnecessary expenses. Sort by Last Access to find users who aren't active, and then export the list of users to check the Date Added column.
Payment Methods and Options
You can pay for Azure DevOps Server through Azure on a monthly basis and cancel anytime.
To get started, you'll need at least one Visual Studio subscription, which includes the server license. You can also buy the server license through classic purchasing.
A Client Access License (CAL) is required for each user accessing the server. You'll also need paid access to Test Plans for each user accessing Test Plans.
Visual Studio Subscriptions include one server license and one user CAL, making them a convenient option. Visual Studio Enterprise and Visual Studio Test Professional also include access to Test Plans.
Here's a quick rundown of the requirements:
- At least one Visual Studio subscription (includes server license)
- Client Access License (CAL) for each user
- Paid access to Test Plans for each user accessing Test Plans
Free and Discounted Options
You can use Azure DevOps for free, but there are some limits to keep in mind.
First, you get five users for free with the Basic license. This is a great option for small teams or individual developers.
Azure Pipelines are also included in the free tier, allowing you to automate your build and deployment processes.
Azure Boards offer work item tracking and boards, giving you a solid foundation for project management.
Azure Repos provides unlimited private Git repositories, which is a huge benefit for teams that need to collaborate on code.
Azure Artifacts offers two GiB of free storage per organization, which should be sufficient for most small projects.
Here's a quick summary of the free tier benefits:
Understand Your Bill
If you're trying to make sense of your Azure DevOps bill, start by going to the Azure portal and selecting Subscriptions > Cost analysis. This is where you can drill into your Azure DevOps specific charges.
To view your charges by cost analysis, follow these steps: Go to Azure portal > Subscriptions, and then select Cost analysis.
You can also filter your charges to see only your Azure DevOps costs by selecting Subscriptions > Cost analysis in the Azure portal and then filtering on Service name = Azure DevOps.
The Azure portal is where you'll find all your Azure charges, including those for Azure DevOps. To view your billing details, you'll need to go to Azure DevOps Organization settings > Billing tab if you're the owner or contributor for the Azure subscription used for billing your organization.
Managing Organizations and Users
You can pay for users based on their access level with user assignment-based billing, which stops charging when users are removed.
Assignment errors are no longer common with this billing method, thanks to group rules that automate access level assignment.
Under assignment-based billing, all organizations begin with new users added from projects with Stakeholder access, and charges only apply to users assigned a higher access level.
If you want all new users to get Basic access, change the default access level for your organization to Basic.
Here's a quick rundown of the access levels and their costs:
To give a user access to manage billing, assign them the Owner, Contributor, or Service admin role under the subscription your organization uses for billing.
Grant User Access
You can grant users access to your organization by assigning them an access level. With user assignment-based billing, you pay for the users you assign an access level, and charges stop when you remove them.
To give a user access to manage billing, you need to assign one of the following roles: Owner, Contributor, or Service admin.
Sign in to the Azure portal as the Azure Account Administrator to begin the process. Enter subscriptions in the search box and select Subscriptions.
To assign a role, select the subscription > Access control (IAM) > + Add. Then, select the appropriate role from the dropdown menu.
You'll also need to choose + Select members, search for a user by name or email address, highlight the user, and then choose Select.
Finally, select Review + assign to complete the process. The user must accept their email invitation before they can access the Azure subscription, if they aren't in your directory.
Here are the steps to assign a role in a concise list:
- Sign in to the Azure portal as the Azure Account Administrator.
- Enter subscriptions in the search box and select Subscriptions.
- Select the subscription > Access control (IAM) > + Add.
- Choose the appropriate role from the dropdown menu.
- Choose + Select members, search for a user by name or email address, highlight the user, and then choose Select.
- Select Review + assign.
Charges for Inactive Users
If you add users with Basic or Basic + Test Plans access level, you pay at the time of assignment. This means you'll be charged for users even if they never sign in.
Each organization includes five free Basic users, which doesn't include a CAL. This is a great perk, but be aware that adding five users who won't use the server to ensure you're paying for everyone who needs a server CAL is a good idea.
To stop paying for users who aren't actively using Azure DevOps, you can remove them or assign them a free Stakeholder access level. This will help you avoid unnecessary charges.
Users assigned Basic + Test Plans lose access until you set up billing. Don't forget to do this to avoid any disruptions.
You can find inactive users by sorting by Last Access in the user list. This will help you identify users who haven't signed in recently.
Here's a simple way to check how recently users were added: export the list of users and check the Date Added column. This will give you an idea of how long it's been since they were added.
By following these steps, you can ensure you're only paying for users who are actively using Azure DevOps.
Multi-Organization for All Customers
Multi-organization billing isn't suitable for every customer. For example, if most users only access one organization, it's more cost-effective to stick with the default assignment-based billing, which gives each organization five free Basic users.
You can turn on multi-organization billing from any organization that uses the same Azure subscription for billing. This means you only need to do it once. The ordering of organizations is consistent month to month, but it's not configurable.
There are some limitations to multi-organization billing. For instance, users who have both Basic and Test Plans licenses are billed for both, which is a current limitation.
You don't need to turn on multi-organization billing for each organization individually. It applies to the Azure subscription, so you only need to set it up once.
Here are some key points to keep in mind:
- Multi-organization billing groups per-user charges at an Azure subscription level.
- Only organizations that share a common Azure subscription get billed together.
- Users get billed in the first organization they're found in, and not again in any other organization.
By understanding these facts, you can make informed decisions about how to manage your organizations and users in Azure DevOps.
Organization Resource Name Error
If you've renamed your organization after setting up billing, the name of the organization resource will still be the original name.
You'll need to remove billing first, and then set up billing again to update the name of the organization resource to the new name.
Don't worry, this is a common issue, and it's an easy fix.
Consequences of Deleting Organization Resource
Deleting your organization resource in Azure DevOps can be a bit tricky. If you try to delete it while it's actively being used for billing, you'll get an error.
You need to change the billing to a different Azure subscription in the Azure DevOps organization first. This can be done by going to Organization settings > Billing > Change billing.
If the user removing billing has permission on the Azure subscription, the resource in the Azure portal will get removed automatically. However, if they don't have access, the organization resource will persist and can be safely removed later by someone with access to the Azure subscription.
Remove Your Subscription
Removing your subscription from Azure DevOps is a straightforward process. You'll need to change the billing to a different Azure subscription in the Azure DevOps organization first.
To avoid any errors, make sure you have permission on the Azure subscription, as this will allow the organization resource to be removed automatically. If not, you can safely remove it later.
Removing the billing subscription from your organization will immediately revert any paid quantities of services like Basic, Azure Artifacts users, Azure Test Plans users, Microsoft-hosted CI/CD, and self-hosted CI/CD to the free tier of service.
A resource group might be left behind in the old Azure subscription when billing is canceled or changed. These resource groups can be safely deleted if they're empty.
To remove your billing subscription, follow these steps:
- Sign in to your organization, choose Organization settings > Billing, and then Change billing.
- Choose Remove billing, and then choose Save.
Keep in mind that a resource group might be left behind in the old Azure subscription, but it's safe to delete these resource groups if empty.
Users
You get your first 5 basic users for free. After that, each user costs a certain amount depending on the user's access level.
The tiers are as follows:
- Basic users: Users can access all features except Azure Test Plan administration, which involves creating test suites, cases, and plans. Five Basic users are included initially, with each extra user incurring a $6 monthly charge.
- Basic+Test Plan users: These users have access to the Azure Test Plans administration and all the access available to a Basic user. Each Basic+Test Plans user costs $52/month.
- Stakeholder: This access level is free! Stakeholders have similar functionality to Basic users but cannot access Azure Repos or certain advanced features on Azure Boards.
You can also get an Azure DevOps Services license if you're a Visual Studio subscriber, which includes access to all features. This is a great perk if you're already using Visual Studio.
Charge Processing and Adjustments
If you're the owner or contributor for the Azure subscription used for billing your organization, you can view your billing details in Azure DevOps Organization settings > Billing tab.
Charges are metered daily to the Azure subscription you selected when you set up billing.
To get a clear picture of your charges, you can check your Azure bill, which will include all accumulated charges from the previous days.
Charge Processing
Charges are metered daily to the Azure subscription you selected when you set up billing.
To see only your charges for Azure DevOps, you can filter on Service name = Azure DevOps in the Azure portal's Cost analysis.
If you're the owner or contributor for the Azure subscription used for billing your organization, you can view your billing details in Azure DevOps Organization settings > Billing tab.
Charges accumulate and are included on the next Azure bill you receive.
Here's a breakdown of how charges get processed:
User charges and CI/CD concurrent job charges are processed in the same way as other charges.
Reductions or Cancellations
Reductions or cancellations can be effective immediately, which means you won't have to wait for a billing cycle to end before changes take effect.
If you're looking to cancel or reduce your Azure DevOps users, you'll want to remove inactive users or assign them a free Stakeholder access level to stop paying for them. This will help you save money and only pay for users who are actively using the service.
Removing users or assigning them a free Stakeholder access level can be done by sorting by Last Access to find users who aren't active.
Sources
- https://learn.microsoft.com/en-us/azure/devops/organizations/billing/billing-faq
- https://learn.microsoft.com/en-us/azure/devops/organizations/billing/set-up-billing-for-your-organization-vs
- https://azure.microsoft.com/en-us/pricing/details/devops/azure-devops-services/
- https://www.spiceworks.com/tech/cloud/articles/what-is-azure-devops/
- https://www.anodot.com/blog/azure-devops-pricing/
Featured Images: pexels.com