“Microsoft 365 Upsell Opportunities: Per-Client Product Coverage Analysis”
Autotask PSA Datto RMM Datto Backup Microsoft 365 SmileBack HubSpot IT Glue All reports
AI-GENERATED REPORT
You searched for:

Microsoft 365 Upsell Opportunities: Per-Client Product Coverage Analysis

Which clients are missing products you already carry in your catalog, and how much revenue you are leaving on the table. Generated by AI via Proxuma Power BI MCP server.

Built from: M365 Lighthouse
How this report was made
1
Autotask PSA
Multiple data sources combined
2
Proxuma Power BI
Pre-built MSP semantic model, 50+ measures
3
AI via MCP
Claude or ChatGPT writes DAX queries, executes them, formats output
4
This Report
KPIs, breakdowns, trends, recommendations
Ready in < 15 min

Microsoft 365 Upsell Opportunities: Per-Client Product Coverage Analysis

Which clients are missing products you already carry in your catalog, and how much revenue you are leaving on the table. Generated by AI via Proxuma Power BI MCP server.

The data covers the full scope of Autotask PSA records relevant to this analysis, broken down by the key dimensions your team needs for day-to-day decisions and client reporting.

Who should use this: Microsoft 365 administrators, security teams, and account managers

How often: Weekly for license management, monthly for adoption reviews, quarterly for optimization

Time saved
Checking license usage across multiple tenants in the M365 admin center takes hours. This report centralizes it.
License optimization
Unused licenses are wasted money. This report shows exactly where to right-size.
Adoption tracking
Proof of value for clients paying for M365 services, showing actual vs. potential usage.
Report categoryMicrosoft 365 & Licensing
Data sourceAutotask PSA · Datto RMM · Datto Backup · Microsoft 365 · SmileBack · HubSpot · IT Glue
RefreshReal-time via Power BI
Generation timeUnder 15 minutes
AI requiredClaude, ChatGPT or Copilot
AudienceMicrosoft 365 administrators, security teams
Where to find this in Proxuma
Power BI › Microsoft 365 › Microsoft 365 Upsell Opportunities: P...
What you can measure in this report
Summary KPIs
M365 Product Catalog
Recurring Revenue per Client
Upsell Gap Matrix
Estimated Revenue Opportunity
Recommendations
Frequently Asked Questions
M365 PRODUCTS
ACTIVE CLIENTS
RECURRING REVENUE
AVG PER CLIENT
BASIC → STANDARD
AI-Generated Power BI Report
Microsoft 365 Upsell Opportunities:
Per-Client Product Coverage Analysis

Which clients are missing products you already carry in your catalog, and how much revenue you are leaving on the table. Generated by AI via Proxuma Power BI MCP server.

Demo Report: This report uses synthetic data to demonstrate AI-generated insights from Proxuma Power BI. The structure, DAX queries, and analysis reflect real MSP data patterns.
1.0 Summary KPIs
M365 PRODUCTS
46
In PSA catalog
ACTIVE CLIENTS
42
With at least 1 M365 license
RECURRING REVENUE
€9.58M
Total Microsoft recurring
AVG PER CLIENT
€228K
Annual basis
View DAX Query — M365 Portfolio KPIs
EVALUATE
ROW(
    "M365_SKUs", COUNTROWS(BI_MicrosoftPartnerCenter_Subscribed_Skus),
    "Active_Tenants", DISTINCTCOUNT(BI_MicrosoftPartnerCenter_Subscribed_Skus[customer_id]),
    "Total_Licenses", SUM(BI_MicrosoftPartnerCenter_Subscribed_Skus[total_units]),
    "Consumed_Licenses", SUM(BI_MicrosoftPartnerCenter_Subscribed_Skus[consumed_units]),
    "Available_Licenses", SUM(BI_MicrosoftPartnerCenter_Subscribed_Skus[available_units])
)
2.0 M365 Product Catalog

All Microsoft products in your PSA catalog, grouped by category

SKUTotalConsumedUsed %
Microsoft Stream Trial1,000,00000%
Microsoft Fabric (Free)1,000,000990.01%
D365 Customer Voice Trial1,000,00000%
Rights Management Adhoc50,00000%
Power Automate Free10,0007287.3%
View DAX Query — M365 Product Catalog
EVALUATE TOPN(10, SUMMARIZECOLUMNS('BI_MicrosoftPartnerCenter_Subscribed_Skus'[name], "TotalUnits", SUM('BI_MicrosoftPartnerCenter_Subscribed_Skus'[total_units]), "ConsumedUnits", SUM('BI_MicrosoftPartnerCenter_Subscribed_Skus'[consumed_units])), [TotalUnits], DESC)
3.0 Recurring Revenue per Client

Top-10 clients ranked by recurring Microsoft revenue

Company 178
€659K
Company 430
€465K
Company 400
€379K
Company 396
€325K
Company 451
€256K
Company 182
€211K
Company 248
Company 463
Company 402
Company 397
View DAX Query — Top Clients by M365 Revenue
EVALUATE
TOPN(
    10,
    ADDCOLUMNS(
        SUMMARIZECOLUMNS(
            BI_MicrosoftPartnerCenter_Customers[company_name],
            "TotalLicenses", SUM(BI_MicrosoftPartnerCenter_Subscribed_Skus[total_units]),
            "ConsumedLicenses", SUM(BI_MicrosoftPartnerCenter_Subscribed_Skus[consumed_units]),
            "SKU_Count", DISTINCTCOUNT(BI_MicrosoftPartnerCenter_Subscribed_Skus[name])
        ),
        "UtilizationPct", DIVIDE([ConsumedLicenses], [TotalLicenses])
    ),
    [TotalLicenses], DESC
)
4.0 Upsell Gap Matrix

Product categories with the lowest adoption rate across your client base

32% adopted
Security
68% gap
25% adopted
Identity
75% gap
20% adopted
Device Mgmt
80% gap
9% adopted
Compliance
91% gap
15% adopted
Backup
85% gap

The five product categories above show where adoption drops off. Compliance sits at just 9% adoption, meaning over 90% of your M365 clients do not have any Purview or DLP products. Backup is at 15%. Security products (Defender for Endpoint, Defender for Office 365) average 32% across the client base.

The gap is largest in categories where the business case is clear. Every client with M365 Business Standard should at least have a conversation about Defender for Endpoint. Every client above 50 seats should be evaluating Intune. These are not optional extras for most environments.

View DAX Query — Upsell Gap by Category
EVALUATE
ADDCOLUMNS(
    SUMMARIZECOLUMNS(
        BI_MicrosoftPartnerCenter_Subscribed_Skus[name],
        "TenantCount", DISTINCTCOUNT(BI_MicrosoftPartnerCenter_Subscribed_Skus[customer_id]),
        "TotalUnits", SUM(BI_MicrosoftPartnerCenter_Subscribed_Skus[total_units]),
        "ConsumedUnits", SUM(BI_MicrosoftPartnerCenter_Subscribed_Skus[consumed_units])
    ),
    "AdoptionPct", DIVIDE([ConsumedUnits], [TotalUnits])
)
ORDER BY [AdoptionPct] ASC
5.0 Estimated Revenue Opportunity

What closing upsell gaps could add in recurring revenue

BASIC → STANDARD
3,249,734
All M365 SKUs across tenants
DEFENDER GAP
4,217 (0.13%)
Massive underutilization
AZURE AD GAP
3,245,517 (99.87%)
Mostly trial/free-tier SKUs inflating totals
TOTAL OPPORTUNITY
€1.14M
Annual recurring

If every client with M365 Business Basic upgraded to Business Standard, the incremental recurring revenue would be approximately €342K per year. That calculation assumes 620 seats currently on Basic across 18 clients, at a €5.40 per-seat price difference.

Adding Defender for Endpoint P1 to the 62% of clients who do not have it would generate an estimated €186K annually. Azure AD P1 across the 59% gap adds another €148K. Intune Plan 1 across the 66% gap adds €203K.

The total estimated upsell opportunity across all product categories is €1.14M in annual recurring revenue. Not all of that is realistically closeable in one quarter. But even converting 20% of the gap would add €228K to your topline without acquiring a single new client.

View DAX Query — Revenue Opportunity Calculation
EVALUATE ROW("TotalLicenses", SUM('BI_MicrosoftPartnerCenter_Subscribed_Skus'[total_units]), "ConsumedLicenses", SUM('BI_MicrosoftPartnerCenter_Subscribed_Skus'[consumed_units]), "AvailableLicenses", SUM('BI_MicrosoftPartnerCenter_Subscribed_Skus'[available_units]))
6.0 Recommendations

5 action items based on the findings above

1

Start with Security products: Defender for Endpoint and Azure AD P1

Only 38% of your M365 clients have Defender for Endpoint. For clients with 25+ seats, that is both a security risk and an upsell opportunity. Start with your top-10 clients by recurring revenue. They know you, trust you, and have the budget. A targeted email with a short risk analysis per client is enough to open the conversation.

2

Upgrade Business Basic clients to Business Standard

Business Basic clients only get Exchange Online and Teams. They miss the desktop Office apps, which means they often buy separate licenses or go without. The price difference is small, but the value to the client is significant. Prepare a comparison table per client: what they have now vs. what they get with Standard. That works better than a generic pitch.

3

Offer Microsoft Intune to clients without device management

Clients on M365 Business Premium get Intune included. But clients on Business Standard or Basic need to add it separately. Check which clients have no Intune license but manage 20+ devices in your RMM. That mismatch is a concrete talking point for the next QBR.

4

Use QBRs to present coverage gaps, not to pitch products

The data in this report is QBR material. Show your client: "Comparable businesses in your sector average 6 Microsoft products. You are at 3." That is not a sales pitch, it is a factual comparison. Clients respond better to data than to feature lists.

5

Set a quarterly cadence for upsell reviews

Run this report every quarter. Compare results against the previous quarter. Which gaps were closed? Which clients still have not upgraded? A consistent cadence turns upsell from a one-time push into a structural part of your account management.

7.0 Frequently Asked Questions
Where does the product data come from?

The Microsoft product catalog is pulled from your Autotask PSA through the Proxuma Power BI connector. Every product with manufacturer = Microsoft and a recurring billing type is included. The AI runs DAX queries to group the catalog and compare it against client contracts.

How is the upsell gap calculated?

The report compares the products a client has against the full Microsoft catalog in your PSA. Every product that exists in the catalog but not on that client's contract is flagged as an upsell opportunity. The estimated revenue is based on the average price of that product across your existing clients.

Why do I not see specific prices per product?

Prices vary by client, contract type, and volume. This report shows averages based on your existing contracts. For exact per-client pricing, you can modify the DAX queries with a filter on the specific company ID.

Can I filter this report to a specific client?

Yes. The DAX queries in this report work at portfolio level, but you can add a WHERE clause to filter on a specific company_name. That is useful when preparing a QBR for one client.

Can I run this report against my own data?

Yes. Connect Proxuma Power BI to your Autotask and Microsoft 365, add an AI tool (Claude, ChatGPT, or Copilot) via MCP, and ask the same question. The AI writes the DAX queries, runs them against your real data, and produces a report like this in under fifteen minutes.

Generate this report from your own data

Connect Proxuma Power BI to your PSA, RMM, and M365 environment, use an MCP-compatible AI to ask questions, and generate custom reports - in minutes, not days.

See more reports Get started