The licensing ladder, feature by feature
Teams licensing is additive layers, not editions:
| Layer | What it actually unlocks |
|---|---|
| Business/E-series base | Teams itself: chat, channels, meetings, 1,000-person meetings |
| Teams Phone (in E5, addon below) | A phone number can be assigned; calling policies mean something |
| Calling Plan / Operator Connect / DR minutes | The number can reach the PSTN (Phone ≠ minutes!) |
| Audio Conferencing (in E5) | Dial-in numbers on meeting invites |
| Teams Premium | Advanced meeting protection (watermark, e2ee for meetings), custom branding, advanced webinars, town hall 20k, intelligent recap |
| Copilot | Meeting/chat Copilot — which also requires transcription allowed by policy |
| F-series (Frontline) | Real Teams, capped: smaller mailbox interplay, shifts/walkie-talkie focus |
| Teams Rooms Pro / Basic | Room accounts — Basic (free, ≤25 rooms) vs Pro (management + health) |
Three traps that generate tickets forever:
- Phone without minutes: a user with Teams Phone but no Calling Plan/OC/DR route gets a dial pad that can only call colleagues. Looks broken; is unlicensed.
- Copilot without transcription: Copilot licence present,
AllowTranscriptionfalse in the meeting policy → "Copilot can't be used in this meeting". The licence was never the problem. - Premium features leaking into expectations: one exec sees watermarks in a demo tenant; your tenant has no Premium; a mystery "feature outage" is born.
Clients: same brand, different animals
- New Teams desktop (Windows/Mac) — WebView2-based, the reference client; only place everything works (advanced meeting features, full device controls).
- Web (teams.microsoft.com) — closest to desktop, but browser-gated: no background effects everywhere, media device quirks per browser, no advanced VDI paths.
- Mobile (iOS/Android) — full citizen for chat/calls; meeting production features (green room control, advanced sharing) largely absent; MAM policies bite here.
- VDI — its own world: media is offloaded to the endpoint when optimised; a feature matrix all of its own (see the VDI concept).
- Teams Rooms / panels / phones — appliance builds on their own release cadence; never assume day-one feature parity with desktop.
The operational rule: reproduce on new Teams desktop before debugging anything. If it works there and fails elsewhere, you have a client-capability issue, not a service issue — different playbook entirely.
What to watch (proofs)
- A user's real entitlements:
Get-MgUserLicenseDetail -UserId <upn>— look atservicePlanswithprovisioningStatus Success; the service plan names (TEAMS1, MCOEV=Phone, MCOMEETADV=AudioConf, Teams_Premium) are the truth, not the SKU name. - Phone-but-no-minutes:
Get-CsOnlineUser <upn> | fl EnterpriseVoiceEnabled, LineURI, OnlineVoiceRoutingPolicy, TeamsCallingPolicy— EV true with no routing/plan = dial-pad-to-nowhere. - Client versions in the wild: Teams admin center > Usage reports > Teams device usage; stragglers on classic/old builds explain per-user feature gaps.
- Premium visibility: the meeting options themselves — watermark/e2ee options simply don't render without the licence; their absence in the organizer UI is the proof.