Retention and Archiving not working in Exchange Online.

There are a lot of reasons why your new retention policy might not run for some users, i have listed a bunch of reasons why the mailbox might be on some sort of hold or different retention that might cause the MRM not to run.

Hold will prevent the retention and archive polices to run.

Placing a mailbox on retention hold suspends the processing of an MRM retention policy by the Managed Folder Assistant for that mailbox. Retention hold is designed for situations such as a user being on vacation or away temporarily.

Check for holds on the mailbox.

Example of how it should look:

If the “RetentionHoldEnabled” is true then change it to false to allow archiving for the mailbox as per the Retention Policies configured.

To Check the Retention Policy and Retention Hold Value for all the Mailboxes you can use the command below.

Longest retention will always win.

Check that the correct retention policy has been applied to the mailbox. If you have some retention applied by another policy that exceeds the one you’re trying to apply, the longest will always win.

User can override default polices by applying “Personal Retention Tags” directly to their folders within outlook. This can be extremely frustration to find and troubleshoot.

Below command will check all the mailbox folders for a specific user and look for individual tags added by them.

By default the MRM polices will try to run within 7 days of enabling the policies.

You might be too quick to expect the moving and deleting of files to start happening.

You can force the MRM to run by using the following command. (Might take 24 hours)

Script to check the current status of the archive live within PowerShell ISE

Output example

As seen on the screenshot the archive is slowly increasing in size while the primary is slowly decreasing.

Check oldest item within all folders of the users primary mailbox.

You might be thinking the policy is not working, but in fact it is there are just not any older folders available in the mailbox.

Output example

eDiscovery hold

This will prevent all MRM to run on mailbox because there is a hold on the mailbox.
Check if you see any eDiscovery cases which includes the user in the case, otherwise you can run the script below.

Create a report on holds in eDiscovery cases – Microsoft 365 Compliance | Microsoft Docs

If you have any questions / feedback or would like to correct me on any of the stuff above, please use the comment section or contact me directly using the blue button in the bottom right corner.

Leave a Comment