How to Configure Teams CART Captions Policies in PowerShell Using Set-CsTeamsMeetingPolicy

While Microsoft Teams provides automated AI-driven speech-to-text live captions, accessibility compliance standards (such as Section 508 and the Americans with Disabilities Act) and specialized legal, medical, and executive conferences frequently require human real-time speech-to-text reporting. Communication Access Realtime Translation (CART) allows professional human captioners to stream synchronized real-time transcripts directly into a Microsoft Teams meeting via an API endpoint. To govern data loss prevention, prevent unauthorized streaming connections, and ensure meeting privacy, Microsoft 365 administrators control CART availability through Teams meeting policies. This article demonstrates how to query, configure, and assign CART caption policies across an organization in PowerShell using Set-CsTeamsMeetingPolicy.

Understanding CART Captions in Microsoft Teams Meetings

Unlike automated machine transcription, CART transcription involves a trained human stenographer or court reporter listening to meeting audio and inputting speech using specialized shorthand phonetic keyboards. In Microsoft Teams, CART functions through dedicated webhooks:

  • When an authorized meeting organizer schedules a meeting with CART enabled, Teams generates a unique CART invitation link containing an ingress token.
  • The professional captioner enters this link into their specialized captioning software (such as 1CapApp, Eclipse, or StreamText).
  • As speech is transcribed, the software posts formatted text frames to the Teams meeting service over HTTPS, rendering synchronized captions in the meeting window alongside participant video.

Because CART integration requires external data transmission to third-party captioning services, tenant administrators must decide whether CART is permitted globally, restricted to specific departments (such as legal or accessibility accommodation units), or completely disabled for sensitive executive discussions.

Connecting to the Microsoft Teams PowerShell Module

To inspect and modify meeting policies, launch an elevated PowerShell session and establish an administrative session with your Microsoft 365 tenant:

Connect-MicrosoftTeams

Authenticate with credentials possessing the Teams Administrator or Global Administrator administrative role.

Querying Current CART Captions Policy Configurations

CART caption permissions are regulated by the AllowCartCaptions boolean parameter within CsTeamsMeetingPolicy. To check the tenant-wide default setting in the Global policy, run:

Get-CsTeamsMeetingPolicy -Identity Global | Select-Object Identity, Description, AllowCartCaptions

To audit CART caption settings across all custom meeting policies in your tenant, execute:

Get-CsTeamsMeetingPolicy | Select-Object Identity, AllowCartCaptions | Format-Table -AutoSize

If AllowCartCaptions is set to False across your policies, meeting organizers will not see the CART captions toggle within their meeting options interface.

Enabling or Disabling CART Captions Globally

If your organization wants to make professional human captioning accessible to all meeting organizers by default, enable the feature on the Global organizational policy:

Set-CsTeamsMeetingPolicy -Identity Global -AllowCartCaptions $true

Conversely, in high-security organizations or government tenants where external captioning API endpoints are prohibited due to data sovereignty mandates, ensure CART is disabled globally:

Set-CsTeamsMeetingPolicy -Identity Global -AllowCartCaptions $false

Creating and Assigning Custom CART Meeting Policies

In many enterprise scenarios, administrators prefer a zero-trust model where CART captions are restricted by default and granted only to authorized departments (such as Human Resources, Accessibility & Inclusion teams, or Legal counsel). To implement this strategy, create a targeted custom meeting policy:

New-CsTeamsMeetingPolicy -Identity "Accessibility-CART-Allowed" -Description "Permits meeting organizers to generate CART caption links for accessibility" -AllowCartCaptions $true

Once created, assign the policy to an individual user responsible for organizing accessible corporate webinars or town halls:

Grant-CsTeamsMeetingPolicy -Identity "[email protected]" -PolicyName "Accessibility-CART-Allowed"

To scale policy assignment across an entire organizational department, bind the policy to an Entra ID (Azure AD) security group using New-CsGroupPolicyAssignment:

$GroupId = (Get-MgGroup -Filter "DisplayName eq 'Accessibility and Accommodation Team'").Id
New-CsGroupPolicyAssignment -GroupId $GroupId -PolicyType TeamsMeetingPolicy -PolicyName "Accessibility-CART-Allowed" -Rank 1

Verifying Policy Assignments and Organizer Meeting Options

To verify the effective meeting policy assigned to a specific user account, query the user policy assignment table:

Get-CsUserPolicyAssignment -Identity "[email protected]" | Where-Object { $_.PolicyType -eq "TeamsMeetingPolicy" }

Policy propagation across Microsoft Teams clients typically takes between 2 and 4 hours. Once propagated, authorized organizers will observe the Provide CART captions toggle within their Teams Meeting Options panel. Enabling the toggle generates the secure CART URL required by professional captioners, ensuring compliant, high-fidelity real-time transcription across corporate gatherings.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.