Before you install a cumulative update, open a support ticket or deploy a third-party solution, someone will ask which SharePoint build you’re on. Guessing from the look of the site doesn’t work, because SharePoint 2016, 2019 and Subscription Edition all report version 16.0.
In this tutorial, we’ll walk through the check SharePoint version PowerShell commands for a SharePoint Server farm, match the build number to a release and update, look it up without PowerShell, and read the SharePoint Online build with PnP PowerShell.
Quick answer: On SharePoint Server, open the SharePoint Management Shell and run (Get-SPFarm).BuildVersion, then match the number to the Microsoft Learn update list. In SharePoint Online there’s no cumulative update to check: (Get-PnPContext).ServerVersion shows the current service build after the first query.
What You Need Before You Start
- SharePoint Server (2013, 2016, 2019 or Subscription Edition): a farm administrator account and the SharePoint Management Shell on a farm server. Not sure which you run? See SharePoint Online vs on-premises.
- SharePoint Online: PnP PowerShell in PowerShell 7 and your own Entra ID app ID, as covered in connecting to SharePoint Online with PowerShell.
Step 1: Get the Farm Build Number with Get-SPFarm
The farm object stores the configuration database build, the patch level the whole farm runs at. It works the same in SharePoint 2013, 2016, 2019 and Subscription Edition. If the Management Shell is new to you, start with our PowerShell for SharePoint guide.
# SharePoint Management Shell, run as administrator
(Get-SPFarm).BuildVersion
The result looks like 16.0.10417.20198 (major.minor.build.revision). The third part identifies the product and update, so that’s what you look up in Step 2.
Check each server with Get-SPProduct
Get-SPProduct lists the installed SharePoint products and every update applied. Run it per server to catch a machine that missed the patch:
# Products and installed updates on this server
Get-SPProduct -Local
# The same check for every SharePoint server in the farm
Get-SPServer | Where-Object Role -ne "Invalid" | ForEach-Object { Get-SPProduct -Server $_ }
Database servers show up in Get-SPServer with the role Invalid, so the filter skips them.
Step 2: Match the Build Number to a SharePoint Version
We built this cheat sheet from the Microsoft Learn SharePoint updates page, which lists every cumulative update (CU) with its build (checked October 2026):
| Version | Build family | Builds on Microsoft Learn | Support |
|---|---|---|---|
| SharePoint 2013 | 15.0.x | SP1 15.0.4571.1502; last update 15.0.5545.1000 (April 2023) | Ended April 11, 2023 |
| SharePoint Server 2016 | 16.0.4xxx to 16.0.5xxx | 16.0.4366.1000 (April 2016) to 16.0.5565.1001 (08/11/2026) | Extended support ended July 14, 2026 |
| SharePoint Server 2019 | 16.0.10xxx | 16.0.10338.12107 (November 2018) to 16.0.10417.20198 (08/11/2026) | Extended support ended July 14, 2026 |
| Subscription Edition | 16.0.14xxx and higher | 16.0.14326.20620 (December 2021) to 16.0.20326.20190 (10/13/2026) | Supported, monthly updates |
| SharePoint Online | 16.0 + service build | 16.0.27807.12010 in our tenant on 10/23/2026 | Updated continuously by Microsoft |
Because updates are cumulative, a build equal to or higher than the newest listed CU means the farm is current. Here’s the small function we use to name the product and compare it with the latest update:

Three of the five sample builds are behind and need the newest update. Planning a move off 2016 or 2019? Our SharePoint Server Subscription Edition overview explains what changes, and the SharePoint 2019 guide covers the older release.
Step 3: Check the Version Without PowerShell
- Central Administration: go to Upgrade and Migration > Check product and patch installation status to see every product and patch per server, or System Settings > Manage servers in this farm for the configuration database version.
- Control Panel: on a server, Programs and Features > View installed updates lists the SharePoint updates by KB number.
- From a browser: open
/_vti_pvt/service.cnfon any SharePoint web application. Thevti_extenderversionline shows the build, but treat it as a rough check and confirm with Get-SPProduct.
Site settings never shows a version, which is why most admins script it, like our PnP PowerShell scripts for daily work.
Step 4: Check the SharePoint Online Version with PnP PowerShell
SharePoint Online has no farm, so Get-SPFarm doesn’t exist there, but the client context reports the service build. New to the module? Start with installing PnP PowerShell:
Connect-PnPOnline -Url "https://spguides.sharepoint.com/sites/SPGuides" -ClientId $clientId -Interactive
$ctx = Get-PnPContext
$ctx.Load($ctx.Web)
Invoke-PnPQuery
$ctx.ServerVersion

Notice the first line: ServerVersion is empty until the context sends a request. After Invoke-PnPQuery, our tenant returned 16.0.27807.12010.
You can get the same build without signing in. SharePoint answers /_vti_pvt/service.cnf anonymously, and every response carries a MicrosoftSharePointTeamServices header:

Both show build 27807, the same number ServerVersion returned.
Does SharePoint Online Have Cumulative Updates?
No. Microsoft updates SharePoint Online continuously, so there’s no customer-visible CU to install. The build changes on its own and mainly helps when Microsoft support asks for it.
What you control is when features reach you. In the Microsoft 365 admin center, go to Settings > Org settings > Organization profile > Release preferences. Microsoft is retiring Targeted release in January 2027 in favor of Standard and Deferred release, and announces upcoming changes in the Message center.
Common Mistakes to Avoid
- Reading ServerVersion too early: it’s blank until a query runs. A failed query shows up as the ExecuteQuery exception in PowerShell, not as a version.
- Trusting BuildVersion right after patching: it changes only after the SharePoint Products Configuration Wizard (or PSConfig) upgrades the configuration database. Get-SPProduct shows the binaries already installed.
- Calling 16.0 “SharePoint 2016”: 2016, 2019, Subscription Edition and SharePoint Online all start with 16.0. Always read the third part of the build.
Next Steps
Save the Get-SPFarm and Get-SPProduct output before and after every patch night, so you can prove what changed.
We’d keep these PnP PowerShell guides close for the next admin task:
Frequently Asked Questions
How do I get the SharePoint version with PowerShell?
On SharePoint Server, run (Get-SPFarm).BuildVersion in the SharePoint Management Shell. For SharePoint Online, connect with PnP PowerShell, run one query and read (Get-PnPContext).ServerVersion.
How do I check the SharePoint 2013 version?
Run (Get-SPFarm).BuildVersion on a SharePoint 2013 server. Builds start with 15.0, and the last update, 15.0.5545.1000, shipped in April 2023 when support ended.
How do I know which cumulative update is installed?
Compare your build with the SharePoint updates list on Microsoft Learn. The newest listed build at or below yours is your CU.
Can I check the SharePoint Online version?
Yes, but only the service build, such as 16.0.27807.12010. Microsoft updates SharePoint Online continuously, so there’s no CU to install.
How do I check my PowerShell version instead?
Run $PSVersionTable.PSVersion. Our guide on how to check the PowerShell version covers Windows PowerShell 5.1 and PowerShell 7.

Hey! I’m Bijay Kumar, founder of SPGuides.com and a Microsoft Business Applications MVP (Power Automate, Power Apps). I launched this site in 2020 because I truly enjoy working with SharePoint, Power Platform, and SharePoint Framework (SPFx), and wanted to share that passion through step-by-step tutorials, guides, and training videos. My mission is to help you learn these technologies so you can utilize SharePoint, enhance productivity, and potentially build business solutions along the way.