How can I move Mails into the in-place archive and then have them deleted automatically

Thelen, Ralph 0 Reputation points
2025-10-22T11:10:02.8133333+00:00

Hello,

I've been trying to figure this out but I am at my wits end. So here is the scenario:

We have a couple (2 maybe 3 dozen) of mailboxes (shared) that receive a lot of messages. So many that the 50GB default do not provide enough storage in the amount time for which we need to keep these mails.

The natural solution for this is the in-place archive. So we figured out how fast these mailboxes are running full and then had retention policies which moved the mails to the archive after 6,12 or 18 months. On-prem this pretty much solved all our problems, with Exchange Online the first issue was the 50 GB limit on the mailbox itself, so we had to reduce the time before archiving and now only use 6, 9 and 12 months. In a few cases we even had to assign licences to increase the storage to 100GB before archiving after 6 months.
But now even the archives are running full and I need a solution to automatically delete mails within the archives.

As we can only have 1 retention policy per mailbox, I can not set the one to delete directly, I have to archive first. But i can't set a retention label within the archive (or anywhere except subfolders of the mailbox). I asked contractors and consultants but none of them have an answer.

With Exchange on prem I could at least have used powershell to delete the messages via scripts. But even that doesn't work any more.

I can't believe we are the only ones with this issue and there has to be a solution for this..... right?

best regards

Exchange Online
Exchange Online
A cloud-based service included in Microsoft 365, delivering scalable messaging and collaboration features with simplified management and automatic updates.
0 comments No comments
{count} votes

3 answers

Sort by: Most helpful
  1. TiNo-T 7,220 Reputation points Microsoft External Staff Moderator
    2025-10-22T12:46:46.75+00:00

    Dear @Thelen, Ralph,

    Welcome to Microsoft Q&A Forum! 

    Thank you again for sharing the details of your mailbox storage challenges. Based on your scenario, I’d like to recommend a practical solution that combines retention policies with optional archive expansion, you can consider trying them to see if they can help: 

    Here is recommended method: using archive and deletion via MRM Retention Tags: 

    You can configure a single retention policy that includes: 

    • A tag to move items to the archive after a set period (e.g., 1 year). 
    • A tag to permanently delete items after a longer period (e.g., 2 years). 

    This ensures that emails are archived first, then automatically deleted after their retention period expires. This method works well with shared mailboxes and avoids the limitations of retention labels. 

    Please take a look in this link for more details: Customize an archive and deletion policy (MRM) for mailboxes | Microsoft Learn 

    Additionally, this is optional method that you can use together with the method above: Enable Auto-Expanding Archive. 

    You may consider enabling auto-expanding archives, which gradually increase archive capacity up to 1.5 TB. However, please note: 

    • The expansion is not immediate. 
    • The mailbox must consume its current archive quota before additional space is provisioned. 
    • Expansion occurs in 10 GB increments, so the mailbox grows gradually as needed. 

    User's image User's image

    You can consult in this link for more details: Enable auto-expanding archiving | Microsoft Learn 

    I hope this information can help you in this case. Wish you a pleasant day! 


     If the answer is helpful, please click "Accept Answer" and kindly upvote it. If you have extra questions about this answer, please click "Comment". 

    Note: Please follow the steps in our documentation to enable e-mail notifications if you want to receive the related email notification for this thread. 

    1 person found this answer helpful.
    0 comments No comments

  2. Nicolas Bourdeau - Wintive 0 Reputation points
    2025-10-22T11:27:07.4966667+00:00

    Hello @Thelen, Ralph,

    I completely understand your frustration — you’re definitely not alone in running into this limitation with Exchange Online.

    You’re right: the classic “archive-then-delete” lifecycle that worked perfectly on-premises doesn’t translate cleanly to the cloud. Since Microsoft 365 only allows one retention policy per mailbox and the archive itself doesn’t accept a separate retention tag, managing long-term cleanup can be tricky.

    That said, there are a few supported workarounds:

    1. Use Microsoft Purview retention labels (auto-apply policies) You can create a retention label that targets archived content by age and automatically deletes items after a set period. This works across both primary and archive mailboxes and doesn’t require user intervention. It does require an E5 or equivalent add-on license.

    Enable Auto-Expanding Archive If your main concern is space rather than retention, enabling auto-expanding archive ensures the archive never runs out of space (it now scales up to 1.5 TB+ per mailbox). This option alone solves the majority of storage-related issues.

    If deletion is mandatory: You can still perform periodic cleanup using the Compliance Center PowerShell module with New-ComplianceSearch and New-ComplianceSearchAction. Example:

    New-ComplianceSearch -Name "ArchiveCleanup" -ExchangeLocation "******@domain.com" -ContentMatchQuery 'Received<2022-01-01'
    New-ComplianceSearchAction -SearchName "ArchiveCleanup" -Purge -PurgeType HardDelete
    

    This allows you to purge older messages directly from archives in a compliant and auditable way.

    Summary:

    If you just need more room → enable auto-expanding archive.

    If you need automated cleanup → use Purview retention or Compliance Search purges.

    Unfortunately, Exchange Online still doesn’t support a combined “move to archive then delete after X years” MRM policy natively, but the above methods achieve the same lifecycle control.

    Hope this clarifies the available paths — let me know if you’d like an example script for scheduled clean-ups.

    Best regards, Nicolas Bourdeau CEO & Microsoft 365 Architect Wintive LLC | Microsoft Partner ✉ **@wintive.com | 🌍 United States & FranceHello,

    I completely understand your frustration — you’re definitely not alone in running into this limitation with Exchange Online.

    You’re right: the classic “archive-then-delete” lifecycle that worked perfectly on-premises doesn’t translate cleanly to the cloud. Since Microsoft 365 only allows one retention policy per mailbox and the archive itself doesn’t accept a separate retention tag, managing long-term cleanup can be tricky.

    That said, there are a few supported workarounds:

    Use Microsoft Purview retention labels (auto-apply policies)
    You can create a retention label that targets archived content by age and automatically deletes items after a set period. This works across both primary and archive mailboxes and doesn’t require user intervention. It does require an E5 or equivalent add-on license.

    Enable Auto-Expanding Archive
    If your main concern is space rather than retention, enabling auto-expanding archive ensures the archive never runs out of space (it now scales up to 1.5 TB+ per mailbox). This option alone solves the majority of storage-related issues.

    If deletion is mandatory:
    You can still perform periodic cleanup using the Compliance Center PowerShell module with New-ComplianceSearch and New-ComplianceSearchAction.
    Example:

    New-ComplianceSearch -Name "ArchiveCleanup" -ExchangeLocation "******@domain.com" -ContentMatchQuery 'Received<2022-01-01'
    New-ComplianceSearchAction -SearchName "ArchiveCleanup" -Purge -PurgeType HardDelete
    

    This allows you to purge older messages directly from archives in a compliant and auditable way.

    Summary:

    If you just need more room → enable auto-expanding archive.

    If you need automated cleanup → use Purview retention or Compliance Search purges.

    Unfortunately, Exchange Online still doesn’t support a combined “move to archive then delete after X years” MRM policy natively, but the above methods achieve the same lifecycle control.

    Hope this clarifies the available paths — let me know if you’d like an example script for scheduled clean-ups.

    Best regards,
    Nicolas Bourdeau
    CEO & Microsoft 365 Architect
    Wintive LLC | Microsoft Partner
    www.wintive.com

    0 comments No comments

  3. Vasil Michev 122.7K Reputation points MVP Volunteer Moderator
    2025-10-22T11:33:40.6766667+00:00

    Retention policies can contain (default) tags for both "archive" and "delete" actions. In your scenario, you can use say a "1 year archive" tag along with "2 years delete" one. Any item that falls under the scope of the tag will first be moved to the archive after reaching 1 year of age, be kept in the archive mailbox for 1 more year and deleted afterwards.

    I'd recommend using default tags for this, as this way the setup process is easier. If for some reason you need more granular controls, you will have to use personal tags, as the folder-level ones cannot be used for archiving. In turn, this means that you will have to programmatically assign the personal tags via EWS to any items/folders in question. With the incoming deprecation of EWS and the Graph API still lagging in this area, you might run into some issues in the future... so best stick to using default tags where possible.

    0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.