If your organization’s eDiscovery searches in Microsoft Teams suddenly return no chat messages, a recent compliance policy change is likely the cause. The search may miss 1:1 chats, group chats, or meeting chats even though users can still see those messages. This article explains why that happens and provides step-by-step fixes to restore complete eDiscovery coverage. You’ll also learn how to verify the policy settings and avoid common pitfalls.
Key Takeaways: Restoring eDiscovery Coverage for Teams Chats
- Compliance portal > Data lifecycle management > Retention policies: Ensure the Teams channel messages and Teams chats policies are assigned to the correct mailboxes.
- Exchange admin center > Recipients > Mailboxes: Confirm that each user’s mailbox is in the same region as the Teams data, because eDiscovery uses the mailbox location.
- PowerShell command Get-RetentionCompliancePolicy: Use this to verify the policy scope and that the Teams workload is enabled.
Why eDiscovery Search Misses Teams Chat Messages After a Policy Change
Microsoft Teams chat messages are stored in two places: the user’s Exchange Online mailbox and a hidden folder that eDiscovery searches. When you change a compliance policy, such as a retention policy or a litigation hold, the search index can become out of sync. The most common reason is that the policy change removes the hidden folder from the search scope, or the policy applies only to mailboxes that do not have the correct Teams data.
The Role of Retention Policies
Retention policies in the Microsoft Purview compliance portal control how long Teams messages are kept. If you delete or modify a retention policy that previously covered Teams chats, the messages may still exist but are no longer indexed for eDiscovery. The policy must include the Teams channel messages and Teams chats workloads, and it must be applied to the mailboxes that hold the chat data.
Mailbox Location and Regional Issues
Teams chat data is stored in the user’s Exchange Online mailbox. If the mailbox is moved to a different region after a policy change, the eDiscovery search may not find the messages. This can happen when an organization changes its data residency settings or when a user’s mailbox is moved to a different geographic location. The search tool looks for the data in the mailbox’s current region, so any mismatch causes missed results.
Steps to Verify and Fix eDiscovery Coverage for Teams Chats
Follow these steps in order. Start with the compliance portal, then check the mailbox settings, and finally use PowerShell to confirm the policy scope.
- Open the Microsoft Purview compliance portal
Go to compliance.microsoft.com and sign in with an account that has the Compliance Administrator role. In the left navigation, select Data lifecycle management and then Retention policies. - Review the retention policy that covers Teams
Find the policy that applies to Teams messages. Click the policy name to open its details. Under Locations, confirm that both Teams channel messages and Teams chats are listed. If they are not, edit the policy and add them. - Check the policy scope
In the same policy details page, look at the Applied to section. It should say All users or list the specific users whose chats are missing. If the policy is scoped to a distribution group, verify that the affected users are members of that group. - Verify the mailbox location
Open the Exchange admin center at admin.exchange.microsoft.com. Go to Recipients and then Mailboxes. Search for a user whose chats are missing. Click the mailbox and check the Mailbox location field. This must match the region where Teams data is stored, usually the same as the user’s primary mailbox region. - Use PowerShell to confirm the policy settings
Connect to Exchange Online PowerShell using the Connect-ExchangeOnline cmdlet. Run Get-RetentionCompliancePolicy | Format-List Name,Enabled,Workload. Look for the policy that covers Teams. The Workload field must include Exchange and Teams. If Teams is missing, run Set-RetentionCompliancePolicy -Identity “PolicyName” -AddWorkload Teams. - Rebuild the search index for affected mailboxes
If the policy settings are correct but the search still misses messages, you may need to restart the mailbox search index. Connect to Exchange Online PowerShell and run Start-ManagedFolderAssistant -Identity “user@domain.com”. This forces the assistant to re-index the hidden folder that stores Teams chats. - Run a test eDiscovery search
Go back to the compliance portal and select eDiscovery and then Standard. Create a new search and use a keyword that appears in a known chat message. Include the user’s mailbox in the content locations. Run the search and check if the message appears. If it does, the fix worked.
If Teams Still Has Issues After the Main Fix
eDiscovery Search Returns No Results for One Specific User
If only one user’s chats are missing, the mailbox may not have the Teams license or the user may be excluded from the retention policy. Check the user’s license in the Microsoft 365 admin center. Teams must be enabled for that user. Also, confirm that the user is not excluded from the retention policy scope.
Chat Messages Are Missing Only from Meetings
Meeting chats are stored separately from regular chats. If the retention policy does not include Teams chats for meeting participants, the messages are not indexed. Edit the policy and ensure that the Teams chats location includes all users who attend meetings.
eDiscovery Search Shows Older Messages but Not Recent Ones
This usually means the retention policy has a start date that is after the messages were sent. Check the policy’s retention period. If it is set to start from a specific date, messages older than that date are not retained. Adjust the policy to start from the beginning of the retention period.
Retention Policy Settings for Teams Chats: Before and After a Change
| Item | Before Policy Change | After Policy Change |
|---|---|---|
| Retention policy locations | Includes Teams channel messages and Teams chats | May only include Teams channel messages |
| Workload in PowerShell | Exchange and Teams | Only Exchange |
| Mailbox region | Matches Teams data region | Mailbox moved to a different region |
| Search index | Fully indexed | Index not rebuilt after policy change |
After you fix the policy, verify that the eDiscovery search returns the expected messages. Use the Get-RetentionCompliancePolicy cmdlet regularly to monitor the policy scope. Also, check the eDiscovery search results page for any warnings about unindexed items. If you still see missing messages, consider creating a new eDiscovery case and re-running the search.
Now you can restore full eDiscovery coverage for Teams chats after a compliance policy change. Start by verifying the retention policy locations and the mailbox region. Then use PowerShell to confirm the workload and rebuild the index if needed. As a next step, test the search with a known message to confirm the fix. For advanced management, set up a scheduled PowerShell script that checks the policy scope weekly.