SharePoint Site collection Logo: How to change it in 3 comfortable steps

The corporate design covers besides colors and fonts a logo, which is located in the upper left corner of the SharePoint site collection. If you want to automate your SharePoint intranet, you might want, that your corporate design is applied to your SharePoint Sites automatically. Changing SharePoint Site logos can be done in various ways. I want to show you how you can change your SharePoint site logos in the GUI and with PowerShell.

Change Site logo in the GUI

As one can see, the logo is displayed with the initials of the SharePoint site:

image 25

So if we want to change the logo, we have to open the SharePoint Site settings -> Site information:

SharePoint site information

Here you can change the logo and save it.

Change the SharePoint site logo with GUI

I took the logo of SPOScripts.

Changed SharePoitn Site Logo

Set Site Logo from local File

You can change the site logo from a local file, like your file system. You cannot use this method easily in azure automation, since you got no “local client”.

First connect to you SharePoint with PNP. If you don’t know how to, check following article: Connect to SharePoint with PowerShell | SharePoint Online (

In my case I am connecting to the sales site.

$Url = ""

$Credential = Get-Credential
Connect-PnPOnline -Url $Url -Credentials $Credential

After connecting, you can set the logo like this:

Set-PnPSite -Identity $Url -LogoFilePath "C:\Users\Serkar\Downloads\business-15822_1280.jpg"
Easy way to copy the path

Did you know that you can copy the path with CTRL + Right mouse button?

After doing this, the logo changes:

Change the logo with local file

Change Site logo from Library

Now it gets interesting. This approach let’s you choose a logo from a SharePoint site library, doesn’t matter wether you choose your current site or another site.
This is especially interesting for Azure Automation, since you got no easy local file access. You could create a storage account and access the local file over a blob storage. Since I got an easier way for azure automation, I will describe the easy way.

I have located a photo image in the library, which we will use as the logo.

Update logo from site library

We have to copy the URL of the picture.

Click on the picture

Click on picture

Click on View original

View original of the picture

Now copy the url

URL of the picture

Connect to your SharePoint Site.

$Url = ""

$Credential = Get-Credential
Connect-PnPOnline -Url $Url -Credentials $Credential

After connecting, replace the variable SiteLogoUrl and run the cmdlets:

$SiteLogoUrl  = ""

$Ctx = Get-PnPContext
$Web = Get-PnPWeb

$Web.SiteLogoURL = $SiteLogoUrl

As you can see, we could update the logo succesfully

Updated logo from local file

Further Reading

Here you can find the official reference for Set-PNPSite: Set-PnPSite (PnP.Powershell) | Microsoft Docs