Start here: SharePoint admin
For SharePoint Online admins and IT pros who run the tenant with PowerShell and the admin center. After this path you can inventory sites, audit permissions and sharing, keep big lists and search healthy, and find where storage goes.
- SPO Management Shell one-liners every admin ends up needingQuick answers on storage, sharing, deleted sites and locks with no script file; a gentle warm-up for the scripts that follow.Quick admin answers — storage top 20, external sharing, deleted sites, lock state — no script file needed
- Get-SiteCollectionInventory.ps1One CSV of every site with owner, storage, sharing and last activity; the baseline every later audit builds on.Exports an inventory of all SharePoint Online site collections to a CSV file.
- Get-UniquePermissionsReport.ps1Shows where inheritance is broken at web, list and item level, and says PARTIAL instead of pretending a capped scan is complete.Finds broken permission inheritance across one or more sites - at web, list/library and (optionally) item level.
- Breaking inheritance without copying keeps only YOU — and the re-grant forgets custom groupsBreaking inheritance without copying leaves only you on the object; read this before you lock anything down by hand or script.copyRoleAssignments=false leaves exactly one role assignment (the caller), so re-granting Owners/Members/Visitors drops every direct grant and custom group; and an account that loses a configuration read can end up…
- Get-ExternalSharingReport.ps1Sharing level per site plus every guest, and why a tenant wide guest count can stop early and is only a floor.Reports the external sharing posture of a tenant: sharing capability per site collection, plus every external (guest) user SharePoint knows about.
- The 5,000-item list view threshold — and why indexes must come earlyThe 5,000 limit counts scanned rows, not returned ones; explains why big lists fail and why indexes must come early.It's scanned rows, not returned rows; index early, page always
- Search queries that actually workThe mandatory header, practical KQL, managed properties, paging and the freshness and trimming traps to know before you report on search.The one mandatory header, practical KQL, managed properties (RefinableString*), paging/sorting, and the freshness/trimming traps
- "Search finds nothing here" is usually a site missing from the index — not a permissions problemThree queries tell you whether a site is in the index at all, before you lose an afternoon chasing a permission issue.Three queries tell you whether the site is in the index at all, before you debug a query that was never wrong
- A version is a full copy, not a delta — and a metadata-only edit costs oneEvery version counts at full file size and a metadata edit costs one; the usual reason a library eats the storage quota.The quota counts every version at full file size and a metadata-only edit costs one; measured on a live tenant, three column edits took a 1 MiB file to 4 MB
- Get-FileVersionBloatReport.ps1Measures what version history really costs per library and per file, so cleanup starts where it pays off most.Measures how much storage file version history is really consuming, per library and per file.