From $495, one time · Fixed price by user count · Guarantee below
Pay for the licenses you use. Reclaim the rest.
A one-time, fixed-price audit of your Microsoft 365 tenant and the SaaS tools around it. You get the list, the script to fix it and a renewal calendar. Nothing recurs unless you ask. For some organizations a single audit has recovered more than $50,000 a year in licensing.
The problem.
For some organizations a single audit has recovered more than $50,000 a year in licensing. The usual finds are people who have not signed in for months, disabled accounts that still hold a license, and shared mailboxes that were licensed and never needed to be.
-
Microsoft's guidance says a reasonable window for an inactive account is 90 to 180 days. The audit uses that same sign-in signal, so the findings rest on Microsoft's own data.
Source, Microsoft Learn Turnover, a merger or a change of MSP leaves licenses behind. The invoice keeps paying for people who left and for tiers nobody uses.
Annual commitments usually cannot be reduced until renewal. Without a renewal calendar, the saving slips another year.
I handle Microsoft licensing and procurement through a distributor for more than a hundred organizations, so I know where the waste hides. Departed users, over-provisioned tiers, and seats bought for a project that ended.
What I do.
Kickoff and access.
A 30-minute call. You grant read-only access (the Global Reader role, with MFA, on a temporary account or an app registration). I make no changes during the audit, and the access is removed and confirmed at the end.
Pull the data.
With the Microsoft Graph PowerShell SDK I pull every user's sign-in activity (last interactive and non-interactive sign-in), assigned licenses and service plans, group-based licensing, shared and resource mailboxes, guest accounts, unassigned subscriptions and renewal dates, and the Exchange, Teams, OneDrive and SharePoint usage reports.
Cross-check.
Against your HR list of departures and your finance list of SaaS subscriptions, with owner, seat count and renewal date for each.
Classify every finding.
Departed but still licensed. Disabled accounts that still hold a license. No sign-in in 90 or 180 days. A higher tier than the workload uses (E5 where E3 fits, Business Premium where Business Standard fits, judged from the service plans actually used). Licensed shared mailboxes. Seats bought and never assigned. Add-ons nobody opens. Duplicate tools for conferencing, e-signature or storage.
Price and schedule.
Every row is priced at your contract rate from your invoice, and every subscription goes on a renewal calendar.
Write the fix.
A PowerShell remediation script with a dry-run switch, or a step-by-step guide if you prefer to click, plus a one-hour findings review.
What you get.
- A findings workbook with every row priced at your contract rate.
- A two-page summary for whoever signs the renewal.
- The remediation script with a dry-run mode, or a step-by-step guide.
- A renewal calendar for every Microsoft and SaaS subscription found.
- A one-hour findings review and written confirmation that my access was removed.
What the findings look like.
Illustrative rows, typeset the way you will receive them. The real report prices every row at your contract rate.
Sample · License audit findings
| Finding | Count | License | Action |
|---|---|---|---|
| Departed, still licensed | 9 | Business Premium | Archive OneDrive, then remove |
| No sign-in in 180 days or more | 6 | Business Standard | Confirm with manager, then remove |
| Higher tier than the workload needs | 4 | E5 | Review for E3 |
| Shared mailbox holding a license | 3 | Business Standard | Convert to unlicensed |
| Purchased, never assigned | 12 | Business Premium | Reduce at renewal |
| Second conferencing tool | 1 | Third party | Cancel at renewal |
How long it takes.
- Kickoff and access
- Day 1. About 30 minutes of your admin's time.
- Data pull and analysis
- Days 2 to 5.
- Findings review and script delivery
- Days 6 to 8.
- Typical total
- 1 to 2 weeks. Two to four hours of your admin's time in all.
Pricing.
Fixed by licensed user count. One tenant.
-
Up to 100 licensed users
Everything on this page, for one tenant.
$495 one time -
101 to 300 licensed users
Everything on this page, for one tenant.
$895 one time -
301 to 750 licensed users
Everything on this page, for one tenant.
$1,450 one time -
Above 750 users
Quoted after a short call about the tenant and the SaaS list.
quoted -
Guarantee
If the audit does not identify annual savings of at least twice the fee, the fee becomes a credit toward any other service. Savings are measured as the annualized contract price of the licenses the report shows you can remove or downgrade.
-
Included
Everything above, for one tenant.
-
Extra
Additional tenants, quoted. Running the remediation for you, at my hourly rate or through the retainer. A quarterly re-check at 40% of the audit fee, only if you ask for it.
Every quote is fixed in writing before work begins.
Questions.
What access do you need?
Read-only. The Global Reader role on a temporary account or an app registration, with MFA. I make no changes during the audit, and I confirm in writing when the access is removed.
Will you remove licenses?
Not during the audit. You get a script with a dry-run mode so you can see exactly what it would change. If you want me to run it with you, that is a short follow-on at my hourly rate.
Our MSP manages our licensing. Is this a conflict?
No. The report goes to you, and most MSPs welcome a clean list. Annual commitments bought through a reseller usually cannot be reduced until the renewal date, which is why the report includes the calendar.
How is the guarantee measured?
The annualized contract price of the licenses the report shows you can remove or downgrade, as listed in the findings workbook. If that figure is less than twice the audit fee, the fee becomes a credit toward any other service.
Twenty minutes on the phone is enough to confirm the user count and the price.
The audit finds the waste once. The fractional senior engineer retainer keeps it from coming back.