What it does
Predefined team structures — channels, installed apps, pinned tabs and team settings — that users pick when they create a team. Microsoft ships a set of prebuilt templates, you can build your own in the Teams admin center, and templates policies control which ones each user sees.
Key facts
- Microsoft provides prebuilt templates such as Manage a Project, Manage an Event, Onboard Employees, Organize Help Desk, Crisis Communications, Incident Response, Frontline Collaboration and several industry ones (retail, healthcare, banking, manufacturing quality and safety). Each has a fixed
TemplateId, for examplecom.microsoft.teams.template.ManageAProject. - Prebuilt templates can't be edited. Duplicate one and edit the copy instead.
- Custom templates can be built from scratch, from an existing team, or from an existing template. They live under Teams > Team templates in the admin center.
- A template captures: team name and description, visibility (public/private), team settings (member, guest, @mention), auto-favourite channels, installed apps and pinned tabs.
- A template does not capture: membership, team picture, channel settings, connectors, files and content, private and shared channels, and (in GCC) sensitivity labels.
- Limits per template: 15 channels, 20 tabs per channel, 50 apps. More can be added after the team is created.
- PowerShell:
Get-CsTeamTemplateList,Get-CsTeamTemplate,New-CsTeamTemplate,Update-CsTeamTemplate,Remove-CsTeamTemplate. Graph can also create teams from a template for provisioning automation. - Templates policies hide templates from users. New templates are visible in all policies by default; up to 100 templates can be hidden per policy.
- Templates policies can be assigned to individual users or by batch (
New-CsBatchPolicyAssignmentOperation -PolicyType TeamsTemplatePermissionPolicy) — not to groups. Creating and editing templates policies is admin center only. Assignments can take up to 24 hours to apply.
When to use / skip
Templates are worth it when the client has a recurring team shape — projects, client engagements, incidents, store teams — and wants some consistency without writing a provisioning engine. A good custom template with the right channels and pinned tabs (a Planner board, a Lists tracker, the relevant SharePoint library) gets new teams to a usable state immediately and cuts the "what goes where" questions.
They're not a governance tool on their own. A template can't set membership, apply a naming convention or create private channels, and users can still pick "From scratch" unless you hide it via policy. If the requirement is "every project team must look like this and be approved first", you need a provisioning flow (Power Automate or a Graph-based app) that uses the template, not just the template.
Configuration decisions
- Which prebuilt templates to keep visible and which to hide — most corporate clients don't need the hospital or bank branch templates cluttering the picker.
- Which recurring team types justify a custom template, and who owns each template's design.
- Whether to build custom templates from an existing "golden" team (quick, but drags in whatever that team had) or from scratch (cleaner).
- Templates policy assignment approach: since group assignment isn't supported, decide whether batch assignment from a group export is run on a schedule or the Global policy carries the setting for everyone.
- Whether templates are used directly by users or only by a provisioning flow behind a request form.
- App dependencies: any app in a template must be allowed by the users' app permission policies, or the team is created without it working.
Gotchas
- Private and shared channels aren't in templates. If the design depends on a private channel for managers, the provisioning flow has to create it afterwards.
- No group assignment for templates policies. Admins who assume they can target a security group will find the option isn't there — you're on Global, individual or batch.
- Up to 24 hours for policy changes to show. Don't demo a newly hidden template the same afternoon.
- Channel settings (moderation and so on) aren't captured, so teams created from the same template can still drift apart.
- Files aren't copied. Teams wanting a standard folder structure or starter documents need the provisioning flow or a SharePoint site template to do it.
- Templates created from an existing team are a snapshot. Later changes to the source team don't flow back into the template.
Consultant notes
- Keep the custom template count low — three to five well-designed templates beats twenty nobody can tell apart.
- Name custom templates by purpose ("Client Engagement", "Incident") rather than department, and write a one-line description; users choose from those descriptions.
- Hide the prebuilt templates that don't fit the client in the Global templates policy on day one; it's the simplest win.
- If the client also wants naming, owners and labels enforced, design the provisioning flow first and treat templates as one input to it.
- Re-test templates after major app changes — a retired app pinned as a tab leaves a broken tab in every new team.
Worth revisiting if Microsoft adds group assignment for templates policies or private/shared channel support in templates