How to Export Microsoft 365 Copilot Usage Data for Finance
🔍 WiseChecker

How to Export Microsoft 365 Copilot Usage Data for Finance

Finance teams need to track Copilot adoption and usage to manage licensing costs and measure return on investment. Without exportable data, you cannot analyze per-user activity or identify unused licenses. Microsoft provides two official methods to export Copilot usage data: the Microsoft 365 admin center reports and the Microsoft Graph API. This article explains how to use both methods to get the raw data your finance department requires.

Key Takeaways: Exporting Copilot Usage Data

  • Microsoft 365 admin center > Reports > Usage > Copilot for Microsoft 365: Provides a prebuilt table of active users and actions that can be exported as a CSV file.
  • Microsoft Graph API > reports > getCopilotUsageDetail: Lets you programmatically export detailed per-user data for custom finance reports and dashboards.
  • Export filters and date ranges: Both methods allow you to select a date range and filter by user or activity type before downloading.

ADVERTISEMENT

What the Finance Department Needs from Copilot Usage Data

Copilot usage data for finance includes the number of active users, total Copilot actions performed, and the breakdown of actions per Microsoft 365 app. This data helps finance teams calculate cost per active user, identify underutilized licenses, and forecast future licensing needs. The data is available from two sources: the prebuilt admin center report and the raw telemetry accessible via the Graph API. Both sources cover Copilot in Word, Excel, PowerPoint, Outlook, Teams, and Loop. The admin center report is suitable for quick monthly reviews. The Graph API is required for custom integration with finance systems like Power BI or ERP platforms.

Data Fields Available in the Copilot Usage Report

The exported CSV from the admin center includes these fields: Report Refresh Date, User Principal Name, Last Activity Date, Total Copilot Actions, Actions in Word, Actions in Excel, Actions in PowerPoint, Actions in Outlook, Actions in Teams, and Actions in Loop. The Graph API returns the same fields plus the user’s display name and the license SKU. Finance teams can use the Total Copilot Actions field to calculate average actions per user per month.

How to Export Copilot Usage Data from the Admin Center

The admin center method does not require any coding. You select a date range, view the report, and download a CSV file. Follow these steps exactly.

  1. Sign in to the Microsoft 365 admin center
    Go to admin.microsoft.com and sign in with an account that has the Global Admin or Reports Reader role.
  2. Navigate to the Usage reports
    In the left navigation pane, select Reports and then select Usage.
  3. Select the Copilot report
    Scroll down the list of reports and click Copilot for Microsoft 365. The report loads a table showing user activity for the last 7 days by default.
  4. Set the date range
    Click the date range filter at the top of the report. Choose a custom range that matches your finance reporting period, such as the last 30 days or a specific calendar month.
  5. Export the data
    Click the Export button located above the table. The browser downloads a CSV file named CopilotUsageDetail.csv.
  6. Open the CSV file
    Open the downloaded file in Excel or a text editor. The file contains one row per user with all the data fields described earlier.

ADVERTISEMENT

How to Export Copilot Usage Data Using the Microsoft Graph API

The Graph API method is necessary if you need to automate exports, combine data from multiple tenants, or import directly into a finance dashboard. You must have an app registration in Azure AD with the correct permissions. The steps below assume you have basic familiarity with PowerShell and Azure AD app registrations.

Prerequisites for the Graph API Method

Before running the script, prepare these items:

  • An Azure AD app registration with the Reports.Read.All application permission granted and admin consent provided.
  • A client secret or certificate for authentication.
  • PowerShell 7 or later with the Microsoft Graph PowerShell SDK installed. Install it by running Install-Module Microsoft.Graph -Scope CurrentUser.

Run the PowerShell Export Script

  1. Open PowerShell as an administrator
    Press the Windows key, type PowerShell, right-click Windows PowerShell, and select Run as administrator.
  2. Connect to Microsoft Graph
    Run the following command, replacing YOUR_TENANT_ID, YOUR_CLIENT_ID, and YOUR_CLIENT_SECRET with your actual values:

    Connect-MgGraph -TenantId "YOUR_TENANT_ID" -ClientId "YOUR_CLIENT_ID" -ClientSecret (ConvertTo-SecureString "YOUR_CLIENT_SECRET" -AsPlainText -Force) -NoWelcome

  3. Request the Copilot usage data
    Run the following command to get the usage data for the last 30 days:

    $report = Get-MgReportCopilotUsageDetail -Period "D30"

    The D30 parameter requests data for the last 30 days. You can also use D7 or D90.

  4. Export the data to a CSV file
    Run the following command to save the data to a file on your desktop:

    $report | Export-Csv -Path "$env:USERPROFILE\Desktop\CopilotUsageGraph.csv" -NoTypeInformation

  5. Verify the exported file
    Open the file CopilotUsageGraph.csv on your desktop. It contains the same fields as the admin center export plus the display name and license SKU.

Common Problems When Exporting Copilot Usage Data

The Export Button Is Grayed Out or Missing

This happens when the signed-in account lacks the Reports Reader role or the Usage Summary Reports role. Ask your Global Admin to assign the Reports Reader role to your account in the Microsoft 365 admin center under Roles > Role assignments.

The Graph API Returns an Access Denied Error

The app registration must have the Reports.Read.All application permission, not the delegated permission. Delegated permission requires a signed-in user and often fails in automated scripts. Go to your Azure AD app registration, select API permissions, add Reports.Read.All under Application permissions, and click Grant admin consent.

The CSV File Contains Zero Rows

Zero rows indicate that no users were active in the selected date range. Verify that at least one user in your tenant has a Copilot for Microsoft 365 license assigned and has used Copilot within the date range. Also confirm that the date range uses the correct format. For the admin center, use the date picker. For the Graph API, use D7, D30, or D90.

Admin Center Export vs Graph API Export: Key Differences

Item Admin Center Export Graph API Export
Skill level required None PowerShell and Azure AD app registration
Data fields 11 fields including user principal name and per-app actions Same 11 fields plus display name and license SKU
Automation possible No Yes, via scheduled scripts
Date range options Custom date picker D7, D30, D90 only
Best for One-time or monthly manual exports for finance review Recurring exports for Power BI dashboards or ERP integration

You can now export Copilot usage data using either the admin center report or the Graph API. Start with the admin center export for a quick monthly finance review. If you need recurring automated exports, set up the Graph API script and schedule it with Windows Task Scheduler. For advanced analysis, import the CSV into Power BI and use the license SKU field to calculate cost per active user per app.

ADVERTISEMENT