When you add a user to a security group that is assigned to a Teams policy or app setup policy, the user may not show up in the Teams admin center for several hours. This delay occurs because the Teams admin center caches group membership data and synchronizes it on a schedule. This article explains why the user is missing and provides step-by-step methods to force synchronization and verify the assignment.
The root cause is the synchronization cycle between Azure Active Directory and the Teams service. Group membership changes can take up to 24 hours to propagate, but you can trigger an immediate sync using PowerShell or the Azure portal. The steps below cover both the standard wait-and-verify approach and the faster manual sync method.
Key Takeaways: Force Group Membership Sync for Teams Admin Center
- Azure AD Connect delta sync: Trigger a delta sync to push group membership changes to Azure AD immediately.
- Teams PowerShell module: Use the Get-CsGroupPolicyAssignment cmdlet to check if the group assignment is active.
- Azure portal group refresh: Open the group in Azure portal and click Refresh to force a membership reload.
Why Teams Admin Center Does Not Show the User After a Group Change
The Teams admin center reads group membership from Azure Active Directory, but it does not query Azure AD in real time. Instead, the admin center relies on a background synchronization job that runs every few hours. When you add a user to a security group that is linked to a Teams policy, the policy assignment is also processed asynchronously. This means the user may not appear in the admin center until the sync job completes.
Another factor is the difference between direct and group-based policy assignments. Direct assignments appear immediately because they are written directly to the user object. Group assignments require an extra processing step where the Teams service resolves the group membership and applies the policy. This resolution can take up to 24 hours, but usually completes within 1 to 4 hours.
If you are using Azure AD Connect to sync from on-premises Active Directory, the sync cycle adds another delay. Azure AD Connect runs a delta sync every 30 minutes by default, but you can force it to run immediately. The following sections show how to trigger a manual sync and verify the assignment.
How to Force a Sync and Verify the Group Assignment
You can force the synchronization in two ways: using Azure AD Connect on your sync server, or using the Azure portal to refresh the group. After forcing the sync, you can verify the assignment with PowerShell.
Method 1: Force a Delta Sync with Azure AD Connect
- Open PowerShell as an administrator on the Azure AD Connect server
Log in to the server that runs Azure AD Connect. Right-click Windows PowerShell and select Run as administrator. - Run the delta sync command
TypeStart-ADSyncSyncCycle -PolicyType Deltaand press Enter. This forces a delta sync that pushes all pending changes to Azure AD. - Wait for the sync to complete
The sync usually finishes in under a minute. Check the event log for sync errors if it fails. - Open the Teams admin center and refresh the user list
Go to Teams admin center > Users. Press F5 to refresh the page. The user should now appear in the list.
Method 2: Refresh the Group in the Azure Portal
- Sign in to the Azure portal
Go to portal.azure.com and sign in with an account that has the Global Administrator or User Administrator role. - Navigate to the security group
Select Azure Active Directory > Groups. Search for the security group that is assigned to the Teams policy. - Open the group and click Refresh
In the group overview page, click the Refresh button on the toolbar. This forces the portal to reload the membership. - Check the Members section
Select Members on the left menu. Verify that the user is listed. If not, click Add member and add the user again.
Verify the Policy Assignment with PowerShell
- Install the Teams PowerShell module
Open Windows PowerShell as an administrator and runInstall-Module -Name MicrosoftTeams. Press Y when prompted. - Connect to Teams
RunConnect-MicrosoftTeamsand sign in with your admin credentials. - Check the group policy assignment
RunGet-CsGroupPolicyAssignmentand look for the security group name. This shows which policy is assigned to the group. - Check the effective policy for the user
RunGet-CsUserPolicyAssignment -Identity user@domain.com. This shows the policy that the user actually receives, including group-based assignments.
If the User Still Does Not Appear After the Sync
The user is not a member of the security group
Open the group in the Azure portal and check the membership. If the user is missing, click Add member and search for the user. Save the change and wait for the sync.
The group is not assigned to any Teams policy
In the Teams admin center, go to the policy page and verify that the group is listed under Group policy assignment. If not, assign the policy to the group by selecting the policy and clicking Manage groups.
Azure AD Connect is not syncing the group
If you use Azure AD Connect, check that the group is in scope for synchronization. Open the Azure AD Connect wizard and confirm that the group is included in the selected organizational units.
Teams admin center cache is stale
Close the browser and reopen it. Alternatively, use an InPrivate or Incognito window to bypass the cache. This forces the admin center to reload the user list.
Teams Admin Center Sync vs Direct Policy Assignment: Key Differences
| Item | Group-based policy assignment | Direct policy assignment |
|---|---|---|
| Propagation time | Up to 24 hours | Immediate |
| Admin center visibility | Delayed until sync | Shows immediately |
| Management effort | Low for many users | High for many users |
| Error-prone | Less, because changes are centralized | More, because each user is edited |
For most organizations, group-based assignments are the preferred method because they scale well. However, if you need immediate effect for a single user, you can temporarily assign the policy directly. After the group sync completes, remove the direct assignment to avoid conflicts.
You now have the steps to force a sync and verify the assignment. Next, try the Get-CsUserPolicyAssignment cmdlet to confirm the effective policy for any user. Remember that the Teams admin center may still show a cached view for a few minutes after the sync, so refresh the page twice if needed.