Share via

I have 154 phantom contacts in the GAL that I can't delete with PowerShell

CMA Support 0 Reputation points
2026-02-12T16:27:30.4466667+00:00

I have 154 phantom contacts in the GAL that I can't delete with powershell, I was able to remove over 5,000 with a few commands.

The 154 contacts has the delete option greyed out, the contacts do not show up in any of the powershell searches. How can I delete these contacts

Microsoft 365 and Office | Other
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Noel Macadangdang 16,440 Reputation points Independent Advisor
    2026-02-12T17:25:42.7333333+00:00

    Hi,

    Thank you for sharing your question. I understand that you successfully removed thousands of contacts from the Global Address List but are left with 154 phantom contacts that do not appear in PowerShell searches and have the delete option greyed out.

    This behavior usually means the remaining contacts are directory‑synced or orphaned objects that Outlook still shows in the GAL even though they are not manageable through standard Exchange cmdlets. When a contact is synchronized from an on‑premises directory, Exchange Online blocks deletion in the cloud, so the object must be removed at the source or via directory‑level tools rather than Exchange PowerShell alone.

    A practical resolution is to first confirm whether these contacts are directory‑synced and, if so, delete them from the on‑premises directory or exclude them from synchronization, because cloud deletion is intentionally blocked for synced objects. If they are orphaned in the cloud with no on‑premises source, you can remove them at the directory layer using Microsoft Graph or Azure AD/MSOL commands by targeting the contact’s ExternalDirectoryObjectId and deleting it, which clears objects that Exchange PowerShell cannot remove. If the contacts are merely stale entries in client caches, manually refreshing or rebuilding the Offline Address Book can clear what looks like phantom items in Outlook. As a temporary workaround while you investigate, you can also hide problematic contacts from the GAL so users no longer see them.

    May I ask whether your tenant is or was using directory synchronization with Entra ID Connect, and whether any of these 154 contacts show an ExternalDirectoryObjectId when you query them with Get‑MailContact or via Microsoft Graph?

    Please feel free to follow up with me, and I can walk you through quick checks to identify synced versus orphaned contacts, provide exact commands to remove them safely, and help you refresh the GAL so users no longer see these entries. I’m here to help you get this fully resolved.

     

    Best Regards,

    Noel

    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.