← All articlesTeams

Teams Phone: Calling Plans vs Direct Routing

Ishfaq Nazir · Microsoft & Azure Cloud Security Architect 2/22/2026 8 min read

Introduction

Organizations globally are rapidly adopting Microsoft Teams as their primary platform for collaboration, and an increasingly critical component of this strategy is Teams Phone. Moving beyond basic chat and video conferencing, Teams Phone transforms Teams into a full-fledged enterprise voice solution, enabling users to make and receive calls much like a traditional Private Branch Exchange (PBX) system. However, a common dilemma arises when planning this transition: how does voice connectivity to the outside world actually work?

This article delves into the two primary methods for connecting Teams Phone to the Public Switched Telephone Network (PSTN): Microsoft Calling Plans and Direct Routing. We will dissect each approach, highlighting their technical underpinnings, implementation considerations, and suitability for different organizational needs. By understanding the nuances of both, IT professionals and decision-makers can make informed choices to optimize their Teams Phone deployment.

Why this matters

The choice between Microsoft Calling Plans and Direct Routing is more than a technical preference; it has significant implications for your organization's cost structure, operational flexibility, compliance posture, and overall voice resilience. A poorly chosen solution can lead to inflated communication expenses, limited telephony features, difficulties in meeting regulatory requirements, or an inability to integrate with existing critical third-party systems.

For businesses subject to strict regulatory compliance (e.g., financial services, healthcare), features like call recording, emergency services (E911/112), and specific routing capabilities might dictate the necessity of Direct Routing. Organizations with existing telephony infrastructure, long-term contracts with telecom providers, or a global presence might find Direct Routing offers the cost efficiency and centralized control they need. Conversely, smaller businesses or those seeking a streamlined, fully managed solution might prioritize the simplicity and predictable costs of Calling Plans. The decision directly impacts end-user productivity by ensuring reliable and feature-rich voice communications, while also influencing the IT team's operational overhead and the organization's ability to adapt to future communication needs.

Key concepts

  • Teams Phone (formerly Microsoft 365 Phone System): The Microsoft technology that enables call control functionalities and PBX capabilities within Teams, linking users to the PSTN. It is a feature included with various Microsoft 365 licenses (e.g., E5, Phone System add-on).
  • Public Switched Telephone Network (PSTN): The worldwide network of telephone lines, cables, and satellites that connects telephones to each other.
  • Microsoft Calling Plans: Microsoft's all-in-one telephony solution where Microsoft acts as the PSTN carrier. Users purchase domestic, international, or domestic and international minute bundles directly from Microsoft.
  • Direct Routing: A method that allows organizations to connect their own PSTN trunk (e.g., SIP trunk, ISDN PRI) to Teams Phone via a certified Session Border Controller (SBC). The SBC acts as an intermediary, translating signaling and media between Teams Phone and the telco.
  • Session Border Controller (SBC): A network element that protects and manages SIP-based real-time communications. For Direct Routing, it's a certified hardware or software appliance that sits on-premises or in an IaaS environment (Azure, AWS, GCP).
  • SIP Trunking: A method of delivering phone calls over an internet connection, replacing traditional analog lines or ISDN PRIs. It's the primary way most SBCs connect to a PSTN carrier for Direct Routing.
  • PSTN Usage Records: In Direct Routing, these define the authorization for users to make specific types of calls (e.g., internal, local, international). They are assigned to voice routes.
  • Voice Routes: In Direct Routing, these define the path that calls take to reach the PSTN via specific SBCs, based on patterns matching dialed numbers and associated PSTN usage.

Step-by-step implementation

Implementing Direct Routing involves several key steps, focusing on configuring the SBC and then integrating it with Teams. For Calling Plans, the process is largely provisioning licenses and assigning phone numbers. Let's outline the steps for Direct Routing, a more complex scenario.

  1. Acquire and Configure a Certified SBC: Purchase or deploy an SBC certified for Microsoft Teams Direct Routing. This can be hardware or a virtual appliance in Azure. Initial configuration involves network settings, SIP trunk setup to your PSTN carrier, and basic security hardening.
  2. Configure SBC Certificates: Install a publicly trusted SSL certificate on your SBC. This certificate will be used to establish a secure TLS connection with the Teams Phone service.
  3. Ensure Network Connectivity: Open necessary firewall ports for signaling (port 5061 TLS) and media (UDP ports 1024-65535, typically restricted to a smaller range by SBC configuration) between your SBC, Microsoft's global Direct Routing infrastructure, and your internal network. Review learn.microsoft.com/microsoft-365/enterprise/urls-and-ip-address-ranges for up-to-date IP ranges.
  4. Connect the SBC to Teams Phone:

Use PowerShell to register your SBC with Microsoft Teams Phone. This involves specifying the SBC FQDN and signaling port. ``powershell Connect-MicrosoftTeams New-CsOnlinePSTNGateway -Identity "sbc.yourcompany.com" -SipSignalingPort 5061 -MaxConcurrentSessions 100 -MediaBypass $false -ForwardCallHistory $true -InboundSipRoutes @{Identity="sip.pstn.yourcompany.com"} ``

  1. Create PSTN Usage Records and Voice Routes: Define what types of calls users can make and which SBCs those calls should traverse.

```powershell # Create PSTN Usage for domestic calls Set-CsOnlinePSTNUsage -Identity Global -Usage @{Add="Domestic"}

# Create a voice route for domestic calls through your SBC New-CsOnlineVoiceRoute -Identity "DomesticCalls" -NumberPattern "^\+?1([2-9][0-8][0-9]|[2-9][0-9][0-9])[2-9][0-9]{6}$" -OnlinePSTNGatewayList "sbc.yourcompany.com" -OnlinePSTNUsage "Domestic" -Priority 1 ```

  1. Create Online Voice Routing Policies: Assign PSTN usage records to policies, and then assign these policies to users.

``powershell New-CsOnlineVoiceRoutingPolicy -Identity "GlobalVoiceRoutingPolicy" -OnlinePSTNUsages "Domestic" Grant-CsOnlineVoiceRoutingPolicy -Identity "user@yourcompany.com" -PolicyName "GlobalVoiceRoutingPolicy" ``

  1. Assign Phone Numbers: For Direct Routing users, assign a Teams-enabled phone number from your existing numbering plan.

``powershell Set-CsPhoneNumberAssignment -Identity "user@yourcompany.com" -PhoneNumber "+12065550100" -PhoneNumberType DirectRouting ``

  1. Configure Emergency Calling: Set up emergency addresses and dynamic E911 routing within the Teams Admin Center or PowerShell to ensure location-based routing for emergency calls.

Example configuration

This JSON snippet illustrates a segment of a Teams Voice Routing Policy configuration, typically managed through PowerShell or the Microsoft Teams Admin Center. It defines how calls are categorized and routed for a specific user group.

{
  "Identity": "SalesVoicePolicy",
  "EffectivePSTNUsages": [
    "DomesticCalls",
    "InternationalCalls",
    "CompanyInternal"
  ],
  "Description": "Voice routing policy for the Sales Department, allowing domestic, international, and internal calls.",
  "IsDefault": false,
  "OnlinePSTNGatewayList": [
    {
      "Name": "sbc.eastus.yourcompany.com",
      "Priority": 1
    },
    {
      "Name": "sbc.westus.yourcompany.com",
      "Priority": 2
    }
  ],
  "RouteOverride": [
    {
      "RoutingIdentity": "CriticalSupportRoute",
      "NumberPattern": "^\\+1?800.*",
      "OnlinePSTNGatewayList": [
        {
          "Name": "sbc.priority.yourcompany.com",
          "Priority": 1
        }
      ]
    }
  ]
}

This JSON represents a conceptual CsOnlineVoiceRoutingPolicy structure. EffectivePSTNUsages lists which PSTN usage records are applicable. OnlinePSTNGatewayList indicates the SBCs available for routing, with priority. RouteOverride demonstrates how specific number patterns (e.g., toll-free numbers) can be directed to a dedicated SBC for specialized handling, showcasing the flexibility of Direct Routing policies.

Common pitfalls

  • SBC Certificate Misconfiguration: Incorrect or expired SSL/TLS certificates on the Session Border Controller (SBC) are a frequent cause of connection failures with Teams Phone. The certificate must be publicly trusted and include the SBC's FQDN.
  • Firewall and Network Issues (Direct Routing): Restrictive on-premises firewalls blocking necessary signaling (TLS 5061) or media (UDP range) traffic between the SBC and Microsoft 365, or incorrect NAT configurations, can prevent calls from connecting or result in one-way audio.
  • Improper Dial Plan and Voice Routing (Direct Routing): Misconfigured normalization rules, PSTN usages, or voice routes can lead to calls failing, routing to the wrong destination, or users being unable to dial certain numbers. This requires careful testing of number patterns.
  • Codec Mismatch and Media Bypass Problems (Direct Routing): Inconsistent audio codecs between the SBC, Teams client, and PSTN carrier, or misconfigured media bypass settings, can cause audio quality issues or call failures.
  • Lack of Emergency Calling Configuration: Neglecting to properly configure emergency addresses, emergency locations, and emergency calling policies in Teams can result in critical delays or failures during emergency situations, leading to severe compliance and safety risks.
  • Underestimating Teams License Requirements: Assuming that just having Microsoft 365 is enough for Teams Phone. Users require a Phone System license (either standalone or included in E5/A5/G5) in addition to their core Microsoft 365 license. For Calling Plans, an additional Calling Plan license is needed.

Best practices

  • Adopt a Phased Rollout: Begin with a pilot group of users to thoroughly test functionality, voice quality, emergency calling, and system integrations before a full organizational deployment. This aligns with the "Iterate" principle of the Microsoft Cloud Adoption Framework.
  • Prioritize Security with Zero Trust: Ensure all components, especially SBCs in Direct Routing, adhere to Zero Trust principles. Implement strong authentication, least privilege access, network segmentation, and continuous monitoring. Regularly update SBC firmware and OS patches.
  • Establish Robust Monitoring and Alerting: Implement comprehensive monitoring for both Calling Plans (via Teams Admin Center analytics) and Direct Routing (SBC health, call quality metrics, network performance). Integrate with Azure Monitor or third-party monitoring tools to proactively identify and resolve issues.
  • Document Dial Plans and Routing Logic: Maintain detailed documentation of your normalization rules, PSTN usages, voice routes, and call flow logic, especially for complex Direct Routing setups. This is crucial for troubleshooting and future enhancements.
  • Design for Resilience and High Availability: For Direct Routing, deploy geographically redundant SBCs and consider multiple PSTN carriers to ensure business continuity. For Calling Plans, understand Microsoft's inherent redundancy and plan for internet connectivity resilience. This aligns with the "Reliability" pillar of the Azure Well-Architected Framework.
  • Leverage Microsoft Learn Resources: Continuously reference official Microsoft Teams Phone documentation on learn.microsoft.com for the latest best practices, configuration guides, and feature updates. The Teams ecosystem evolves rapidly.

Further reading

#Teams Phone#Voice

Related articles