Teams missing dial pad


Some users are experiencing an issue with Microsoft 365 displaying the dial pad. Dialing numbers is no longer working as expected. Some users have even reported that they’re unable to access their dialing history on their phone.

It’s possible that this an isolated issue that is being caused by a specific update or configuration change. However, it’s also possible that there is a more general problem with the way Microsoft 365 handles dialing numbers.

In summary,

  • Unable to see dial pad in Teams
  • Phone icon or phone tab is missing in Teams



Since the sudden growth of IM service demands issue with Teams\Skype Dial Pad Missing has become a common problem in the Microsoft 365 space. Here’s a quick checklist for you.

Check if user configuration and provisioning status

  • Firstly, always verify the deployment/environment (Pure Onine, SfB Hybrid, Direct Routing etc.)
  • After that, check licensing status of Phone Systems and Calling Plans
  • Finally, get the results of Get-CsOnlineUser from SfBO PowerShell look for MCO Validation Errors, Provisioning Timestamp & Counters.



MCOValidationError are cause by some common data issue :

  • Duplicate User Principal Name detected within the tenant.
  • SIP address already in use by another account within the tenant.
  • SIP address or LineURI not being in the correct format.
  • Common hybrid related DNS issues that could break federation for on-premise based tenant​​​​​​​.
  • LastSyncTimeStamp (Timestamp of when the last Sync process completed)
  • LastProvisionTimeStamp (Timestamp of when the last Provisioning process completed)
  • LastPublishTimeStamp (Timestamp of when the last Publish process completed)
  • LastSubProvisionTimeStamp (Timestamp of when the last Sub-provisioning process completed)
  • ProvisioningStamp (A value in this field implies that a Provisioning step is outstanding)
  • SubProvisioningStamp (A value in this field implies that a Sub-provisioning step is outstanding)
  • PublishingStamp (A value in this field implies that a Publishing step is outstanding)
  • ProvisioningCounter tracks how many times a Provision process has been attempted. For instance,a value greater than 3-5 usually indicates a problem requiring Microsoft Support engagement.
  • SubProvisioningCounter tracks how many times a Sub-provision process has been attempted. For instance, a value greater than 3-5 usually indicates a problem requiring Microsoft Support engagement.
  • PublishingCounter tracks how many times a Publishing process has been attempted. For instance, a value greater than 3 usually indicates a problem requiring Microsoft Support engagement.
  • MCOValidationError (If a value is present, indicates that the provisioning system has detected an issue with the user data that needs to be addressed by tenant admin before provisioning can complete.)
  • SIPAddress and SIPProxyAddress (Helps verify that the SIP address and Proxy SIP Address are as desired, a core component before a user can sign-in).



  • Enabled – Verifies that the system believes the user is enabled for service.
  • RegistrarPool – the specific Skype for Business Online pool where the user resides. Consequently, user sign-in cannot happen if there is no RegistrarPool defined.
  • HostingProvider – Indicates where the user is homed. SRV: represents on-premise, on the other hand indicates the user is homed online.


Basic isolation

Isolate if the issue only exist to all user or only specific to a user. For example, the issue only happens to a group of user or the issue is service wide. Consequently, you will be able to rule out things and find a clearer path where the issue resides.  

Test calls

Do test calls to the affected users to see if they are able to receive calls. Meanwhile, capture the error prompt you will receive. Consequently, the output could lead you to a topic found in the internet or even a solution.  

Admin center verification

Check Teams and Skype Admin Center > Users

See if Phone System is set to “on” or if there is a phone number assigned to the user  

Admin center (legacy) verification

Check also Teams and Skype Admin Center > Legacy Portal > Voice > Voice Users

See if affected user is listed  

Check EnterpriseVoiceEnabled

Run Get-CSOnlineUser and see if EnterpriseVoiceEnabled is set to True  

Client isolation

Try and log in to other machines for isolation. Similarly, ruling out the desktop-side component that is interfering with the functionality.

Service isolation (if applicable)

Log in to Skype for Business client and see if Dial Tab is showing. However, you only perform this if the tenant have not been upgraded to Teams or if they it is set to Islands.  

Web logs

1. Login to the web version of MS Teams (

2. Press ‘CTRL+ALT+SHIFT+1’ (Make sure to use the numbers found on the upper part of your keyboard instead of the numpad)

3. After that, we should have the following values below for a healthy account













Re-create VoiceRoutingPolicy

Create a custom policy and assign to affected user

New-CsOnlineVoiceRoutingPolicy -Identity name_of_policy


Get-CsOnlineUser -Identity [email protected] | fl *onlinevoiceroutingpolicy*

Grant-CsOnlineVoiceRoutingPolicy -PolicyName name_of_policy -Identity [email protected]

Get-CsOnlineUser -Identity [email protected] | fl *onlinevoiceroutingpolicy*

If you are getting an error on the “Grant-CsVoiceRouting Policy, skip this and proceed to whats next on the list.. [Give ample time to propagate]  

Re-trigger license

Re-assign License (turn off Calling Plan and Phone System ONLY). In addition, leave it for hour and before re-assigning the license. In my experience, I will give 4 – 24 hours replication time before reproducing the issue.  

Re-trigger EnterpriseVoice

Reset EnterpriseVoice status

Set-CsUser -Identity [email protected] -EnterpriseVoiceEnabled $False

#Give around 5 minutes propagation before running the next cmdlets

Set-CsUser -Identity [email protected] -EnterpriseVoiceEnabled $True


Re-setup Teams app policies

Recreate App Policies

Firstly, Go to Microsoft Teams Admin Center > Teams Apps > Setup Policies > Add > Add app setup Policy ( Put a description ) and then highlights everything ( Activity, Chat, Teams, Calendar, Calling and Files ) > SAVE.

After that, go to users > select the name of the affected account > Policies > Edit and set up everything to the policy that you’ve created > Apply.

Use app setup policies to pin and auto-install apps for users