🔧 New: User Management Graph PowerShell Toolkit

Simplify user tasks like bulk creation, updates, password resets, deletions, license checks & more — all from one place.

🚀 Launch Toolkit

Tracking Microsoft Teams Without Owners

Managing Microsoft Teams efficiently is essential for collaboration and security in any organization. While Teams are meant to have one or more owners responsible for governance, sometimes a Team may end up without an owner — and that can be problematic. In this post, we’ll explore what Teams without owners are, whether they can exist, and the best ways to track them.


What Are Microsoft Teams Without Owners?

Every Microsoft Team is built on top of a Microsoft 365 Group. Each Team requires at least one owner, who is responsible for managing members, channels, settings, and policies. Owners are also accountable for lifecycle activities such as adding new members or archiving the Team when it’s no longer in use.

A Team without an owner is essentially a Teams-enabled Microsoft 365 Group that has lost all its owners, leaving it without proper governance. This is risky because:

  • Membership cannot be managed efficiently.
  • Settings cannot be changed.
  • The Team may linger without oversight, potentially becoming a security or compliance concern.

Do Microsoft Teams Without Owners Exist?

Yes — although administrators cannot deliberately create Teams without owners using either the Microsoft 365 Admin Center or the Microsoft Teams Admin Center, such Teams can still come into existence unintentionally.

This usually happens when:

  • Admins delete a user account that was the sole owner of a Team.
  • A Team owner’s account is disabled due to offboarding, suspension, or compliance issues.

When that occurs, the Team remains active, but with zero owners — effectively unmanaged.


How to Track Microsoft Teams Without Owners?

There are three main ways to identify ownerless Teams. Two are manual and inefficient, while the third — using Graph PowerShell — is the most reliable.

  • Using Microsoft Teams Admin Center (Tedious)
  • The Teams Admin Center lets you view all Teams and their owners. However, checking each Team one by one to verify ownership is time-consuming and inefficient, especially in large organizations with hundreds or thousands of Teams.

  • Using Microsoft 365 Admin Center (Tedious & Inefficient)
  • The Microsoft 365 Admin Center provides visibility into Microsoft 365 Groups and their owners. Since Teams are built on these groups, you can cross-reference which groups have Teams enabled and then manually verify owners.

    Again, this approach is not scalable for enterprises with large numbers of Teams.

  • Using Graph PowerShell (Most Efficient)
  • Microsoft Graph PowerShell offers a programmatic and scalable way to identify Teams without owners. With a simple script, you can list every Teams-enabled group and verify whether it has any owners.


The Script

# Connect to Microsoft Graph with required scopes
Connect-MgGraph -Scopes "Group.Read.All", "User.Read.All", "Directory.Read.All"
                                            
# Get all groups that are Teams-enabled
$teamsGroups = Get-MgGroup -Filter "resourceProvisioningOptions/Any(x:x eq 'Team')" -All
                                                                            
foreach ($group in $teamsGroups) {
    # Get owners of the group
    $owners = Get-MgGroupOwner -GroupId $group.Id
                                                                            
    if ($owners.Count -eq 0) {
    Write-Output "Team '$($group.DisplayName)' (ID: $($group.Id)) has no owners."
    }
}
                                        

How the Script Works

  1. Connect-MgGraph — Establishes a session with Microsoft Graph using the necessary permissions to read groups, users, and directory objects.
  2. Get-MgGroup — Filters all Microsoft 365 Groups to return only those with resourceProvisioningOptions set to Team (meaning they’re Teams-enabled).
  3. Loop through groups — Iterates over every Teams-enabled group.
  4. Get-MgGroupOwner — Retrieves the owners for each group.
  5. Check owner count — If no owners exist ($owners.Count -eq 0), the script outputs the Team name and Id for further action.

How It Can Be Enhanced Further

  • Export results: Pipe the output to Export-Csv for reporting.
  • Email alerts: Integrate with Exchange Online PowerShell to send notifications when ownerless Teams are found.
  • Auto-remediation: Extend the script to assign a fallback owner (e.g., a security group of admins) to Teams without owners.
  • Scheduled runs: Set the script to run periodically via Task Scheduler or Azure Automation to maintain ongoing visibility.

Conclusion

While Microsoft Teams without owners shouldn’t exist in theory, they can arise unintentionally when admins delete or disable accounts of owners. These Teams pose governance and security challenges.

The most efficient way to track such Teams is with Graph PowerShell, which allows administrators to identify and remediate ownerless Teams programmatically and at scale. By combining reporting with automation, you can ensure every Team in your organization always has an accountable owner.


Did You Know? Managing Microsoft 365 applications is even easier with automation. Try our Graph PowerShell scripts to automate tasks like generating reports, cleaning up inactive Teams, or assigning licenses efficiently.

Ready to get the most out of Microsoft 365 tools? Explore our free Microsoft 365 administration tools to simplify your administrative tasks and boost productivity.

© Your Site Name. All Rights Reserved. Design by HTML Codex