Forum Discussion
Cost Savings In Microsoft 365
Long story short, I had a client say, "We have more M365 licensed users than employees. Please help us find them."
It took me about a week to find all the waste (first time always takes forever). Now I've run the same steps for a dozen other clients (takes less than an hour now). On average, I've been able to save clients 22% of their budget.
Thought I'd share exactly how I do it.
There are 5 areas of waste in Microsoft 365:
- Remove licenses from disabled users.
- Remove licenses from inactive users.
- Downgrade licenses on over-licensed users.
- Stop paying for unassigned licenses.
- Redefine the license terms.
NOTE: I have the steps using the admin center, PowerShell, and a third-party app, but it's too long to re-post in Reddit. Go to Microsoft 365 License Audit to see all the steps.
Find Disabled Users
- Log in to the Microsoft 365 admin center.
- Users > Active Users > Export > Continue.
- Open the spreadsheet.
- In the Home Ribbon, click Sort & Filter > Filter
- Click the dropdown in the Licensed column > uncheck Unlicensed > click OK
- Click the dropdown in the Block credential column > uncheck FALSE > click OK.
Find Inactive Users
NOTE: You need to either have a Microsoft Entra P1 license or use a third-party app to get this data.
- Open Microsoft Entra Admin Center
- Users > Manage view > Edit columns.
- Remove, replace, or add so the only columns you can see are: Display name, User principal name, User type, Identities, Assign licenses, and Last interactive sign-in time. Click Save.
- Click Download users > Start bulk operation
- Wait for the success pop-up message to appear, then click the notification bell at the top of the page. Under the notifications menu, click Success!, and then select the [report name].
- Open the downloaded spreadsheet.
- Click Sort & Filter > Filter to enable the column filters.
- Click the drop-down in the assignedLicenses column. Uncheck any empty options, i.e., []. Click OK.
- Click the drop-down in the signInActivity column. Click Sort A to Z.
- Any users who have an empty signInActivity or a sign-in that was over 30 days ago can be safely disabled, and the license removed after the data is properly secured.
Find Downgradable Users
- Review the report located on the website, then click Export.
- Open the CSV in Excel.
- Next, download the Microsoft 365 apps spreadsheet by going back to Reports > Usage and clicking View More located under “Active users - Microsoft 365 Apps”
- Review the report and click Export.
- You can start by deleting everyone that you’ve already determined hasn’t logged on or is currently disabled.
- Add the filter by clicking Sort & Filter in the home ribbon > Filter.
- Add a column for Current Licenses.
- Copy the licenses from the How To Use The Admin Center To Find Inactive Users spreadsheet you downloaded earlier into the new column. Be sure to align the user names in both spreadsheets.
- Add a column for Microsoft 365 Apps.
- Copy the Last Activity Date column from the Pro Plus Usage report you downloaded above in step 7 into the Office 365 app usage spreadsheet you’ve been using. Be sure to align the new data with the appropriate users in the Office 365 app usage report.
- For each of the following columns, click the drop-down next to the column name and filter out any logins that have happened in the last month.
- OneDrive Last Activity Date
- SharePoint Last Activity Date
- Skype For Business Last Activity Date
- Yammer Last Activity Date
- Team’s Last Activity Date
- Microsoft 365 Apps
- The users who have not been filtered out are excellent candidates for Exchange Online-only licenses. You may want to double-check their usage of other apps before making any license changes on their accounts.
Find Unassigned Licenses
- Open the Microsoft 365 admin center.
- Click Show All > Billing > Licenses.
- On that webpage, you’ll see a list of all your licenses in your organization, along with a column labeled “Available Licenses”.
- Any number above 0 in the Available Licenses column is typically safe to remove from your organization with two caveats. Some licenses aren’t assigned to users through the Microsoft 365 admin center.
NOTE: Some licenses are consumed as they are used. For example, additional storage licenses for SharePoint Online may show as available, but removing them will decrease the amount of free space available in SharePoint Online and possibly cause a disruption to SharePoint Online usage.
Redefine The License Terms
Microsoft adjusted its pricing model, charging different rates for the same license based on commitment terms, billing frequency, or sector-specific eligibility.
- The subscription length
- Billing Frequency
- Go to the Microsoft 365 admin center
- Click Billing > Licenses > Select the license you want to review.
- Click ellipsis (…) next to the subscription > Manage subscription settings.
- You can view the billing settings right on this page.
3 Replies
- PhilippMetznerCopper Contributor
Great thread — the "more licensed users than employees" line is exactly how these usually start. On top of the buckets already covered, here's what moved the needle most when we did this systematically:
- Building on HarryP's shared-mailbox point— worth chasing hard, and it has a licensing edge case people miss: a shared mailbox is freeuntil it needs an archive / litigation hold (or grows past 50 GB), and if you want Defender for Office 365 to actually cover it, that can pull a license back in. So "unlicense all shared mailboxes" isn't automatically safe — check archive/hold status first.
- Redundant add-ons are pure, risk-free removal.The one a usage report never flags, because the licenselooks used: a standalone add-on stacked on a suite that already includes it — Defender for O365 P2 on top of E5, Entra ID P1 next to Business Premium, standalone Intune next to E3/E5, Power BI Pro next to E5. No downgrade risk, just stop paying twice.
- Split the waste before you touch it."Assigned but never signed in" (offboarding leftovers, service accounts) is pure removal. "Signs in but never touches the premium workloads" is adowngrade, not a removal — E5→E3, E3→Business, or an F-tier for frontline (a fraction of an E3). Different action, different risk.
- Anchor every downgrade on real feature usage, not gut feel.Only keep E5 where Defender for O365 P2, Purview, or Teams Phone is genuinely in use — everything else is an E3 conversation. This is what makes the 22 % defensible instead of a guess you have to walk back later.
- Don't forget the newest, most expensive seat: Copilot.At $30/user/month (annual commitment), one assigned-but-unadopted Copilot costs about as much as three unused E3s. Pilots get rolled out broadly and never re-trued — check actual Copilot interaction counts in the usage reports, not just who has the license.
- The lever that isn't about usage at all: your NCE terms.Monthly-term seats run ~20% over annual, and even annual-commitment-paid-monthly carries a ~5% premium over paying upfront. Permanent headcount sitting on monthly terms is money left on the table — and shrinking teams stuck on annual commitments is the opposite trap. Worth a pass every renewal.
Full disclosure: I build a tool in this space, so I'm biased — but all of the above works with plain Graph + the M365 usage reports, no tooling required. Happy to go into how we set the usage thresholds; bit more in my profile.
— Philipp
- HarryPBrass Contributor
This is super useful, thanks for sharing. The "more licenses than employees" problem is way more common than people think. We found a bunch of orphaned accounts too when we first audited ours. One thing that also helped us was checking shared mailboxes that were converted from user mailboxes but still had licenses assigned. That was like 8-10 licenses we didnt need. Also worth looking at if anyone has E5 licenses but only uses E3 features, the downgrade savings add up fast.
- Leandro de Abreu MascarenhasTin Contributor
Olá, John!
Espero que esteja bem.
Obrigado por compartilhar seu processo. Ele é bastante útil para organizações que desejam iniciar uma revisão de licenciamento utilizando apenas recursos nativos do Microsoft 365.
Como evolução dessa abordagem, eu sugeriria complementar a análise de utilização dos aplicativos com indicadores de identidade do Microsoft Entra, como último login, status da conta, atividade recente dos usuários e outros sinais de governança de identidade. Isso ajuda a diferenciar usuários efetivamente inativos daqueles que apenas utilizam um subconjunto dos serviços contratados.
Outro ponto é que a consolidação manual em planilhas funciona bem em ambientes menores, mas pode se tornar trabalhosa à medida que o número de usuários cresce. Em muitos cenários, é possível automatizar parte dessa análise utilizando Microsoft Graph, PowerShell, Power BI ou outros recursos nativos da plataforma Microsoft.
Após a definição dos perfis de uso e das necessidades de cada área, uma estratégia interessante é utilizar grupos dinâmicos do Microsoft Entra para automatizar a atribuição de licenças com base em atributos corporativos, como departamento, cargo, localização ou unidade de negócios. Dessa forma, a análise periódica continua sendo importante para revisar a estratégia de licenciamento, mas a operação diária de atribuição e manutenção das licenças passa a ser mais padronizada, escalável e menos dependente de atividades manuais.
Além disso, organizações que adquirem suas licenças por meio do programa Microsoft CSP (Cloud Solution Provider) podem se beneficiar significativamente do envolvimento do parceiro de licenciamento nesse processo. Em muitos casos, o parceiro possui visibilidade sobre consumo, modelos de contratação, compromissos anuais, oportunidades de otimização, alterações de SKU e boas práticas de governança, contribuindo para uma tomada de decisão mais assertiva e alinhada às necessidades do negócio.
Por fim, eu recomendaria que decisões de downgrade ou remoção de licenças considerassem não apenas o histórico de uso dos aplicativos, mas também os requisitos de segurança, conformidade, governança e o perfil funcional de cada usuário. Em muitos casos, o valor de uma licença está relacionado não apenas ao consumo dos aplicativos, mas também aos controles administrativos e recursos de proteção que ela disponibiliza.
De qualquer forma, trata-se de um excelente ponto de partida para identificar oportunidades de otimização de custos utilizando recursos nativos do ecossistema Microsoft 365.
Parabéns e sucesso para TODOS nós!
Leandro Mascarenhas
Gerente comercial e especialista em licenciamento Microsoft na ProdutivIT