HomeAboutAll Posts

Vanishing Private Channels and the Dangers of Cleaning Team Permissions

By Denis Molodtsov
Published in Teams
November 09, 2025
3 min read
Vanishing Private Channels and the Dangers of Cleaning Team Permissions

Private Channel Can Vanish When Cleaning Team Permissions

Today, my colleague Ignacio and I encountered an issue while cleaning Teams permissions. We noticed that private channels that become ownerless have disappeared from all Microsoft 365 Admin centers and are no longer visible in the Teams client or PowerShell. Any attempt to restore them via the Teams Admin Center or PowerShell fails with an error stating the channel does not exist. After digging deeper, we found out that private channels with no owners or members are automatically deleted by Microsoft 365 within 2-10 minutes. I could not find any official documentation about this behaviour, so I decided to replicate the issue and share the findings with the community.

Steps to Reproduce

  • Create a new Team in Microsoft Teams.
  • Add two Team owners (Owner 1 and Owner 2)
  • Add a private channel to the Team with a single owner (Owner 2).
  • Remove the Owner 2 from the Team.
  • After a few minutes, Microsoft 365 will remove Owner 2 from the private channel. As a result, your channel will become ownerless.

Result: the private channel will disappear from the Teams client and Admin Centers within 2-10 minutes. However, I had cases when it took longer.

How to lose your private channel

If you have a direct link to the channel in the Admin center, you will see the following error when trying to access it:

Private channel is gone!
Private channel is gone!

Why Does This Happen?

Private channels in Microsoft Teams are always assigned at least one owner. There is a built-in mechanism that automatically promotes one of the members to owner if the last owner is removed. However, if there are no members left in the private channel, there is no one to promote it to. In such cases, Microsoft 365 automatically deletes the private channel.

Can you Restore the Vanished Private Channel?

If you are reading this because you are trying to restore a private channel that vanished after removing all its owners and members, I have bad news for you. Once Microsoft deletes the ownerless private channel, you cannot restore it through Teams Admin Center or PowerShell.

I tried several methods to recover the missing private channel, but none worked.

Here is the list of things I tried:

1. Get-TeamChannel Command

The following PowerShell command will not return the vanished private channel:

powershell
1
Get-TeamChannel -GroupId $Team_Id

Getting the channel by name will also fail:

powershell
1
Get-TeamChannel -GroupId $Team_Id -DisplayName "Private Channel Name"

2. Attempt to Add the Channel with the Same Name

You won’t be able to create a new private channel with the same name:

powershell
1
New-TeamChannel -GroupId $team.GroupId -DisplayName $channelName -Description "Private Channel Name" -MembershipType Private -Owner $TeamOwner

This will return the following error:

New-TeamChannel : Error occurred while executing Code: BadRequest Message: Channel name already existed, please use other name.

3. Attempt to Add the Owner Back to the Channel

Since I get an error indicating that the channel already exists, I attempted to add the previous owner back to the channel. I got the channel ID, so I tried to add the owner back using Graph API:

powershell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
$groupId ='50da9d48-34e2-479e-9114-029561feb20c'
$channelId = '19:3e96b87510fb4469b136b32033d60f2b@thread.tacv2'
# Get the user ID
$user = Get-MgUser -UserId 'owner2@cleverpoint.ca'
# Add member to the channel as owner
Invoke-MgGraphRequest -Method POST -Uri "https://graph.microsoft.com/v1.0/teams/$groupId/channels/$channelId/members" -Body @{
"@odata.type" = "#microsoft.graph.aadUserConversationMember"
roles = @("owner")
"user@odata.bind" = "https://graph.microsoft.com/v1.0/users('$($user.Id)')"
} -ContentType "application/json"

This will also fail with error indicating that the channel does not exist (404 Not Found):

Invoke-MgGraphRequest : POST https://graph.microsoft.com/v1.0/teams/> 50da9d48-34e2-479e-9114-029561feb20c/channe ls/19:3e96b87510fb4469b136b32033d60f2b@thread.tacv2/members HTTP/1.1 404 Not Found

4. Check SharePoint Site Recycle Bin

Private channels have their own SharePoint site. So, if the site gets deleted, it should go to the recycle bin in the SharePoint Admin Center, right? Unfortunately, no. You won’t find it in the SharePoint Admin Center or in the recycle bin.

5. Get the Channel Site Using PowerShell

I attempted to get the SharePoint site associated with the vanished private channel using PowerShell:

powershell
1
2
Connect-SPOService -Url "https://yourtenant-admin.sharepoint.com"
Get-SPOSite -Identity "https://yourtenant.sharepoint.com/sites/TeamName-PrivateChannelName"

I also tried to get all sites:

powershell
1
Get-SPOSite -Limit All

I was unable to locate the site associated with the vanished private channel: it was removed entirely from SharePoint as well.

Conclusion

Private channels in Microsoft Teams that lose all their owners and members are automatically deleted by Microsoft 365 within a short period. Once deleted, you cannot restore these channels using any standard methods, including the Teams Admin Center, PowerShell, or the Graph API. Additionally, the associated SharePoint sites are also permanently removed without going to the recycle bin.

It might be possible to recover the data through Microsoft Support, but there is no guarantee. Let me know if you have any success with that.

If you ever find yourself in a situation where you need to clean up Team permissions, be cautious about removing any team owners. If the team owner you remove is the last member and owner of any private channels, Microsoft will permanently delete those channels. This mistake is easy to make, especially when you don’t check each Channel’s membership. Before removing any owners from the Team, make sure there are no channels where they are the last owner or member.


Tags

TeamsMicrosoft 365Experiment

Share

Previous Article
How to paste test to a restricted VDI that blocks clipboard
Denis Molodtsov

Denis Molodtsov

Microsoft 365 Architect

Related Posts

Measuring ShareGate Performance when Copying MS Teams
Measuring ShareGate Performance when Copying MS Teams
February 09, 2025
2 min

Quick Links

AboutAll Posts

Social Media