Remove User from SharePoint Group using PowerShell

How to Remove user from SharePoint group?

From the SharePoint Web interface, if you want to remove a user from the SharePoint group, log in as a SharePoint Administrator, navigate to:

  • Click on Site Settings Gear icon >> Click on Site Settings
  • From the Site settings page, click on the “People and Groups” link under the “Users and Permissions” group
    sharepoint powershell remove user from group
  • Select the group from the left navigation by click on the group from which you want to remove users.
    sharepoint 2013 remove user from group programmatically
  • Select the user(s) and click on Actions Menu >> Choose “Remove users from Group”
    remove user from sharepoint group using powershell

Confirm by clicking “OK”. Selected users are now removed from the SharePoint Group.

Delete a user from the SharePoint group using PowerShell: 

If you want to remove the user from SharePoint group, this PowerShell script can help:

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

Function RemoveUser-FromGroup($SiteURL, $GroupName, $UserAccount)
{
 try
    {
     $ErrorActionPreference = "Stop"
  
     #Get the Web
     $web=Get-SPWeb $SiteURL
    
     #Get the User to Remove 
     $User  = Get-SPUser -Identity $UserAccount -Web $web

     #Get the Group by its name
     $Group = $Web.sitegroups | Where-Object {$_.Name -eq $GroupName}
     if($Group -ne $null)
     {
         #sharepoint powershell delete user from group
         $Group.RemoveUser($User)
         Write-Host "$($User) Removed from the Group: $($GroupName)"
     }
   }
 catch
    { 
           #Write error message on screen and to a LOG file
           write-host $_.Exception.Message
    }
 finally
    {
           $ErrorActionPreference = "Continue"
    }
}

#Call the function to remove user from SharePoint group
RemoveUser-FromGroup "http://sharepoint.crescent.com/sites/Operations" "Operations Members" "Corp\DaveP"

This removes given user from specific SharePoint group. How about removing user from All groups in the site?

Remove user from all SharePoint groups

Let’s remove user from All Groups in SharePoint using PowerShell

Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue

Function RemoveUser-FromAllGroups($SiteURL, $UserAccount)
{
     #Get the Web
     $web=Get-SPWeb $SiteURL
    
     #Get the User to Remove 
     $User  = $Web.EnsureUser($UserAccount)

     #Iterate through all Groups
     foreach($Group in $Web.Groups)
     {
         $GroupUser = $Group.Users | where {$_.UserLogin -eq $User.UserLogin}
         #Check if user member of the group
         if($GroupUser -ne $null)
         {
            #remove user from sharepoint group using powershell 
            $Group.RemoveUser($User)
            Write-Host "$($User) Removed from the Group: $($Group)"
         }
     }
 }

 #Call the function to remove user from all groups in the site  
 RemoveUser-FromAllGroups "http://intranet.crescent.com" "Crescent\Salaudeen"

Web.Group vs Web.SiteGroup: 
Web.SiteGroups gets you a collection of cross-site groups for the site collection. These groups can be used in more than one Web object in the site collection.

Web.Groups get you the groups that have some permission on the specific Web (subsite). These groups may have permission somewhere on the site. E.g. List or List Item with broken permissions. So if you add the group to a site without any permission on the site, then this group won’t appear on Web.Groups collection, but it will appear on Web.SiteGroups collection.

Here is another article for SharePoint Online to Remove user from a group using PowerShell: SharePoint Online: Remove User from Group using PowerShell

Salaudeen Rajack

Information Technology Professional with Two decades of SharePoint Experience.

7 thoughts on “Remove User from SharePoint Group using PowerShell

  • July 12, 2021 at 2:31 PM

    Hi
    I am trying to move SharePoint Groups from one site collection to another . In target site the sharepoint groups are got created. But the SP groups are showing in groups.aspx not in user.aspx
    Also when i click the group name in groups.aspx, it throws error that Group cannot be found. Also unable to create with the same group name .

    How to delete Sharepoint custom group using Memebershipgroup id.

    Reply
  • October 9, 2018 at 3:01 PM

    Hi All
    sorry but i’m new with powershell.
    In the script to remove a user from all groups i have to replace only “siteURL” and “UserAccount” correct?
    and…the script ends on row 23?

    thanks for the help

    Reply
  • July 11, 2018 at 4:41 PM

    I just have to say ‘Thank you’ to Salaudeen, for this site has helped me with several tough problems. I appreciate the support and sharing. Also, kudos to Edmond for the tip about the distinction between $Web.Groups and $Web.SiteGroups. Simple, but VERY handy!

    Reply
  • November 25, 2017 at 12:06 PM

    on the groups deleting a user from all groups

    this line: foreach($Group in $Web.Groups)

    used this instead to cater for all: foreach($Group in $Web.SiteGroups)

    This is on sharepoint 2016

    Reply
  • November 14, 2017 at 11:12 AM

    how about deleting multiple users from the sharepoint group

    Reply
    • November 15, 2017 at 1:48 PM

      Sure, You can either use the function “RemoveUser-FromAllGroups” repeatedly with different user accounts, to remove them from all groups or “RemoveUser-FromGroup” function with specific group names.

      Reply

Leave a Reply