The one-engine truth
Under the branding, there is a single content service. The three faces:
| You see | It actually is |
|---|---|
| A OneDrive | A SharePoint site with ONE owner — your personal document library, provisioned per licensed user |
| A Team's Files tab | A document library in the team's SharePoint site (one folder per channel) |
| A SharePoint site | The general case — a site with libraries, lists, pages, permissions |
Everything downstream falls out of this: the same permission model, the same storage rules, the same sharing links, the same retention and search, whether the file lives in a personal OneDrive or a department site. Learn it once, apply it three ways.
Sites are the unit of everything
A site is the container: it owns storage quota, a permission boundary, a URL, and a collection of libraries/lists/pages. Two site templates dominate:
- Team site (group-connected): backs a Microsoft 365 Group / Team — membership flows from the group, collaboration-shaped.
- Communication site: broadcast-shaped (intranet, news), no group by default, author-and-reader model.
The consequence that surprises people: deleting a Team deletes its site (and everything in it) because the site belongs to the group (the Teams curriculum's lifecycle lesson, storage edition). And a file's fate — who sees it, how long it's kept, whether Copilot can read it — is decided by its SITE, not by the file.
Why 'where did the file go' is always a site question
- Shared in a Teams chat → the sender's OneDrive (the sender left → OneDrive offboards on schedule → the file dies with it, ~30-odd days later).
- Posted in a Teams channel → the team site's library.
- 'On the intranet' → a communication site.
- Uploaded 'to SharePoint' → whichever site the user was in.
The finder reflex: don't hunt for the file, identify the SITE, then its permissions and lifecycle explain everything.
What to watch (proofs)
- The site inventory:
Get-SPOSite(SharePoint PowerShell) — every site, its template, storage, owner; the OneDrives viaGet-SPOSite -IncludePersonalSite $true. This IS the content estate. - Per-file location truth: the file's URL names its site collection — the first thing to read in any 'where/who' ticket.
- The Teams/site linkage: a team's site is
Get-SPOSitefiltered to the group; channel folders are its library subfolders — one library, many channels. - Storage roll-up:
Get-SPOSite | measure StorageUsageCurrent— the estate size that the 2026 storage-billing changes (later concept) now put a price on.