Meeting policies are how you decide what users can and can’t do in Teams meetings — who can record, whether anonymous people can join, who lands in the lobby, who can present, and what can be shared. Set them well and meetings behave the way your organization needs without anyone thinking about it. Leave them at default and you might be allowing more than you intended, or fielding “why can’t I record?” tickets you could have answered in advance.
The mechanics are straightforward once you understand the model: there’s a Global (Org-wide default) policy that applies to everyone, and custom policies you create and assign to specific users or groups that override the default. You configure both in the Teams admin center or with PowerShell, and the same settings live in both places.
This guide covers the policy model, the settings that matter most, how to assign policies to groups rather than one user at a time, and the PowerShell to do it at scale.
The policy model: Global vs custom
Before changing anything, understand what you’re editing. Teams meeting policy is a per-user policy. The settings control the meeting experience for the organizer and, for some settings, the participants of meetings that organizer schedules.
- Global (Org-wide default): the baseline applied to all users with no custom policy. Editing it changes the experience for the majority.
- Custom policies: named policies you create for a subset — say, a “Locked-down” policy for frontline staff or an “Events” policy for the team that runs webinars. Assigned users get the custom policy instead of Global.
A user has exactly one effective meeting policy. When multiple group assignments could apply, assignment ranking decides which wins. That’s why a clear policy structure beats a pile of one-off changes.
Configure a meeting policy in the admin center
To edit or create a policy:
- Open the Teams admin center (admin.teams.microsoft.com).
- Go to Meetings > Meeting policies.
- Select Global (Org-wide default) to edit the baseline, or Add to create a custom policy.
- Adjust the settings (covered below), then Save.
The settings are grouped into sections — general, audio & video, content sharing, recording & transcription, and participants & guests among them. You don’t have to touch every setting; the defaults are reasonable, and you change only what your organization needs.
The settings that matter most
You could go through dozens of toggles, but a handful carry most of the impact. These are the ones worth deciding deliberately.
High-impact meeting policy settings
| Recording & transcription | Whether users can record and transcribe meetings. Turn off for groups handling sensitive conversations if recording isn't wanted. |
|---|---|
| Who can present (default) | Set to 'Only organizers and co-organizers' to stop attendees sharing or taking over by default; organizers can still promote presenters per meeting. |
| Automatically admit people (lobby) | Controls who bypasses the lobby vs waits to be admitted — the main lever against uninvited or disruptive joins. |
| Anonymous users can join a meeting | Whether people without an account can join at all. Disable if your security posture requires it. |
| Screen / content sharing mode | Entire screen, single window, or disabled — limits what can be shared during a meeting. |
| Allow Meet Now / scheduling | Whether users can start instant meetings and schedule meetings in channels and the calendar. |
Lobby and anonymous join
The lobby is your front door. For most organizations, internal users bypass it while anonymous and external participants wait in the lobby until an organizer admits them. That single setting prevents a lot of uninvited-join problems. Whether anonymous users can join at all is a separate, stricter control — disable it where your security requirements demand it, knowing it also blocks legitimate external guests who aren’t in your directory.
Who can present
By default, attendees can share content, which is convenient and occasionally a problem. Setting the default presenter role to Only organizers and co-organizers means attendees can’t share or take over unless an organizer promotes them. Organizers keep full control per meeting through meeting options, so this is a safe default to tighten without breaking legitimate use.
Recording
Recording policy decides whether users can record and transcribe. Turn it off for groups whose meetings shouldn’t be recorded, and remember this is about what the organizer’s policy allows. Pair it with your broader data and compliance approach rather than treating it as an isolated switch.
Assign policies to users and groups
Creating a policy does nothing until it’s assigned. You have three ways to assign:
- Per user: fine for a handful of people, tedious at scale.
- Group assignment: assign the policy to a security group or Microsoft 365 group, and it applies to members based on assignment ranking. This is the clean approach — as people join or leave the group, their policy follows automatically.
- Batch assignment: for assigning to large sets of users programmatically.
Group assignment is what keeps policy management sane in a growing organization. Define the groups once, assign policies to them, and stop touching individual users.
Before you roll out a new meeting policy
- Decide whether you're editing Global or creating a custom policy
- Test the policy on a small pilot group first
- Assign by group rather than user where possible
- Communicate any user-facing change (e.g. recording turned off)
- Allow up to 24 hours for the change to fully apply before judging it
Do it in PowerShell
For bulk changes, scripting, or exact control, the MicrosoftTeams PowerShell module is faster than clicking through the admin center. Connect first, then create, edit, and assign policies.
# Connect to Microsoft Teams PowerShell
Connect-MicrosoftTeams
# Create a new, locked-down meeting policy
New-CsTeamsMeetingPolicy -Identity "Locked-Down Meetings"
# Configure key settings: lobby, presenter, recording, anonymous join
Set-CsTeamsMeetingPolicy -Identity "Locked-Down Meetings" `
-AutoAdmittedUsers "EveryoneInCompany" `
-DesignatedPresenterRoleMode "OrganizerOnlyUserOverride" `
-AllowCloudRecording $false `
-AllowAnonymousUsersToJoinMeeting $false
Assign it to a user, or — better — to a group:
# Assign to a single user
Grant-CsTeamsMeetingPolicy -Identity "[email protected]" -PolicyName "Locked-Down Meetings"
# Assign to a group (applies to members by assignment ranking)
New-CsGroupPolicyAssignment -GroupId "<group-object-id>" `
-PolicyType "TeamsMeetingPolicy" `
-PolicyName "Locked-Down Meetings" -Rank 1
To inspect what’s currently configured, Get-CsTeamsMeetingPolicy lists policies and their settings, and Get-CsTeamsMeetingPolicy -Identity Global shows the org-wide default.
Give changes time, then verify
Policy changes don’t apply instantly. Microsoft notes a change can take up to 24 hours to fully take effect for a user. If you flip a setting and test thirty seconds later, you’ll think it didn’t work. Give it time, and have the test user sign out and back in (or restart Teams) to pick up the new policy sooner.
When something in meetings stops working after a policy change — screen sharing missing, external attendees can’t join, recording unavailable — the meeting policy is the first place to look. That connection between policy and symptom is covered from the troubleshooting side in the Teams meeting troubleshooting guide, and screen-share specifics in fix Teams screen sharing not working.
Fit it into your broader governance
Meeting policies are one piece of a larger Teams governance picture. They pair naturally with guest and external access decisions — your lobby and anonymous-join settings should match how you’ve scoped guest access in Microsoft Teams — and with the overall guardrails in Teams governance best practices. A coherent setup is one where meeting policy, guest access, and team creation rules all reflect the same intent rather than fighting each other.
Wrapping up
Configuring Teams meeting policies comes down to a clear model and a few high-impact settings. Keep the Global policy as a safe baseline, create custom policies for groups with different needs, and assign by group rather than user. Focus your attention on lobby behavior, anonymous join, who can present, and recording — those carry most of the security and experience impact. Use PowerShell when you’re working at scale.
Change one thing at a time, pilot before you roll out, and give every change up to 24 hours to settle before deciding it didn’t work. Most “it broke after I changed a setting” moments are really “I checked too soon.”