opsen reads your Azure DevOps organisation's user entitlements: every person, their access level, and when they last signed in. It prices them at Microsoft's list prices and finds seats nobody is using.
Connect
Settings → Connections → Azure DevOps. Enter the organisation name (dev.azure.com/your-org works) and a personal access token.
Create the token in Azure DevOps under User settings → Personal access tokens, scoped to this organisation, with:
| Scope | Why |
|---|---|
| Member entitlement management: Read | Access levels and last sign-in for every user |
| Code: Read | Completed pull requests, counted for the fee |
| Member entitlement management: Read & write | Only if you want one-click moves to Stakeholder |
Microsoft retires all-organisation tokens on December 1, 2026; use an organisation-scoped one.
What it finds
| Finding | Rule | Priced at |
|---|---|---|
| Dormant Basic seats | No sign-in in 90 days, account older than 30 days | $6 a user a month, only for seats above the 5 free |
| Dormant Basic + Test Plans | Same rule | $52 a user a month |
| Unused Visual Studio subscriptions | Subscriber with no sign-in in 90 days | Enterprise $250, Professional $45 a month (cloud subscription list price) |
Acting on it
Move to Stakeholder changes the chosen users' access level in one click. They keep their account, boards and work items; the Basic charge stops. Stakeholders cannot read code in private projects, so untick anyone who still needs it. Anyone can be given Basic again in seconds.
Visual Studio subscriptions are managed in the Visual Studio admin portal: export the list and remove them there.