|

Exchange Online Shared Mailbox Sent Items Not Saving in Shared Folder: PowerShell Fix & Outlook Registry Guide (2026)

⚡ 30-Second Fast Triage: Enable Sent Items Copy Immediately

Exchange Online V3

Run in Exchange Online PowerShell:
Set-Mailbox -Identity "shared@domain.com" -MessageCopyForSentAsEnabled $True -MessageCopyForSendOnBehalfEnabled $True

Result: When any delegate sends an email using Send As or Send on Behalf, an exact copy is automatically saved in the shared mailbox’s Sent Items folder AND the delegate’s personal Sent Items.

One of the most persistent, high-frequency helpdesk complaints in enterprise Microsoft 365 environments occurs right after provisioning a shared mailbox:

“Our billing team has 6 delegates. When Sarah replies to a vendor from billing@company.com, nobody else on the team can see her reply in the shared Sent Items folder. It only appears in Sarah’s personal Outlook Sent Items.”

By default, Exchange Online’s architecture routes sent messages to the primary authenticated sender’s personal mailbox. This creates severe compliance blind spots, duplicate responses to clients, and customer service friction.

In this production-tested runbook, we cover the exact PowerShell cmdlets to fix this server-side, a tenant-wide bulk automation script, the legacy Outlook desktop registry override (DelegateSentItemsStyle), and how modern Outlook handles sent item duplication in 2026.


1. The Root Cause: Why Exchange Online Drops Sent Items in Personal Mailboxes

Understanding Exchange Online mail submission explains why this happens:

  • When a delegate sends an email from Outlook or OWA, the message submits through the delegate’s own M365 authentication token.
  • By default, Exchange Online’s Store driver stamps the delegate as the submitting owner.
  • Unless explicitly commanded by mailbox policies, the Information Store deposits the generated item into the sender’s default Sent Items MAPI folder.
Key Difference: Send As vs Send on Behalf

• Send As: The recipient sees only billing@company.com. Controlled by MessageCopyForSentAsEnabled.
• Send on Behalf: The recipient sees Sarah on behalf of billing@company.com. Controlled by MessageCopyForSendOnBehalfEnabled.
Both attributes must be enabled to guarantee full coverage across all delegate workflows.

2. The Server-Side Fix: PowerShell Runbook (Recommended)

Server-side configuration is the gold standard because it applies universally across Outlook Desktop (Windows & Mac), Outlook on the Web (OWA), mobile devices, and third-party email clients without modifying individual workstation registries.

Step 1: Connect to Exchange Online

Connect-ExchangeOnline -UserPrincipalName admin@yourdomain.com -ShowBanner:$false

Step 2: Check Current Mailbox Settings

Get-Mailbox -Identity "billing@company.com" | Select-Object DisplayName, MessageCopyForSentAsEnabled, MessageCopyForSendOnBehalfEnabled

If either property returns False, sent messages will bypass the shared mailbox.

Step 3: Enable Sent Items Copy for Both Permissions

Set-Mailbox -Identity "billing@company.com" `
  -MessageCopyForSentAsEnabled $True `
  -MessageCopyForSendOnBehalfEnabled $True

Step 4: Verify the Configuration

Get-Mailbox -Identity "billing@company.com" | Format-List DisplayName, MessageCopy*

3. Tenant-Wide Automation: Bulk Enable for All Shared Mailboxes

If your organization manages dozens or hundreds of shared mailboxes, running this manually for every new department mailbox is inefficient. Use this production-grade PowerShell script to audit and bulk-remediate all shared mailboxes across your entire Microsoft 365 tenant:

# ==============================================================================
# Script: Bulk-Enable-SharedMailboxSentItems.ps1
# Description: Automatically audits and enables MessageCopyForSentAs & 
#              MessageCopyForSendOnBehalf on all Shared Mailboxes in M365.
# Author: Satya Pathak (SkypeExchange4U.com)
# ==============================================================================

Write-Host "Connecting to Exchange Online REST API..." -ForegroundColor Cyan
Connect-ExchangeOnline -ShowBanner:$false

Write-Host "Gathering all Shared Mailboxes in tenant..." -ForegroundColor Yellow
$SharedMailboxes = Get-EXOMailbox -RecipientTypeDetails SharedMailbox -ResultSize Unlimited -Properties MessageCopyForSentAsEnabled, MessageCopyForSendOnBehalfEnabled

$TotalCount = $SharedMailboxes.Count
Write-Host "Found $TotalCount Shared Mailboxes. Evaluating compliance..." -ForegroundColor Green

$RemediatedCount = 0

foreach ($MBX in $SharedMailboxes) {
    $NeedsUpdate = $false
    
    if (-not $MBX.MessageCopyForSentAsEnabled -or -not $MBX.MessageCopyForSendOnBehalfEnabled) {
        $NeedsUpdate = $true
    }
    
    if ($NeedsUpdate) {
        Write-Host "Remediating: $($MBX.DisplayName) ($($MBX.UserPrincipalName))..." -ForegroundColor Yellow
        try {
            Set-Mailbox -Identity $MBX.UserPrincipalName `
                -MessageCopyForSentAsEnabled $True `
                -MessageCopyForSendOnBehalfEnabled $True `
                -ErrorAction Stop
            
            Write-Host "  [OK] Successfully enabled sent item copy." -ForegroundColor Green
            $RemediatedCount++
        }
        catch {
            Write-Host "  [ERROR] Failed to update $($MBX.DisplayName): $_" -ForegroundColor Red
        }
    } else {
        Write-Host "Compliant: $($MBX.DisplayName) already has both flags enabled." -ForegroundColor DarkGray
    }
}

Write-Host "`nAudit Complete! Remediated $RemediatedCount of $TotalCount Shared Mailboxes." -ForegroundColor Cyan

4. The Client-Side Fallback: Outlook DelegateSentItemsStyle Registry Key

Before Microsoft introduced MessageCopyForSentAsEnabled server-side, administrators relied on an Outlook client registry fix known as DelegateSentItemsStyle.

⚠️ Production Warning: Avoid Registry + Server-Side Double Copies

If you enable MessageCopyForSentAsEnabled $True server-side AND configure DelegateSentItemsStyle = 1 in Outlook desktop, Outlook will create TWO copies of the sent message in the shared Sent Items folder. Always prefer the server-side PowerShell solution and remove the client registry key.

If you are supporting a legacy environment where client-side control is specifically requested by group policy:

Registry Hive Path Value & Type
HKEY_CURRENT_USER Software\Microsoft\Office\16.0\Outlook\Preferences DelegateSentItemsStyle = 1 (DWORD)

PowerShell to Deploy Registry Key via Intune or GPO:

New-ItemProperty -Path "HKCU:\Software\Microsoft\Office\16.0\Outlook\Preferences" `
  -Name "DelegateSentItemsStyle" `
  -Value 1 `
  -PropertyType DWORD `
  -Force

5. Outlook on the Web (OWA) & New Outlook for Windows in 2026

In modern web architectures and the New Outlook for Windows (React/Edge WebView2 based):

  1. OWA Shared Folder Open: If a user accesses the shared mailbox by clicking their user avatar -> “Open another mailbox…”, sent messages automatically land in the shared mailbox Sent Items regardless of settings, because the user is directly authenticated into the shared session.
  2. From-Drop Down in Personal Session: If the user selects the shared email address from the “From” drop-down within their personal inbox, Exchange Online’s server-side MessageCopyForSentAsEnabled attribute governs the behavior.

6. Summary Checklist for Exchange Administrators

  • ✅ Connect to Exchange Online via PowerShell V3 module.
  • ✅ Execute Set-Mailbox -Identity <mailbox> -MessageCopyForSentAsEnabled $True -MessageCopyForSendOnBehalfEnabled $True.
  • ✅ Add this setting to your automated shared mailbox onboarding script.
  • ✅ Verify end users do not have duplicate sent emails caused by conflicting DelegateSentItemsStyle registry settings.

Similar Posts

Leave a Reply

Your email address will not be published. Required fields are marked *