Medha Cloud
Medha Cloud Exchange Server Team
Exchange Database Recovery Team8 min read

Event ID 26 indicates Outlook clients are disconnecting from Exchange Server due to RPC communication failures. This guide helps you identify the cause of disconnections and implement fixes for stable Outlook connectivity.

Our Outlook Connectivity Support team resolves disconnection issues with comprehensive network and server analysis.

Error Overview: Outlook RPC Disconnections

Event ID 26 is logged when the RPC Client Access service detects that an Outlook client session has timed out or disconnected unexpectedly. This can affect a single user or many users depending on the cause.

Typical Event Log Entry
Log Name:      Application
Source:        MSExchange RPC Client Access
Event ID:      26
Level:         Warning
Description:   The session with the user "DOMAIN\username" has been
               terminated because the connection timed out while waiting
               for a response from the server.
               Elapsed time: 120000 ms

Symptoms & Business Impact

What Users Experience:

  • Outlook shows "Disconnected" or "Trying to connect" in status bar
  • Sending/receiving email intermittently fails
  • Calendar operations timeout
  • Frequent credential prompts
  • "Cannot open your default email folders" errors

What Admins See:

  • Event ID 26 entries in Application log
  • Patterns of disconnections by user or time
  • RPC latency spikes in performance counters
Check Recent Disconnections
# Get Event ID 26 entries from last 24 hours24 hours
Get-WinEvent -FilterHashtable @{
    LogName = 'Application'
    ProviderName = 'MSExchange RPC Client Access'
    Id = 26
    StartTime = (Get-Date).AddHours(-24)
} -MaxEvents 50 | Select-Object TimeCreated, Message | Format-Table -Wrap

# Count disconnections by user
Get-WinEvent -FilterHashtable @{
    LogName = 'Application'
    ProviderName = 'MSExchange RPC Client Access'
    Id = 26
    StartTime = (Get-Date).AddHours(-24)
} | ForEach-Object {
    if ($_.Message -match 'user "([^"]+)"') { $matches[1] }
} | Group-Object | Sort-Object Count -Descending | Select-Object -First 10

Common Causes

1. Network Latency/Instability (40%)

High latency, packet loss, or intermittent connectivity between client and Exchange server causes RPC timeouts.

2. Server Resource Constraints (25%)

Exchange server under heavy load, high CPU, memory pressure, or disk I/O issues cause slow RPC responses.

3. Firewall/Proxy Issues (15%)

Firewalls or proxies terminating idle connections, blocking ports, or interfering with RPC/HTTP traffic.

4. Outlook Add-ins (10%)

Slow or misbehaving Outlook add-ins delay message processing, triggering RPC timeouts.

5. Large Mailboxes/Slow Operations (10%)

Operations on very large mailboxes or folders exceed timeout thresholds.

Quick Diagnosis

Step 1: Check Server Health
# Check Exchange server resource usage
Get-Counter -Counter "\Processor(_Total)\% Processor Time", "\Memory\Available MBytes", "\PhysicalDisk(_Total)\Avg. Disk sec/Read" -SampleInterval 1 -MaxSamples 5 | ForEach-Object {
    $_.CounterSamples | Select-Object Path, CookedValue
}

# Check RPC Client Access service
Get-Service MSExchangeRPC | Select-Object Name, Status

# Check RPC performance
Get-Counter -Counter "\MSExchange RpcClientAccess\RPC Averaged Latency" -SampleInterval 1 -MaxSamples 5
Step 2: Check Network Connectivity
# Test basic connectivity to Exchange
$exchangeServer = $env:COMPUTERNAME
Test-NetConnection -ComputerName $exchangeServer -Port 443

# Check for network issues from client perspective
# Run from affected client:
# Test-NetConnection -ComputerName mail.domain.com -Port 443 -InformationLevel Detailed-ComputerName mail.domain.com -Port 443 -InformationLevel Detailed
Step 3: Check MAPI/HTTP Status
# Check if MAPI over HTTP is enabled
Get-MapiVirtualDirectory | Select-Object Server, IISAuthenticationMethods, InternalUrl, ExternalUrl

# Check organization config
Get-OrganizationConfig | Select-Object MapiHttpEnabled

# If not enabled, consider enabling for better stability
# Set-OrganizationConfig -MapiHttpEnabled $true-MapiHttpEnabled $true

Quick Fix

Increase RPC Timeout (Immediate Relief)
# Check current RPC settings
Get-RpcClientAccess | Select-Object Server, MaximumConnections, *Timeout*

# Increase timeout for high-latency scenarios
# This provides immediate relief while investigating root cause
# Default is 00:02:00 (120 seconds), increase to 5 minutes02:00 (120 seconds), increase to 5 minutes

Set-RpcClientAccess -Server $env:COMPUTERNAME -BlockedClientPercentageThreshold 10

# For persistent issues, consider Throttling Policy adjustments
# Get-ThrottlingPolicy | Select-Object Name, RCA*-Object Name, RCA*
Enable MAPI over HTTP (Recommended)
# Enable MAPI/HTTP for better resilience
Set-OrganizationConfig -MapiHttpEnabled $true

# Verify MAPI virtual directory
Get-MapiVirtualDirectory | Select-Object Server, InternalUrl, ExternalUrl

# If URLs not set, configure them
Set-MapiVirtualDirectory -Identity "$env:COMPUTERNAME\mapi (Default Web Site)" -InternalUrl "https://mail.domain.com/mapi" -ExternalUrl "https://mail.domain.com/mapi" -IISAuthenticationMethods Ntlm,OAuth,Negotiate

Detailed Solutions

Solution 1: Fix Network Issues

Network Diagnostics
# Check for packet loss and latency
# Run extended ping test
Test-Connection -ComputerName mail.domain.com -Count 100 | Measure-Object -Property ResponseTime -Average -Maximum -Minimum

# Check DNS resolution
Resolve-DnsName mail.domain.com
Resolve-DnsName autodiscover.domain.com

# Check for proxy interference
netsh winhttp show proxy

# For users on VPN, ensure split tunneling allows Exchange traffic
# Or route Exchange traffic directly

Solution 2: Optimize Server Performance

Server-Side Optimizations
# Check database status and health
Get-MailboxDatabase -Status | Select-Object Name, Mounted, DatabaseSize, AvailableNewMailboxSpace

# Check for database issues
Get-MailboxDatabaseCopyStatus | Select-Object Name, Status, CopyQueueLength, ReplayQueueLength

# Monitor RPC performance
Get-Counter -Counter "\MSExchange RpcClientAccess\RPC Requests", "\MSExchange RpcClientAccess\Active User Count", "\MSExchange RpcClientAccess\User Count" -SampleInterval 5 -MaxSamples 10 | ForEach-Object {
    $_.CounterSamples | Select-Object Path, CookedValue
}

Solution 3: Client-Side Fixes

Outlook Client Optimizations
# On affected client workstations:

# 1. Create new Outlook profile
# Control Panel > Mail > Show Profiles > Add

# 2. Disable add-ins (start Outlook in safe mode)-ins (start Outlook in safe mode)
# Run: outlook.exe /safe

# 3. Check Outlook connection status
# Ctrl+Right-click Outlook tray icon > Connection Status

# 4. Force MAPI/HTTP
# Registry: HKEY_CURRENT_USER\Software\Microsoft\Exchange
# DWORD: MapiHttpDisabled = 0

# 5. Reduce cached mode timeframe
# File > Account Settings > Account Settings > Change > 3 months instead of All

Verify the Fix

Monitor for Improvement
# Check for Event ID 26 after fixes
$hoursSince = 2  # Check last 2 hours
$events = Get-WinEvent -FilterHashtable @{
    LogName = 'Application'
    ProviderName = 'MSExchange RPC Client Access'
    Id = 26
    StartTime = (Get-Date).AddHours(-$hoursSince)
} -ErrorAction SilentlyContinue

if ($events) {
    Write-Host "Found $($events.Count) disconnection events in last $hoursSince hours"$hoursSince hours" -ForegroundColor Yellow
} else {
    Write-Host "No disconnection events in last $hoursSince hours" -ForegroundColor Green
}

# Check RPC latency
Get-Counter -Counter "\MSExchange RpcClientAccess\RPC Averaged Latency" -SampleInterval 1 -MaxSamples 5 | ForEach-Object {
    $latency = $_.CounterSamples[0].CookedValue
    $color = if ($latency -lt 50) { "Green" } elseif ($latency -lt 100) { "Yellow" } else { "Red" }
    Write-Host "RPC Latency: $([math]::Round($latency,2)) ms"2)) ms" -ForegroundColor $color
}

Prevention Tips

Best Practices

  • Enable MAPI over HTTP for modern connectivity
  • Monitor RPC latency and set alerts at 100ms threshold
  • Ensure adequate server resources (CPU, memory, disk)
  • Configure proper network QoS for Exchange traffic
  • Keep Outlook and Exchange updated
  • Standardize Outlook add-ins and test before deployment

When to Escalate

Contact Exchange specialists if:

  • Disconnections affect many users simultaneously
  • Network analysis shows no client-side issues
  • Server performance is normal but disconnections persist
  • MAPI/HTTP causes different issues
  • Need help with network architecture changes

Need Expert Help?

Our Outlook Connectivity Team provides end-to-end analysis of disconnection issues with network tracing and server diagnostics.

Frequently Asked Questions

Event ID 26 from MSExchange RPC indicates that an Outlook client session was terminated due to RPC timeout or disconnect. This means the client could not communicate with Exchange within the expected timeframe.

Still Stuck? We Can Help

Our Exchange Server experts have resolved thousands of issues just like yours.

  • Remote troubleshooting in 95 minutes average
  • No upfront commitment or diagnosis fees
  • Fix-it-right guarantee with documentation
Get Expert Help
95 min
Average Response Time
24/7/365 Availability
Medha Cloud

Medha Cloud Exchange Server Team

Microsoft Exchange Specialists

Our Exchange Server specialists have 15+ years of combined experience managing enterprise email environments. We provide 24/7 support, emergency troubleshooting, and ongoing administration for businesses worldwide.

15+ Years ExperienceMicrosoft Certified99.7% Success Rate24/7 Support