—— Platform comparison

Platform comparison

—— Platform comparison

SignalWire vs.

Telnyx

Both companies own carrier infrastructure. The difference is architectural: where the call state lives and where the AI sits relative to the media path.

SignalWire vs. Telnyx
SignalWire vs. Telnyx
Bottom Linear Gradient  Lines image
Bottom Linear Gradient  Lines image
Bottom Linear Gradient  Lines image

SignalWire positioning

Near the call is not the same as inside it.

SignalWire owns the engine the call runs in and puts the AI inside it.
That means the call is a stateful object your application instructs rather than tracks. Context survives transfers because it never left and behavior is enforced by code, not requested in a prompt.
Built by the FreeSWITCH team. 2,700+ companies, 2.7 billion minutes and messages annually.

Learn more →

Where the architecture differs

What Telnyx does well and where the architecture differs.

WHAT TELNYX DOES WELL

Telnyx owns GPU compute co-located with their telephony network. A good choice if regional inference residency, carrier-of-record requirements, or carrier control at the trunk-level drive the decision.

THE STRUCTURAL DIFFERENCE

SignalWire owns the engine the call runs in, with the AI kernel embedded inside it. Call state, transfers, conferencing, queuing, recording, and payment capture live in the platform, so your application instructs the call rather than tracking it.

Learn More →

Side by side

SignalWire vs. Telnyx, category by category.

Telnyx figures are quoted from their published materials and linked. SignalWire latency is measured with an open-source tool you can run yourself.

Category

Telnyx

SignalWire

Where the AI Runs

GPUs sit in the same data centers as their telephony points of presence.

The AI Kernel runs inside the media engine, with native access to call state, media, and control.

Media Engine Origin

Runs a public fork of FreeSWITCH.

Written and maintained by the same team who created FreeSWITCH.

AI Turn Taking Latency

Publishes sub-200ms for the compute loop and under one second end to end. Self-reported.

~1200ms typical full turns, 800ms optimized, 600ms with speech-to-speech. Measured with latency_checker.

Agent Governance

Visual workflows organize assistants, tools, routing, and handoffs.

Contexts and steps scope prompts, tools, and valid transitions at runtime, letting code constrain what the model can do next.

AI Handoffs

Purpose-built Agent Handoff transfers conversations between specialized AI assistants while preserving context and optionally the same voice.

AI Kernel primitives let agents switch roles, invoke other agents and return, transfer to another AI, or hand off to humans.

Tool & Call Control

Assistants use built-in tools and webhooks, with additional call control through the Voice API.

SWAIG results can return data and native call actions, changing state, workflow, tools, media, messaging, or transfers in one operation.

Model Strategy

Choose Telnyx-hosted models or bring third-party and OpenAI-compatible LLM providers.

Curated models, operated by the platform with cost in the rate, so you ship features instead of evaluating and tuning providers.

AI Voice Pricing

$0.05/min includes orchestration, speech-to-text, and hosted text-to-speech. LLM tokens and telephony are billed separately.

$0.16/min includes orchestration, speech-to-text, the LLM, and standard text-to-speech. Voice transport is billed separately.

*Disclosure Statement: SignalWire latency figures are measured end-of-speech to first audio from stereo call recordings using latency_checker, which is open source. Telnyx figures throughout are quoted from Telnyx's published materials.

Migration

Migrating from Telnyx

Whether the switch takes a weekend or a quarter comes down to how much orchestration you carry today.

01

Port or parallel-run your numbers

Number porting is supported, and you can run both platforms in parallel during cutover; no flag-day risk.

02

Keep your markup

If you are on TeXML, the Compatibility API accepts Twilio-style requests. Change the endpoint and credentials to get running without a rewrite.

03

Move to native

The Compatibility API is a bridge, not the destination. Declarative call scripting and real-time WebSocket control are where call state, embedded AI, and step-scoped tools live. Most teams migrate flows incrementally.

04

Build governed AI agents

Agent configurations become step-scoped agents. State, turn detection, and transfers are platform-native.

05

Talk to a migration specialist

Get a validated estimate for your setup, reviewed by an engineer.

01

Port or parallel-run your numbers

Number porting is supported, and you can run both platforms in parallel during cutover; no flag-day risk.

02

Keep your markup

If you are on TeXML, the Compatibility API accepts Twilio-style requests. Change the endpoint and credentials to get running without a rewrite.

03

Move to native

The Compatibility API is a bridge, not the destination. Declarative call scripting and real-time WebSocket control are where call state, embedded AI, and step-scoped tools live. Most teams migrate flows incrementally.

04

Build governed AI agents

Agent configurations become step-scoped agents. State, turn detection, and transfers are platform-native.

05

Talk to a migration specialist

Get a validated estimate for your setup, reviewed by an engineer.

01

Port or parallel-run your numbers

Number porting is supported, and you can run both platforms in parallel during cutover; no flag-day risk.

02

Keep your markup

If you are on TeXML, the Compatibility API accepts Twilio-style requests. Change the endpoint and credentials to get running without a rewrite.

03

Move to native

The Compatibility API is a bridge, not the destination. Declarative call scripting and real-time WebSocket control are where call state, embedded AI, and step-scoped tools live. Most teams migrate flows incrementally.

04

Build governed AI agents

Agent configurations become step-scoped agents. State, turn detection, and transfers are platform-native.

05

Talk to a migration specialist

Get a validated estimate for your setup, reviewed by an engineer.


A governed agent, in Pythondocs ↗
from signalwire import AgentBasefrom signalwire.core.function_result import FunctionResult class BillingAgent(AgentBase):    def __init__(self):        super().__init__(name="billing", route="/billing")        self.prompt_add_section("Role", body="You handle billing questions.")         # Each step is the model's entire world: its instructions, the tools it        # can call, and the only moves it is allowed to request.        ctx = self.define_contexts().add_context("default")        ctx.add_step("verify", task="Verify the caller's account number.",                     functions=["verify_account"], valid_steps=["charges"])        ctx.add_step("charges", task="Discuss the disputed charge.",                     functions=["file_dispute"], valid_steps=[])        ctx.add_step("done", task="Summarise the outcome and close.",                     functions=[], valid_steps=[])     @AgentBase.tool(name="file_dispute")    def file_dispute(self, amount: float, raw_data=None):        """File a dispute for a charge on the verified account."""        account = raw_data["global_data"]["account"]   # never enters the model's context        if amount < account["auto_resolve_limit"]:            return (FunctionResult("That charge has been reversed.")                    .update_global_data({"credited": amount})                    .swml_change_step("done"))        return FunctionResult("Connecting you with a specialist.").swml_change_step("done") BillingAgent().run()
Top Linear Gradient  Lines image

Customer proof

2,700+ companies build on SignalWire

Angular Gradient Image

“We're able to meet our customers' requests in hours. Not even days. Our development time is so short because SignalWire has so many of the capabilities built in.”

Avatar

Justin Massey

Founder and CEO at RelayHawk

Angular Gradient Image

“We're able to meet our customers' requests in hours. Not even days. Our development time is so short because SignalWire has so many of the capabilities built in.”

Avatar

Justin Massey

Founder and CEO at RelayHawk

Frequently asked questions

Frequently asked questions

Why do voice AI agents need a control plane instead of a CPaaS?

A CPaaS treats each interaction as a transaction: fire a webhook, get an event back, manage state yourself. That model breaks when AI is involved, because an agent needs context from earlier in the call and has to coordinate handoffs without losing the thread. A control plane keeps identity, state, lifecycle, and routing inside the platform. Your systems observe and instruct the call rather than reconstructing what happened from event logs.

How fast can I get an A2P 10DLC campaign approved?

Same-day brand approval and a 48-hour campaign turnaround, with concierge review to get the submission right the first time and real-time status tracking so you are never guessing.

Does SignalWire own its telephony infrastructure?

Yes. It is built by the FreeSWITCH team with no third-party CPaaS underneath. The same technology powering major UCaaS and CCaaS platforms for two decades, with native SIP connectivity and distributed PoPs.

Can I keep my phone numbers if I switch?

Yes. Number porting is supported, and you can run both platforms in parallel during cutover, so there is no flag-day risk.

How does SignalWire's pricing compare to Telnyx?

SignalWire is $0.16/min covering speech-to-text, the language model, text-to-speech, and orchestration, with transport separate at carrier rates. Telnyx publishes $0.05/min covering orchestration, speech-to-text, and their own text-to-speech, with language-model tokens and telephony billed separately. Compare what each rate includes before comparing the rates.

How does SignalWire measure its latency claims?

With the open-source latency_checker, which measures the full conversational round-trip on stereo recordings, not a single model hop. Typical turns land around 1200ms, 800ms on an optimized stack, and 600ms with speech-to-speech models. Be skeptical of sub-500ms claims that measure only part of the path.

Where does SignalWire's AI actually run?

Inside the media engine that carries the call. Speech recognition, the model, speech synthesis, and turn-taking run in the same code path that handles codecs, jitter buffer, and DTMF. That placement is why barge-in and endpointing happen at the audio level rather than across a network boundary. The programmable surface sits above it, so agents are configured through declarative call scripts and real-time WebSocket control without the audio leaving the engine.

What protocols does SignalWire support, and does context survive across them?

PSTN, SIP trunks, WebRTC browser clients, and messaging channels route to the same resources under the same logic. One agent handles phone, web, and messaging without separate code paths. Transfers between protocols preserve context, because the call is a stateful object rather than a series of transactions, and the protocol is a property of the connection rather than of the interaction.

Moving off Telnyx? See the difference on your own stack.

Spin up test credentials in minutes, or walk your migration through with an engineer for no flag-day risk.

Top Linear Gradient  Lines image

Moving off Telnyx? See the difference on your own stack.

Spin up test credentials in minutes, or walk your migration through with an engineer for no flag-day risk.

Top Linear Gradient  Lines image

Moving off Telnyx? See the difference on your own stack.

Spin up test credentials in minutes, or walk your migration through with an engineer for no flag-day risk.

Top Linear Gradient  Lines image

Moving off Telnyx? See the difference on your own stack.

Spin up test credentials in minutes, or walk your migration through with an engineer for no flag-day risk.

Top Linear Gradient  Lines image