Exchange OnlineTroubleshooting

NDR 550 5.1.10 RESOLVER.ADR.RecipientNotFound in Exchange Online: causes and fixes

Why Exchange Online can't find a recipient by SMTP address, from stale Auto-Complete entries and broken forwarding to accepted domain types and hybrid sync gaps, and how to fix each.

A user sends a message to a colleague, a shared mailbox or someone in a domain you share with another system, and it bounces with 5.1.10. Exchange Online looked the address up and found nothing. The cause ranges from a stale Auto-Complete entry to a domain set up the wrong way for hybrid routing. In this post I'll show how to tell which one you have, fix it and prove the fix with message trace.

Errors this guide fixes

  • 550 5.1.10 RESOLVER.ADR.RecipientNotFound; Recipient not found by SMTP address lookupNDR / message trace
  • 5.1.10 Recipient not foundNDR
  • 550 5.5.0 Requested action not taken: mailbox unavailableNDR (Outlook.com and Hotmail recipients)
How this guide is organized: Symptoms → Why it happens → How to fix it → Verify the fix → Tell it apart from similar NDRs → Prevent it next timeFlow diagram of the article's sections in reading order: 1. Symptoms. 2. Why it happens. 3. How to fix it. 4. Verify the fix. 5. Tell it apart from similar NDRs. 6. Prevent it next time. Toolbox: Get-Recipient, Set-RemoteMailbox, Users › Active users, IMCEAEX, @outlook.com.1Symptoms2Why it happens3How to fix it4Verify the fix5Tell it apart from similar NDRs6Prevent it next timeTOOLBOXGet-RecipientSet-RemoteMailboxUsers › Active usersIMCEAEX@outlook.comHow this guide is organized: Symptoms → Why it happens → How to fix it → Verify the fix → Tell it apart from similar NDRs → Prevent it next timeFlow diagram of the article's sections in reading order: 1. Symptoms. 2. Why it happens. 3. How to fix it. 4. Verify the fix. 5. Tell it apart from similar NDRs. 6. Prevent it next time. Toolbox: Get-Recipient, Set-RemoteMailbox, Users › Active users, IMCEAEX, @outlook.com.1Symptoms2Why it happens3How to fix it4Verify the fix5Tell it apart from similar NDRs6Prevent it next timeTOOLBOXGet-RecipientSet-RemoteMailboxUsers › Active usersIMCEAEX@outlook.com
At a glance: how this guide is organized · 6 sections · 5 key tools

Symptoms#

The sender gets a non-delivery report (NDR) saying the recipient wasn't found. In Diagnostic information for administrators, the code reads:

Text
550 5.1.10 RESOLVER.ADR.RecipientNotFound; Recipient not found by SMTP address lookup
  • Microsoft's NDR table summarizes it as 5.1.10 Recipient not found: the SMTP address lookup didn't find the recipient's address.
  • For recipients at @outlook.com or @hotmail.com, the equivalent bounce is 550 5.5.0 Requested action not taken: mailbox unavailable.
  • Message trace shows the message as Failed, with the same text in the details.
  • Sometimes the address in the NDR isn't the one the sender typed. That points to a forwarding rule on the recipient's side.

Why it happens#

Finding the cause of a 5.1.10 RecipientNotFound bounceDoes it go through when the address is typed in full? if Yes: Clear the stale Auto-Complete entry (Delete the suggestion from the To line and type the full address); if No: Does the NDR show a different address from the one sent? if Yes: Fix the recipient's forwarding (Check mailbox forwarding, Inbox rules and mail flow rules that redirect); if No: Does Get-Recipient find the recipient? if Yes: Assign a license with Exchange Online (The user exists; check Users › Active users in the admin center); if Hosted elsewhere: Sync it or set the domain to Internal relay (Hybrid: sync it as a mail user; shared domain: connector, then Internal relay); if No: Check for a removed alias or deleted mailbox (Get-Mailbox -SoftDeletedMailbox finds mailboxes deleted recently)Does it go through when theaddress is typed in full?FIXClear the staleAuto-CompleteentryDelete thesuggestion from theTo line and type thefull addressYesDoes the NDR show a differentaddress from the one sent?FIXFix the recipient'sforwardingCheck mailboxforwarding, Inboxrules and mail flowrules that redirectYesDoes Get-Recipient find therecipient?FIXAssign a licensewith ExchangeOnlineThe user exists;check Users › Activeusers in the admincenterYesFIXSync it or set thedomain toInternal relayHybrid: sync it as amail user; shareddomain: connector,then Internal relayHosted elsewhereFIXCheck for aremoved alias ordeleted mailboxGet-Mailbox-SoftDeletedMailboxfinds mailboxesdeleted recentlyNoNoNoFinding the cause of a 5.1.10 RecipientNotFound bounceDoes it go through when the address is typed in full? if Yes: Clear the stale Auto-Complete entry (Delete the suggestion from the To line and type the full address); if No: Does the NDR show a different address from the one sent? if Yes: Fix the recipient's forwarding (Check mailbox forwarding, Inbox rules and mail flow rules that redirect); if No: Does Get-Recipient find the recipient? if Yes: Assign a license with Exchange Online (The user exists; check Users › Active users in the admin center); if Hosted elsewhere: Sync it or set the domain to Internal relay (Hybrid: sync it as a mail user; shared domain: connector, then Internal relay); if No: Check for a removed alias or deleted mailbox (Get-Mailbox -SoftDeletedMailbox finds mailboxes deleted recently)Does it go through when the address is typed infull?YesFIXClear the stale Auto-Complete entryDelete the suggestion from the To line and type thefull addressNoDoes the NDR show a different addressfrom the one sent?YesFIXFix the recipient's forwardingCheck mailbox forwarding, Inbox rules and mailflow rules that redirectNoDoes Get-Recipient find the recipient?YesFIXAssign a license with ExchangeOnlineThe user exists; check Users › Active usersin the admin centerHosted elsewhereFIXSync it or set the domain to InternalrelayHybrid: sync it as a mail user; shareddomain: connector, then Internal relayNoFIXCheck for a removed alias or deletedmailboxGet-Mailbox -SoftDeletedMailbox findsmailboxes deleted recently
Figure 1 · Decision tree Finding the cause of a 5.1.10 RecipientNotFound bounce. Work down from the cheapest test: retype the address, compare the NDR with Sent Items, then look the recipient up with Get-Recipient.

Exchange Online resolves every recipient by SMTP address. Whether a failed lookup bounces depends on the accepted domain type. When the domain is Authoritative, a missing recipient stops delivery and produces this NDR. That's why Microsoft notes that on-premises users must exist in Exchange Online as mail users or mail contacts. When it's Internal relay, Exchange Online passes unknown recipients on through a connector instead. The usual causes:

CauseClue
Typo, a removed alias, or a leaver whose mailbox was deletedGet-Recipient returns nothing
Stale Auto-Complete entry in OutlookWorks when the address is typed in full
The recipient's forwarding points to a bad addressThe NDR address differs from the sent address
Mailbox without a licenseThe user exists, but no Exchange Online license is assigned
Domain shared with another mail system but set to AuthoritativeOnly recipients hosted elsewhere fail
Hybrid object missing on one sideNot synced to Exchange Online, or a cloud-only mailbox with no on-premises object

One more possibility: the bounce is backscatter. A spammer forged your user's address as the sender, and the NDR came back to them for a message they never sent. Microsoft says you can ignore those NDRs, and that publishing SPF helps prevent the spoofing.

How to fix it#

  1. Confirm the address exists. Compare the NDR address with the copy in Sent Items, then look it up, including mailboxes deleted recently:
    PowerShell
    Connect-ExchangeOnline
    Get-Recipient -Identity megan@contoso.com | Format-List Name, RecipientTypeDetails, PrimarySmtpAddress, EmailAddresses
    Get-Mailbox -SoftDeletedMailbox -Identity megan@contoso.com

    If the user exists, check in the Microsoft 365 admin center under Users › Active users that a license with Exchange Online is assigned.

  2. Clear stale Auto-Complete entries. The sender deletes the suggestion from the To line and types the full address. After migrations, old cached entries can also produce IMCEAEX bounces, which need an X500 address instead (X500 guide).
  3. Fix broken forwarding on the recipient: mailbox forwarding, Inbox rules and mail flow rules that redirect.
    PowerShell
    Get-Mailbox -Identity megan@contoso.com | Format-List ForwardingAddress, ForwardingSmtpAddress
    Get-InboxRule -Mailbox megan@contoso.com | Where-Object { $_.ForwardTo -or $_.RedirectTo } | Format-List Name, ForwardTo, RedirectTo
    Get-TransportRule | Where-Object { $_.RedirectMessageTo } | Format-Table Name, State, RedirectMessageTo
  4. Check the accepted domain type. If some recipients in the domain live on another system (on-premises Exchange that isn't synced, or another provider during a migration), the domain should be Internal relay. First create an outbound connector that routes the domain to that system. Microsoft warns that switching without one breaks mail flow to those recipients. In the Exchange admin center, go to Mail flow › Accepted domains, or use PowerShell:
    PowerShell
    Get-AcceptedDomain | Format-Table DomainName, DomainType
    Set-AcceptedDomain -Identity contoso.com -DomainType InternalRelay

    Changing the type has side effects, especially in hybrid, so do it only when the domain is genuinely shared. The 5.4.1 guide explains how the same setting affects Directory-Based Edge Blocking.

  5. Close hybrid sync gaps. If the recipient is on-premises, make sure it's in scope for Microsoft Entra Connect Sync and run a delta cycle on the sync server. Then confirm it exists in Exchange Online as a mail user:
    PowerShell
    # On the Microsoft Entra Connect Sync server
    Start-ADSyncSyncCycle -PolicyType Delta
    
    # In Exchange Online PowerShell
    Get-MailUser -Identity megan@contoso.com | Format-List ExternalEmailAddress, EmailAddresses

    Microsoft also documents the reverse case. A mailbox created directly in Microsoft 365 has no object on-premises, so lookups for its address fail there. The fix is to create a remote mailbox on-premises with the same name, alias and UPN, set its ExchangeGuid to the cloud mailbox's value with Set-RemoteMailbox and let sync match them. For routing from on-premises to the cloud, see remote mailbox management.

Verify the fix#

Ask the sender to send the message again with the address typed in full rather than picked from Auto-Complete, then trace it:

PowerShell
Get-MessageTraceV2 -RecipientAddress megan@contoso.com -StartDate (Get-Date).AddHours(-1) -EndDate (Get-Date) |
    Format-Table Received, SenderAddress, Subject, Status
  • Delivered: fixed. For a recipient hosted elsewhere, this means Exchange Online handed the message to the next system through your connector.
  • Failed with 5.1.10 again: the address still doesn't resolve. Re-run Get-Recipient, and in hybrid wait for the next sync cycle.
  • Failed with another code: the lookup now works and the failure is elsewhere (reading trace results).

Tell it apart from similar NDRs#

  • 550 5.4.1 Recipient address rejected: Access denied: external mail to an unknown address rejected at the edge by Directory-Based Edge Blocking.
  • 5.1.1 Bad destination mailbox address: the destination system, often a non-Microsoft server named in the NDR, says the user doesn't exist.
  • 550 5.1.11 RESOLVER.ADR.ExRecipNotFound or an IMCEAEX address: a legacy Exchange DN from an old cache entry, fixed with an X500 proxy address.

Prevent it next time#

  • Before you change MX records or accepted domain types, make sure every recipient exists in Exchange Online as a mailbox, mail user or contact.
  • When a user leaves, convert the mailbox to a shared mailbox or keep the address as an alias somewhere for a while.
  • After migrations, tell users to clear Auto-Complete entries for moved colleagues, and add X500 addresses where needed.

References#

Written and checked against current Microsoft Learn documentation. Test changes with a pilot group before rolling them out to everyone, and if an admin center path has moved since, search for the setting name instead.

Spotted a mistake, or did this fix work differently for you? Email me or message me on LinkedIn — corrections are credited in the article.

Written by

Omer Eltayeb

Intune Subject Matter Expert in Cairo, Egypt, former Microsoft Cloud Solutions Architect, Microsoft Certified Trainer and Microsoft Innovative Educator Expert (2024–26) and Microsoft Elevate Educator Expert (2026–27). I share practical, step-by-step guides, study plans, scripts and toolkits for Microsoft Intune, Configuration Manager, Microsoft Entra ID, Microsoft Defender, Exchange and Microsoft 365 with the community.

Microsoft Certified Trainer (MCT) 2026Microsoft Innovative Educator Expert 2025–2026Microsoft Elevate Educator Expert 2026–2027ISC2 Certified Information Systems Security Professional (CISSP)Microsoft 365 Certified: Enterprise Administrator Expert (MS-102)