Commands › Exchange Online

Remove-UserPhoto

Exchange Online ExchangeOnlineManagement Remove-*

Delete the photo associated with a user's account. The user photo feature allows users to associate a picture with their account. User photos appear in client applications, such as Outlook, Microsoft Teams, and SharePoint. **Note**: In Microsoft 365, you can manage user photos in Microsoft Graph PowerShell. For instructions, see Manage user photos in Microsoft Graph PowerShell.

Quick start script

# Remove-UserPhoto — quick start (serv365.ai)
# 1. Connect (app-only shown; interactive: omit the certificate parameters)
Connect-ExchangeOnline -CertificateThumbprint $thumb -AppId $appId -Organization $org

# 2. Capture the current state first — you cannot roll back what you never recorded
$before = Get-UserPhoto
$before | Format-List

# 3. Make the change (dry run first)
Remove-UserPhoto -Identity <MailboxIdParameter> -ClearMailboxPhotoRecord <SwitchParameter> -WhatIf
Remove-UserPhoto -Identity <MailboxIdParameter> -ClearMailboxPhotoRecord <SwitchParameter>

# 4. Verify and diff
$after = Get-UserPhoto
Compare-Object ($before | Out-String) ($after | Out-String)

Syntax — 2 parameter sets

Identity

Remove-UserPhoto [-Identity] <MailboxIdParameter>
 [-Confirm]
 [-DomainController <Fqdn>]
 [-IgnoreDefaultScope]
 [-WhatIf]
 [<CommonParameters>]

ClearMailboxPhoto

Remove-UserPhoto [-Identity] <MailboxIdParameter>
 [-ClearMailboxPhotoRecord]
 [-GroupMailbox]
 [-PhotoType <String>]
 [-Confirm]
 [-DomainController <Fqdn>]
 [-IgnoreDefaultScope]
 [-WhatIf]
 [<CommonParameters>]

Parameters (8)

ParameterTypeRequiredWhat it controls
-Identity MailboxIdParameter yes The Identity parameter specifies the identity of the user. You can use any value that uniquely identifies the user. For example:
-ClearMailboxPhotoRecord SwitchParameter yes The ClearMailboxPhoto switch specifies that a deleted mailbox photo is considered blank instead of deleted. You don't need to specify a value with this switch.
-Confirm SwitchParameter The Confirm switch specifies whether to show or hide the confirmation prompt. How this switch affects the cmdlet depends on whether the cmdlet requires confirmation before proceeding.
-DomainController Fqdn The DomainController parameter specifies the domain controller that's used by this cmdlet to read data from or write data to Active Directory. You identify the domain controller by its fully qualified domain name...
-GroupMailbox SwitchParameter The GroupMailbox switch is required to modify Microsoft 365 Groups. You don't need to specify a value with this switch.
-IgnoreDefaultScope SwitchParameter The IgnoreDefaultScope switch tells the command to ignore the default recipient scope setting for the Exchange PowerShell session, and to use the entire forest as the scope. You don't need to specify a value with this switch.
-PhotoType String This parameter is reserved for internal Microsoft use.
-WhatIf SwitchParameter The WhatIf switch shows what the command does without making any changes. You don't need to specify a value with this switch.

Reference facts derived from Microsoft documentation, © Microsoft, licensed CC BY 4.0; restructured with original guidance by serv365.ai.