Teams PhoneNovember 28, 202412 min read

Microsoft Teams Shared Calling — Everything You Need to Know

Chandra

Chandra

SwiftM365 | Building for the M365 community

For years, enabling PSTN calling in Microsoft Teams meant one thing: assign every user their own phone number. For a 5,000-user organization where only 2,000 people actually need to make external calls, that meant paying for 5,000 Calling Plan licenses or 5,000 Direct Routing sessions — even if 60% of those users only needed to receive the occasional transferred call or make one external call per month.

Shared Calling changes this equation fundamentally. Introduced in late 2023 and now generally available, it allows Teams users to make and receive PSTN calls using a shared resource account's phone number — without needing their own personal DID. This is the most significant cost optimization feature Microsoft has added to Teams Phone since its launch.

What is Shared Calling?

In the simplest terms: instead of assigning a phone number to every user, you assign a phone number to a resource account linked to an Auto Attendant. Users are then assigned a Shared Calling policy that points to that resource account. When they make outbound PSTN calls, the caller ID shows the resource account's number (your company's main number). For inbound calls, the Auto Attendant handles routing to the correct person.

The Before and After

Before Shared Calling (Traditional Model):

  • User A: +1-425-555-0001 (personal DID)
  • User B: +1-425-555-0002 (personal DID)
  • User C: +1-425-555-0003 (personal DID)
  • Each user needs: Teams Phone license + phone number + Calling Plan or DR
  • With Shared Calling:

  • Resource Account: +1-425-555-0000 (company main number)
  • User A, B, C: No personal numbers — use the shared number for outbound
  • Auto Attendant: Routes inbound calls to users by name/extension
  • Each user needs: Teams Phone license + Shared Calling policy (no number needed)
  • Who Should Use Shared Calling?

    Shared Calling is ideal for:

  • Frontline workers who occasionally need to call customers but don't need a personal DID
  • Back-office staff who rarely make external calls
  • Retail employees who use a store's main number for outbound calls
  • Healthcare workers who call patients from a department number
  • Organizations migrating from PBX where users had extensions, not DIDs
  • Cost-conscious deployments where assigning 5,000 DIDs isn't justified
  • Shared Calling is NOT ideal for:

  • Executives who need a personal direct number
  • Sales teams where personal caller ID matters
  • Users who receive high volumes of direct inbound calls
  • Contact center agents (use Call Queue instead)
  • Prerequisites and Licensing

    Before configuring Shared Calling, ensure you have:

    RequirementDetails
    Teams Phone licenseRequired for every Shared Calling user
    Resource Account licenseMicrosoft Teams Phone Resource Account license
    Calling Plan or DRFor the resource account (not individual users)
    Phone numberAssigned to the resource account
    Auto AttendantMust be configured and linked to the resource account
    Emergency addressMust be assigned to the resource account's number
    The cost savings are significant. Instead of 5,000 Calling Plan licenses at $8-$12/user/month, you might need only 500 personal numbers plus a few resource accounts with Pay-As-You-Go minutes for Shared Calling users. The savings can be 50-70% on PSTN costs.

    Step-by-Step Configuration

    Step 1: Create a Resource Account

    In Teams Admin Center → Voice → Resource Accounts → Add:

  • Display name: Main Line - Shared Calling
  • Username: mainline-shared@contoso.com
  • Resource account type: Auto Attendant
  • Or via PowerShell:

    New-CsOnlineApplicationInstance -UserPrincipalName mainline-shared@contoso.com -DisplayName "Main Line - Shared Calling" -ApplicationId "ce933385-9390-45d1-9512-c8d228074e07"

    Step 2: License the Resource Account

    Assign these licenses in Entra ID (Azure AD):

  • Microsoft Teams Phone Resource Account license
  • Microsoft Teams Domestic Calling Plan (or Pay-As-You-Go)
  • For Direct Routing: No calling plan needed — just the Resource Account license.

    Step 3: Assign a Phone Number to the Resource Account

    In Teams Admin Center → Voice → Phone Numbers → Assign to the resource account.

    Or PowerShell:

    Set-CsPhoneNumberAssignment -Identity mainline-shared@contoso.com -PhoneNumber "+14255550000" -PhoneNumberType DirectRouting

    Step 4: Assign Emergency Address

    This step is critical — you cannot create a Shared Calling policy without an emergency address on the resource account.

    Set-CsPhoneNumberAssignment -Identity mainline-shared@contoso.com -PhoneNumber "+14255550000" -PhoneNumberType DirectRouting -LocationId

    Get the LocationId with:

    Get-CsOnlineLisLocation | Select LocationId, Location, City

    Step 5: Create an Auto Attendant

    In Teams Admin Center → Voice → Auto Attendants → Add:

  • Name: Main Line Auto Attendant
  • Resource account: mainline-shared@contoso.com
  • Time zone and language: Set appropriately
  • Call flow: Configure greeting, menu options, or dial-by-name
  • Business hours: Set your operating hours
  • After hours: Configure voicemail or alternate routing
  • The Auto Attendant handles all inbound calls to the shared number and routes them to the appropriate user via name dial, extension dial, or menu selection.

    Step 6: Create the Shared Calling Policy

    In Teams Admin Center → Voice → Shared Calling Policies → Add:

  • Name: Main Line Shared Calling
  • Resource account: mainline-shared@contoso.com
  • Emergency callback numbers: Add numbers from your number pool (must match resource account number type and country)
  • Or PowerShell:

    New-CsTeamsSharedCallingRoutingPolicy -Identity "MainLineShared" -ResourceAccountObjectId -EmergencyNumbers @{add="+14255551111","+14255551112"}

    Step 7: Enable Enterprise Voice for Users

    Each Shared Calling user must have Enterprise Voice enabled but NO phone number assigned:

    Set-CsPhoneNumberAssignment -Identity user@contoso.com -EnterpriseVoiceEnabled $true

    Important: Do NOT assign a phone number to Shared Calling users. If a user has both a personal number and a Shared Calling policy, the personal number takes precedence.

    Step 8: Assign the Shared Calling Policy to Users

    Grant-CsTeamsSharedCallingRoutingPolicy -Identity user@contoso.com -PolicyName "MainLineShared"

    Or assign to a group:

    New-CsGroupPolicyAssignment -GroupId -PolicyType TeamsSharedCallingRoutingPolicy -PolicyName "MainLineShared"

    Step 9: Configure Voice Routing Policy (Direct Routing Only)

    For Direct Routing deployments, Shared Calling users need a Voice Routing Policy with PSTN usages that match the resource account's routing:

    Grant-CsOnlineVoiceRoutingPolicy -Identity user@contoso.com -PolicyName "SharedCallingVRP"

    How Calls Work with Shared Calling

    Outbound Calls

  • User opens Teams dialer and dials an external number
  • Teams applies the Shared Calling policy → identifies the resource account
  • The call is placed using the resource account's phone number as caller ID
  • The called party sees the company's main number (not the user's name or personal DID)
  • If the called party calls back, the call goes to the Auto Attendant
  • Inbound Calls

  • External caller dials the company's main number
  • The call reaches the Auto Attendant linked to the resource account
  • The Auto Attendant plays the greeting and offers options:
  • - Dial by name (caller says or types the person's name)

    - Dial by extension (if configured)

    - Menu options ("Press 1 for Sales, 2 for Support...")

  • The call is transferred to the internal user
  • Emergency Calls

  • User dials 911 (or local emergency number)
  • Teams uses the emergency callback number from the Shared Calling policy
  • Location information (from dynamic E911 configuration) is included
  • If the PSAP calls back, the call routes to the emergency callback number, not the Auto Attendant
  • Advanced Scenarios

    Multiple Shared Calling Policies

    You can create multiple policies for different departments:

  • Sales Department: Uses +1-425-555-1000 (Sales Auto Attendant)
  • Support Department: Uses +1-425-555-2000 (Support Auto Attendant)
  • General Staff: Uses +1-425-555-0000 (Main Auto Attendant)
  • Each policy points to a different resource account with its own phone number and Auto Attendant.

    Hybrid: Some Users Personal, Some Shared

    A single tenant can mix personal numbers and Shared Calling:

  • Executives: Personal DIDs (+1-425-555-0001, etc.)
  • Sales team: Personal DIDs (for callback purposes)
  • All other staff: Shared Calling policy
  • This hybrid model gives you the best of both worlds — personal numbers where they matter, shared calling where they don't.

    Multi-Site Shared Calling

    For organizations with multiple offices, create separate Shared Calling policies per site:

  • New York office: +1-212-555-0000 → NY Auto Attendant
  • London office: +44-20-7946-0000 → London Auto Attendant
  • Mumbai office: +91-22-2345-0000 → Mumbai Auto Attendant
  • Each site's users get the local Shared Calling policy, ensuring outbound calls show the correct local number.

    Common Mistakes and Troubleshooting

    Mistake 1: No Emergency Address on Resource Account

    Symptom: "Save" button greyed out when creating Shared Calling policy

    Fix: Assign an emergency address to the resource account's phone number before creating the policy

    Mistake 2: User Has Both Personal Number and Shared Policy

    Symptom: User's outbound calls use personal number, not shared number

    Fix: Remove the personal number if you want Shared Calling to take effect. Personal numbers always take precedence.

    Mistake 3: No Voice Routing Policy (Direct Routing)

    Symptom: Shared Calling users can't make outbound PSTN calls

    Fix: Assign a Voice Routing Policy with valid PSTN usages to each Shared Calling user

    Mistake 4: Resource Account Not Licensed

    Symptom: Phone number can't be assigned to resource account

    Fix: Assign both the Teams Phone Resource Account license AND a Calling Plan (or configure DR) to the resource account

    Mistake 5: Forgetting Pay-As-You-Go Minutes

    Symptom: Outbound calls fail after a period of use

    Fix: For Calling Plan resource accounts, ensure Communication Credits or a Pay-As-You-Go plan is funded. When minutes run out, outbound calls stop.

    Mistake 6: Emergency Callback Number Mismatch

    Symptom: Policy creation fails or emergency calls don't route correctly

    Fix: Emergency callback numbers must match the phone number type (DirectRouting, CallingPlan, or OperatorConnect) AND country of the resource account.

    Cost Comparison: Shared Calling vs Traditional

    For a 2,000-user organization where 500 users need personal DIDs:

    ModelMonthly Cost (Approx)
    Traditional (2,000 DIDs + Calling Plans)$16,000-$24,000/month
    Hybrid (500 DIDs + 1,500 Shared Calling + PAYG)$6,000-$10,000/month
    Savings50-60% reduction
    The exact savings depend on call volume, but for organizations where most users make fewer than 20 external calls per month, Shared Calling is dramatically more cost-effective.

    Limitations to Be Aware Of

  • Shared Calling users cannot receive direct inbound calls — all inbound goes through the Auto Attendant
  • Caller ID on outbound calls shows the shared number, not the user's identity
  • Call Park, Call Pickup, and Delegate features work differently with Shared Calling
  • Not supported in certain countries (Romania, Czech Republic, Hungary, Singapore, New Zealand, Australia, Japan as of 2025)
  • Emergency callback requires careful configuration of the number pool
  • Final Thoughts

    Shared Calling is one of the most underutilized features in Teams Phone. Every organization I've assessed has users who don't need personal phone numbers but still need occasional PSTN access. Shared Calling fills this gap elegantly — and the cost savings are real.

    My recommendation: audit your organization's call patterns. Identify users who make fewer than 5 external calls per week. Those users are prime candidates for Shared Calling. The ROI speaks for itself.

    Need help setting up your resource accounts and voice routing for Shared Calling? SwiftM365 can generate resource accounts in bulk, configure dial plans, and build voice routing policies — all from a simple web interface.

    ---

    Have questions about Shared Calling configuration? Reach out via our feedback page or contact me directly at +91 9011070193.

    Chandra

    Written by Chandra

    Passionate about simplifying Microsoft 365 administration for the community. Building free tools so admins can focus on what matters.

    0
    0

    Comments (0)

    Sign in to join the conversation

    No comments yet. Be the first to share your thoughts!

    Subscribe to our blog

    Get the latest posts delivered to your inbox