Fix Teams Messaging Policy Does Not Update for a Security Group
🔍 WiseChecker

Fix Teams Messaging Policy Does Not Update for a Security Group

When you assign a Teams messaging policy to a security group, the new settings often take hours or even days to apply. Users in the group keep seeing the old policy, which can block features like chat deletion or giphy support. This delay happens because Teams does not apply group-based policy assignments immediately. In this article, you will learn why the update lags and how to force the policy refresh for the affected users.

Key Takeaways: Force a Teams Messaging Policy Refresh for Security Groups

  • Teams admin center > Messaging policies > Add group: Assign the policy to the security group and note the processing delay.
  • PowerShell cmdlet Get-CsGroupPolicyAssignment: Verify the assignment exists and check the effective policy for each user.
  • PowerShell cmdlet Update-CsGroupPolicyAssignment: Reapply the assignment to trigger an immediate policy refresh for the group.

ADVERTISEMENT

Why Teams Messaging Policy Updates Are Delayed for Security Groups

Teams relies on a background service that syncs group-based policy assignments from Azure AD to the Teams backend. This service runs on a schedule, not in real time. When you add a security group to a messaging policy, the assignment is stored in Azure AD, but the Teams service does not pick it up until the next sync cycle. The sync interval can range from 30 minutes to 24 hours, depending on your tenant configuration and the current load on Microsoft servers.

Another factor is the effective policy calculation. Each user can receive a policy from multiple sources. The priority order is: direct user assignment, then group assignment, then the global policy. If a user already has a direct assignment, that policy overrides the group policy. If the user is in multiple groups with different policies, Teams uses the group with the highest priority. You can check the priority order in the Teams admin center under Messaging policies.

How Group Policy Assignment Works in Teams

Group policy assignment is a feature that lets you apply the same policy to many users without configuring each one. You create a messaging policy, then add one or more security groups. The policy applies only to users in those groups. Users who are not in the group keep their current policy. This method is useful for applying a stricter chat policy to a sales team or a more permissive policy to a support group.

Steps to Force a Teams Messaging Policy Update for a Security Group

Before you start, make sure you have the Teams admin role or the Global admin role. You also need the Teams PowerShell module installed. If you do not have it, run Install-Module MicrosoftTeams in an elevated PowerShell window.

Method 1: Reapply the Policy Assignment in the Teams Admin Center

  1. Open the Teams admin center
    Go to Teams admin center > Messaging policies and select the messaging policy that you assigned to the security group.
  2. Edit the group assignment
    Click Manage groups in the top menu. You will see a list of security groups currently assigned to this policy.
  3. Remove and re-add the group
    Select the security group, click Remove, then click Add and select the same group again. This action re-creates the assignment and forces a new sync request.
  4. Save the change
    Click Save at the bottom of the panel. The policy now appears as updated in the list.
  5. Wait for the sync
    Even after this step, the change can take up to 24 hours to fully propagate. To speed it up, use the PowerShell method below.

Method 2: Use PowerShell to Force the Policy Refresh

  1. Connect to Teams PowerShell
    Open PowerShell as an administrator and run Connect-MicrosoftTeams. Sign in with an account that has the Teams admin role.
  2. Verify the current assignment
    Run Get-CsGroupPolicyAssignment -PolicyType MessagingPolicy. Look for the group that is not updating. Note the GroupId and the PolicyName.
  3. Remove the existing assignment
    Run Remove-CsGroupPolicyAssignment -GroupId "group-object-id" -PolicyType MessagingPolicy. Replace group-object-id with the actual group ID from the previous step.
  4. Re-add the assignment
    Run New-CsGroupPolicyAssignment -GroupId "group-object-id" -PolicyType MessagingPolicy -PolicyName "YourPolicyName". Use the exact policy name that you want to apply.
  5. Check the effective policy for a specific user
    Run Get-CsUserPolicyAssignment -Identity "user@domain.com" -PolicyType MessagingPolicy. This shows which policy the user is currently using. If it still shows the old policy, wait 30 minutes and run the command again.

Method 3: Force a User Sign-Out and Sign-In

  1. Ask the user to sign out of Teams
    The user should click their profile picture in Teams and select Sign out. This clears the cached policy data from the client.
  2. Close the Teams app completely
    On Windows, right-click the Teams icon in the system tray and choose Quit. On macOS, press Cmd+Q.
  3. Clear the Teams cache
    Press Ctrl+R in the Teams window to reload the app. If the policy still does not update, clear the cache folder manually. Navigate to %appdata%\Microsoft\Teams and delete the Cache and GPUCache folders. Then restart Teams.
  4. Sign in again
    The user signs in with their work account. The client downloads the latest policy from the server.

ADVERTISEMENT

If Teams Still Shows the Old Messaging Policy After the Fix

Teams Messaging Policy Update Takes Longer Than 24 Hours

If the policy still has not updated after 24 hours, check whether the security group is a dynamic group. Dynamic groups are based on user attributes and change membership automatically. Teams does not support dynamic groups for policy assignment. Convert the dynamic group to a static security group, or assign the policy directly to each user.

Users in Multiple Security Groups with Different Policies

When a user belongs to several groups that have different messaging policies, Teams applies the policy from the group with the highest priority. Priority is determined by the order in which you assign the groups. To change the priority, use the Set-CsGroupPolicyAssignment cmdlet with the -Priority parameter. The lower the number, the higher the priority.

Teams Messaging Policy Does Not Apply to External or Guest Users

Group policy assignment works only for users in your organization. Guest users are not affected. If you need to control messaging for guests, create a separate messaging policy and assign it directly to the guest users in the Teams admin center.

Teams Messaging Policy Update Methods Compared

Item Teams Admin Center PowerShell
Time to apply Up to 24 hours Usually 30 minutes to 2 hours
Requires admin role Teams admin or Global admin Teams admin or Global admin
Can set priority No Yes, with Set-CsGroupPolicyAssignment
Supports dynamic groups No No
Best for Quick manual changes Automation and bulk updates

You now know why group-based messaging policy updates lag and how to force them. Use the PowerShell method to reapply the assignment and verify the effective policy with Get-CsUserPolicyAssignment. For persistent delays, check the group type and the priority order. Next, try the Set-CsGroupPolicyAssignment cmdlet to fine-tune the priority across multiple groups.

ADVERTISEMENT