SIP (Session Initiation Protocol) trunking allows you to connect your existing telephony infrastructure directly to ElevenLabs Agents. This integration enables all customers to use their existing phone systems while leveraging ElevenLabs’ advanced voice AI capabilities.
With SIP trunking, you can:
Static IP SIP Servers
ElevenLabs offers SIP servers with static IP addresses for enterprise clients who require IP allowlisting for their security policies.
Our static IP infrastructure uses a /24 IP address block containing 256 addresses distributed across multiple regions (US, EU, and India). You must allowlist the entire /24 block in your firewall configuration.
For the default (US/International) environment, use sip-static.rtc.elevenlabs.io as your SIP endpoint. For isolated regions, use sip-static.rtc.in.residency.elevenlabs.io or sip-static.rtc.eu.residency.elevenlabs.io as needed. When using these endpoints, all traffic will originate exclusively from within that region. Specific whitelisting per-region is not available.
This feature is available for Enterprise accounts and can also be enabled during Enterprise trials for testing purposes. To request access, open a support ticket or contact your account representative. For more information, contact sales.
SIP trunking establishes a direct connection between your telephony infrastructure and the ElevenLabs platform:
When initiating calls to the ElevenLabs platform, you need to use the proper SIP URI format.
The ElevenLabs SIP trunk URI is:
To make a call, construct a complete SIP URI that includes an identifier:
Where:
+19991234567 is the identifier (typically a phone number in E.164 format)1000 or johnCommon Mistake: Do not initiate calls directly to sip@sip.rtc.elevenlabs.io:5060 without an
identifier. The SIP URI must include a phone number or identifier after the sip: prefix and
before the @ symbol.
SIP URI Format: A SIP URI follows the format
sip:identifier@domain:port where the identifier is required to route the call properly.
Before setting up SIP trunking, ensure you have:
Click on “Import a phone number from SIP trunk” button to open the configuration dialog.


Complete the basic configuration with the following information:

Configure the transport protocol and media encryption settings for enhanced security:


Security Best Practice: Use TLS transport with Required media encryption for maximum security. This ensures both signaling and media are encrypted end-to-end.
Configure where ElevenLabs should send calls for your phone number:
sip.telnyx.com). This should be a hostname or IP address only, not a full SIP URI.
Security Best Practice: Use TLS transport with Required media encryption for maximum security. This ensures both signaling and media are encrypted end-to-end.
The Address field specifies where ElevenLabs will send outbound calls from your AI agents. Enter only the hostname or IP address without the sip: protocol prefix.
If your SIP trunk provider requires specific headers for call routing or identification:
Custom headers are included with all outbound calls and can be used for:
Provide digest authentication credentials if required by your SIP trunk provider:
If left empty, Access Control List (ACL) authentication will be used, which requires you to allowlist ElevenLabs IP addresses in your provider’s settings.
Authentication Methods:
Digest Authentication is strongly recommended as it provides better security without relying on IP allowlisting, which can be complex to manage with dynamic IP addresses.
To ensure proper forwarding and traceability of call metadata, include the following custom SIP headers in your webhook payload and SIP INVITE request:
These headers enable the system to associate call metadata with the conversation and provide context for personalization.
If the standard headers above are not present, the system will automatically look for the Twilio-specific SIP header:
This fallback ensures compatibility with Twilio’s Elastic SIP Trunking without requiring configuration changes.
Once the relevant metadata is received through any of the supported headers, the caller_id and/or call_id are available in the pre-call webhook and as system dynamic variables.
Custom SIP X- headers from inbound SIP trunking calls are automatically exposed as dynamic variables in the conversation.
Header names are normalized by removing the X- prefix, converting the name to lowercase, replacing hyphens with underscores, and adding the sip_ prefix. For example, X-Contact-ID becomes {{sip_contact_id}}, and X-Campaign-ID becomes {{sip_campaign_id}}.
Use these variables in agent prompts, first messages, and tools to personalize the conversation with caller-provided context. The values are also visible in the conversation history under the Phone Call tab.
Reserved headers such as X-Call-ID and X-Caller-ID continue to map to system__call_sid and
system__caller_id. Custom inbound headers cannot override these system variables.
After importing your SIP trunk phone number, you can assign it to a ElevenLabs agent:
If you’re experiencing connection problems:
Important Network Architecture Information:
sip.rtc.elevenlabs.ioIf calls are failing due to authentication issues:
If you’re experiencing issues with TLS transport or media encryption:
If you’re having problems with custom headers:
X- prefix and review the Phone Call tab in the conversation historyIf the call connects but there’s no audio or audio only flows one way:
If you experience poor audio quality:
A 481 response on a BYE usually means the request reached a SIP server that does not have the dialog state for the call.
This often happens when the initial TCP connection has already closed and the BYE is re-sent to the generic load balancer address (for example sip.rtc.elevenlabs.io)
rather than the specific Contact URI returned in the 200 OK response.
Contact address from the INVITE response so the request reaches the same SIP server that handled the dialog.See RFC 3261 Section 8.1.1.8 for the normative behavior governing Contact headers and dialog routing.
Yes, SIP trunking allows you to connect your existing phone numbers directly to ElevenLabs’ ElevenAgents without porting them.
ElevenLabs is compatible with most standard SIP trunk providers including Twilio, Vonage, RingCentral, Sinch, Infobip, Telnyx, Exotel, Plivo, Bandwidth, and others that support SIP protocol standards. TLS transport and SRTP media encryption are supported for enhanced security.
Yes, TLS transport is highly recommended for production environments. It provides encrypted SIP signaling which enhances security for your calls. Combined with required media encryption, it ensures comprehensive protection of your communications. Always verify your SIP trunk provider supports TLS before enabling it.
UDP transport is not currently available. For security-critical applications, always use TLS transport.
Custom SIP headers allow you to include provider-specific information with outbound calls. Common uses include call routing, billing codes, caller identification, and meeting specific provider requirements.
The number of concurrent calls depends on your subscription plan. Enterprise plans typically allow for higher volumes of concurrent calls.
Yes, you can use your existing PBX system’s routing rules to direct calls to different phone numbers, each connected to different ElevenLabs agents.
Yes, the phone number format must be consistent between your SIP URI and your imported phone
number configuration. If you call the SIP URI with a leading + (e.g.,
sip:+19991234567@sip.rtc.elevenlabs.io:5060), you must also import the phone number with the
leading + (e.g., +19991234567). Similarly, if you call without the leading +, import the phone
number without it. Mismatched formats will prevent proper call routing.
Yes, ElevenLabs provides NAPTR and SRV records for RFC 3263 compliant SIP server discovery.