If you run the ownerless team report in the Teams admin center and the results look incomplete for a multi-geo tenant, you are not alone. The report often misses teams that live in satellite data locations. This happens because the report only queries the primary geography by default. This article explains why the report is incomplete and shows you how to get the full list using PowerShell.
Key Takeaways: Fixing the Ownerless Team Report in Multi-Geo Tenants
- Teams admin center > Teams > Manage teams > Ownerless: Shows only teams from the primary data location, so satellite geos are missing.
- Get-Team -GroupId: Use this PowerShell cmdlet to check the actual owner of a specific team.
- Get-UnifiedGroup with the Owner filter: Use this Exchange Online cmdlet to list all groups without an owner across all geos.
Why the Ownerless Team Report Is Incomplete in a Multi-Geo Tenant
A multi-geo tenant has a primary data location and one or more satellite locations. Each location can host Microsoft 365 groups and their connected Teams. The ownerless team report in the Teams admin center only queries the primary geography. Teams hosted in satellite locations are not included, so the report looks incomplete even though every team is actually present.
The root cause is the way the report is built. It uses the Teams service which reads group data from the primary location only. The report does not aggregate data from all geos automatically. This is a known limitation of the admin center report, not a sign that teams are missing or broken.
To get a complete list, you must use PowerShell. The Exchange Online cmdlet Get-UnifiedGroup can query all geos when you connect to the correct endpoint. The Teams cmdlet Get-Team can confirm the owner of a specific team. Together, these commands give you the full picture.
Steps to Get the Complete Ownerless Team List in a Multi-Geo Tenant
Follow these steps to identify every ownerless team in your tenant, including those in satellite geos.
Step 1: Connect to Exchange Online PowerShell
- Open Windows PowerShell as an administrator
Right-click the Start button and select Windows Terminal (Admin) or PowerShell (Admin). - Install the Exchange Online Management module if needed
Run Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser -Force. Press Y to confirm the NuGet provider if prompted. - Connect to Exchange Online
Run Connect-ExchangeOnline. Sign in with a global admin or Exchange admin account when prompted.
Step 2: Retrieve All Groups Without an Owner
- Run the ownerless group query
Run Get-UnifiedGroup | Where-Object { $_.ManagedBy.Count -eq 0 } | Select-Object DisplayName, PrimarySmtpAddress, ManagedBy. This command checks every group in every geo because Exchange Online spans all locations. - Export the results to a CSV file
Run the same command with Export-Csv -Path C:\OwnerlessGroups.csv -NoTypeInformation. This gives you a permanent record you can share with your team.
Step 3: Confirm Which Groups Have a Connected Team
- Install the Teams PowerShell module
Run Install-Module -Name MicrosoftTeams -Scope CurrentUser -Force. - Connect to Teams
Run Connect-MicrosoftTeams. Sign in with the same admin account. - Check a specific group for a team
Run Get-Team -GroupId. If the cmdlet returns a team, that group has a connected Team. If it returns nothing, the group has no Team.
Step 4: Cross-Reference the Results
- Open the CSV file
Use Excel or any text editor to view the ownerless groups list. - Match each group to its Team
For each group ID in the CSV, run the Get-Team command. Only groups that return a team are true ownerless Teams. - Compare with the admin center report
You will see that the admin center report missed the satellite geo teams. Your PowerShell list is now complete.
If the PowerShell Report Still Misses Teams
Sometimes the PowerShell approach still shows missing teams. Here are the common reasons and how to handle them.
Teams That Are Not Connected to a Microsoft 365 Group
Every Team must have a Microsoft 365 group, but some groups are hidden from the default Get-UnifiedGroup output. Run Get-UnifiedGroup -IncludeSystemObjects to include hidden groups. Then filter for ManagedBy count equal to zero.
Teams Created with a Guest Owner
If a guest user is the owner, the ManagedBy property may not show the guest in the default output. Add the -Properties ManagedBy parameter to your command. Run Get-UnifiedGroup -Properties ManagedBy | Where-Object { $_.ManagedBy.Count -eq 0 }.
Teams in a Different Geo That You Cannot See
Your admin account must have permission to view data in all geos. If you are not a global admin, you may only see the primary geo. Ask your global admin to run the command or grant you the necessary role.
Teams Admin Center Ownerless Report vs PowerShell Ownerless Query
| Item | Teams Admin Center Report | PowerShell Get-UnifiedGroup Query |
|---|---|---|
| Geo coverage | Primary data location only | All geos in the tenant |
| Includes hidden groups | No | Yes with -IncludeSystemObjects |
| Shows guest owners | No | Yes with -Properties ManagedBy |
| Export to CSV | Yes, but incomplete | Yes, complete |
| Requires PowerShell | No | Yes |
Now you can generate a complete ownerless team list for your multi-geo tenant. Use the Get-UnifiedGroup command with the ManagedBy filter and the Get-Team command to confirm each group has a Team. Export the result to CSV for a permanent record. For ongoing monitoring, schedule the PowerShell script to run weekly using Task Scheduler. This ensures you never miss an ownerless team in any geo.