When a Teams Room shows "calendar sync failed" or meetings don't appear, the cause is almost always the room's resource account mailbox in Exchange Online: a wrong password or sign-in block, a missing license, or calendar processing settings that decline, strip or delete invites. Most fixes are made with the Exchange Online PowerShell command Set-CalendarProcessing on the room mailbox.

Quick diagnosis
| Symptom | Most likely cause |
|---|---|
| "Calendar sync failed" / no meetings at all | Sign-in, password, license or Conditional Access blocking Exchange |
| Some meetings missing | Invites declined by booking policy, or sent outside allowed hours |
| External invites not showing |
ProcessExternalMeetingMessages is off |
| Forwarded invites missing | Room only processes invites sent directly to it |
| Title shows organizer name instead of subject |
DeleteSubject and AddOrganizerToSubject defaults |
| No Join button | Meeting body or comments stripped, so the join link is gone |
Step 1: Check sign-in and license
- In the Teams admin center, open the device and check the account and calendar health status. See Teams admin center.
- Confirm the resource account has a Teams Rooms license. See Teams Rooms license errors.
- Confirm the password hasn't expired. Set resource account passwords to never expire where your policy allows.
- Check Entra ID sign-in logs for failures from Conditional Access or MFA. Rooms can't complete MFA prompts. See Teams Rooms sign-in problems.
- Restart the device after fixing the account.
Step 2: Check calendar processing
Connect to Exchange Online PowerShell and view the room's settings:
Get-CalendarProcessing -Identity "room@contoso.com" | Format-List
Recommended baseline for a Teams Room (adjust to your policy):
Set-CalendarProcessing -Identity "room@contoso.com" -AutomateProcessing AutoAccept -AddOrganizerToSubject $false -DeleteComments $false -DeleteSubject $false -ProcessExternalMeetingMessages $true -RemovePrivateProperty $false
What each setting does:
| Setting | Recommended | Effect |
|---|---|---|
| AutomateProcessing | AutoAccept | Room accepts or declines automatically, so meetings appear |
| DeleteComments | $false | Keeps the invite body, which contains the Teams join link |
| DeleteSubject | $false | Keeps the meeting title |
| AddOrganizerToSubject | $false | Stops replacing the title with the organizer's name |
| ProcessExternalMeetingMessages | $true | Accepts invites from outside your organization |
| RemovePrivateProperty | $false | Keeps the private flag set by the organizer |
Changes can take some time to reach the device.
Meeting title not showing
By default, Exchange room mailboxes delete the subject and add the organizer's name, so the room shows "John Smith" instead of the meeting title. Set DeleteSubject $false and AddOrganizerToSubject $false. Meetings marked private may still show only the organizer by design; that protects private meeting details.
External invites not accepted
Set ProcessExternalMeetingMessages $true. Also check:
- Mail flow rules or spam filters that block external calendar messages to room mailboxes
- Booking policies (
AllBookInPolicy,BookInPolicy) restricting who can book - External Teams meetings need the room allowed to join external meetings in Teams policies
Forwarded invites not accepted
When an attendee forwards an invite to the room, Exchange may treat it as a forwarding notification rather than a direct booking. Options:
- Ask organizers to add the room as a resource or attendee directly.
- Allow external/forwarded processing as above, and check that the room's booking policy accepts the forwarder.
Direct invites are the reliable way to book rooms.
Meetings declined unexpectedly
Check these booking limits:
| Setting | What to look for |
|---|---|
| BookingWindowInDays | Meeting too far in the future |
| MaximumDurationInMinutes | Meeting too long |
| AllowConflicts | Room already booked |
| AllowRecurringMeetings | Recurring series declined |
| ScheduleOnlyDuringWorkHours | Meetings outside work hours declined |
The decline email to the organizer usually names the reason.
Join button missing on Zoom or Webex meetings
Teams Rooms can join some third-party meetings when Direct Guest Join is on. The join link must survive in the invite, so DeleteComments must be $false. See join Zoom or Google Meet from a Teams Room.
Still failing?
- Sign in to Outlook on the web as the resource account and check the calendar shows the meetings.
- If meetings are in the mailbox but not on the device, restart the device and check its network access to Microsoft 365 endpoints. See Teams Rooms network requirements.
- Update the Teams Rooms app. See update Teams Rooms.
- Collect logs from the device and review the Teams admin center health report.
More fixes in Teams Rooms troubleshooting. Setting up a new room account? See how to set up a conference room in Outlook.
Planning new Teams Rooms? Get a hardware recommendation and quote.
Related guides
Outfitting several rooms, or reselling? Get a volume quote or apply for wholesale pricing →





