migration playbook · operator guide
How to Switch From Retell to Hermes Without Losing Your Existing Twilio Numbers (Step-by-Step)
You do not have to port your Twilio numbers to leave Retell. The fastest migration path keeps every number exactly where it is on your Twilio account, flips a single Voice URL on each number, and routes the call into Hermes through Twilio Elastic SIP Trunking. Finished in an afternoon. Zero port fees. No FCC window. No client downtime. If you decide later that you want Hermes to own the numbers end to end, you can run a separate port-in over 7 to 15 business days using Twilio's port-out process and Hermes' managed number intake. Both paths preserve the caller-ID, the call history on the Twilio side, and your client's existing phone tree. This post walks both paths step by step, names the gotchas that take down rushed migrations, and gives you a parallel-run plan so you never have a single client wonder why their AI receptionist went dark for an hour. The short version: pick BYO Twilio first, port only if Twilio is still in your stack 90 days from now.
I have run this migration twice for our own agency operators and walked five Founders' Beta applicants through it on Loom in the last three weeks. The pattern is consistent. The teams that treat it like a number-porting project lose two weekends. The teams that treat it like a trunk-config project finish before lunch.
The rest of this is the exact step list, the carrier docs, the FOC timing window, the prompt import, the parallel-run cutover, and the post-migration audit. If you only read one section, jump to "Path A: BYO Twilio in one afternoon" below.
Why are agencies leaving Retell for Hermes in 2026?
Two reasons dominate the migration intake forms we run on the Founders' Beta application. First, cost unpredictability. The Retell headline rate of $0.07 per minute is the orchestration line only. STT, LLM tokens, TTS, and Twilio telephony stack on top. Ringg.ai's 2026 Retell pricing breakdown concluded that real production setups land at "$0.13 to $0.31/min once dependencies are included," and flagged that agencies and high-volume operators feel the squeeze first. We wrote a full audit of the same phenomenon across providers in the 5-invoice problem.
Second, white-label. Retell does not offer a white-label workspace. For an agency reselling voice AI under its own brand, that is a hard limit. Convocore's 2026 alternatives roundup opens with the exact line: "Retell doesn't offer white label, which is problematic for agencies reselling voice AI services." The same theme runs through Dialora's 2026 Retell pricing review, which flags hidden Twilio costs and a missing client-facing portal as the two most common reasons resellers churn.
"The per-minute number looks fine on paper, but actual bills land much higher once the LLM, voice provider, and Twilio minutes are factored in. Agencies and high-volume operators feel this pinch the most." [Ringg.ai, Retell AI Reviews 2026]
Neither of those reasons makes Retell a bad product. Retell is a good builder platform. It is not a good agency platform. The right move for most operators is to keep what works (the agents you have already prompt-engineered) and move them to a chassis built for resale.
The two migration paths, side by side
Before picking a path, line them up against your situation. Most operators pick Path A. Path B is only worth running once you no longer want Twilio in your stack at all.
| Dimension | Path A: BYO Twilio | Path B: Full port-in |
|---|---|---|
| Time to live | 2 to 6 hours per agent | 7 to 15 business days |
| Port fee per number | $0 | $0 to $30 typical |
| FCC window | Not required | Simple ports complete in 1 business day; full process 2 to 4 weeks |
| Twilio account stays | Yes | No (or used elsewhere) |
| Risk profile | Reversible in seconds | Reversible only by re-porting |
| Best for | Active client books, multi-client agencies, parallel-run periods | Solo operators consolidating to one vendor, accounts ready to leave Twilio |
The FCC requires simple ports to complete in 1 business day and non-simple ports in 4, but in practice the documentation cycle, the carrier validation, and the Firm Order Commitment scheduling stretch the window to 2 to 4 weeks for a US local number, per Viirtue's number porting guide. That is fine if you have one number. It is a real operations hazard if you have thirty.
Path A: BYO Twilio in one afternoon
This path keeps every Twilio number where it is, keeps your Twilio sub-account structure intact, and routes the call audio into Hermes through Elastic SIP Trunking. Hermes runs the agent, the prompts, the LLM, the STT, the TTS, and the recording. Twilio stays the carrier of record.
Twilio itself documents the elastic SIP trunk as "a cloud-based solution providing PSTN connectivity for IP-based communications infrastructure," per the official Twilio Elastic SIP Trunking documentation. The same trunk that Retell already uses on your account is what Hermes will use. The cutover is a configuration change, not a re-architecting.
Step 1: Create the Hermes workspace and import your Retell agents
Apply to the Founders' Beta, then export your Retell agents as JSON from the Retell dashboard. Drop them into Hermes' agent importer. Prompts, conversation states, voice settings, and webhook URLs transfer one to one. Tool calls and custom functions need their destinations re-pointed at the new Hermes function-call format, but the function shapes are identical.
Knowledge bases do not transfer. Re-upload them. Vector schemas differ between providers and there is no clean migration path on embeddings. Budget 30 to 60 minutes per KB.
Step 2: Provision a Hermes SIP trunk endpoint
Inside the Hermes workspace, generate a SIP trunk endpoint per client workspace. This is a single URL of the form sip:<workspace-id>@trunk.buildwithhermes.com. You will paste this into the Twilio side in step 4.
For the technical reference on how Retell itself recommends this pattern, see Retell's own custom telephony documentation. The architecture is identical. Hermes just substitutes the receiving end.
Step 3: Validate on a sandbox number first
Hermes provisions a free sandbox number with every workspace. Point the imported agent at the sandbox number, run five test calls against it from a personal cell, listen end to end. Confirm STT accuracy, voice latency, tool calls firing, recording playback, and the call appearing in the workspace call log. Do not skip this step. The reason no client ever hears a dead silence is that you validated on a number nobody cares about first.
Step 4: Repoint the Twilio number's Voice URL
Open the Twilio console. Navigate to the phone number you want to migrate. Change the "A call comes in" handler from Retell's webhook to the SIP URI from step 2. Save. The change goes live immediately. Call the number. The audio routes through Hermes. You are migrated.
For the official Twilio reference on this configuration pattern, including authentication headers and TLS requirements, see Twilio's step-by-step elastic SIP trunking setup.
Step 5: Roll forward one client at a time
Repoint one client's production number. Wait 48 hours. Watch call logs, watch the call review queue, watch the invoice line for that workspace. If everything looks clean, move the next client. The default rollout cadence we recommend is one client per business day for a 10-client book. By day 14 the migration is done and Retell is cancellable.
"To migrate a phone number, you will need to set up a SIP trunking and configure your number to point to it, and then import that number to Retell." That same pattern, in reverse, is what makes a Retell-to-Hermes migration a config change rather than a port. [Retell AI, Custom Telephony Overview]
Path B: Full port-in to Hermes managed numbers
Path B exists if you want to leave Twilio entirely. Hermes becomes both the agent platform and the carrier of record. You get one bill, one console, one support escalation path. The tradeoff is the FCC porting window.
Step 1: Run the Twilio portability check
Twilio publishes a portability API that returns a clean signal on whether a number can leave the carrier without manual intervention. The endpoint is documented at Twilio's portability API reference. Hermes wraps that check in the migration intake form. You paste your list of E.164 numbers, the system returns "portable" or "manual review needed" for each one. Manual-review numbers are usually toll-frees, hosted numbers, or numbers with an open port-in already pending. Resolve those first.
Step 2: Request the service address and submit the LOA
Email porting@twilio.com to request the service address tied to your Twilio account, per CloudTalk's 2026 Twilio port-out guide. Sign the Letter of Authorization that Hermes generates. The LOA includes the end-user full name, the Twilio Account SID, and the service address Twilio returns. Sign electronically. Hermes submits the bundle to our underlying carrier within one business day.
Step 3: Wait for the Firm Order Commitment
Twilio validates the port, exchanges information with the receiving carrier, and issues a Firm Order Commitment (FOC) date and time. Per FCC rules, "simple ports must be completed in one business day. Non-simple ports must be completed in four business days." In practice, the documentation cycle is the long pole. Plan on 7 to 15 business days end to end. CloudTalk cites the same range: "around 15 days, 10 for set-up and 5 for the actual migration."
Step 4: Keep call forwarding live until FOC
Until the FOC fires, the number still belongs to Twilio. Keep the Twilio Voice URL pointing at Path A (the Hermes SIP trunk) for the full porting window. At FOC, the number leaves Twilio, the receiving carrier takes over, and Hermes routes the call natively. The caller-experience side of the cutover is invisible. The internal billing changes from "Twilio plus Hermes" to "Hermes only."
The full official process for porting away from Twilio is documented at the Twilio porting support category. Keep that tab open during the migration.
The agent and prompt migration, exactly
Independent industry analysis pegs platform-to-platform agent migrations at "2 to 6 weeks depending on complexity, with prompts and conversation logic transferring easily in 1 to 2 days, but integrations requiring rebuilding in 1 to 3 weeks, and total cost of $2,000 to $10,000 in development time," per SuperDupr's 2026 voice AI platform comparison.
The Hermes import collapses that timeline because we match Retell's agent JSON shape one to one for the components that transfer cleanly. Here is the breakdown.
| Component | Migration effort | Notes |
|---|---|---|
| System prompts | 5 minutes | Paste from Retell agent JSON. No reformatting needed. |
| Conversation states | 15 to 30 minutes per agent | State graph imports directly. Re-test transitions. |
| Function calls / tools | 1 to 3 hours per agent | Re-point webhook URLs to Hermes function endpoints. Schema is identical. |
| Voice catalog | 10 minutes | ElevenLabs voice IDs port one to one. Deepgram Aura is the default budget voice. |
| Knowledge bases | 30 to 60 minutes per KB | Re-upload source documents. Vector schemas differ. |
| Webhooks (post-call) | 15 minutes | Hermes mirrors Retell's post-call event payload for backward compatibility. |
| Call recordings (historical) | Optional export | Recordings stay on Retell. Hermes records all new calls natively. |
The single highest-time bucket above is function calls. If your Retell agents pull from a CRM, push appointments to a calendar, or call back into a custom database, those endpoints need to be authorized against Hermes' callback IP range. The endpoint contracts themselves are identical.
The no-downtime cutover, in three commands
The cutover for any single number, once the agent is imported and validated on the sandbox, is three steps.
- Update the Twilio Voice URL. Console → Phone Numbers → Active Numbers → the target number → Voice Configuration → A call comes in → SIP → paste the Hermes SIP URI. Save.
- Place a verification call. Dial the production number from a personal cell. Confirm: Hermes agent answers, response latency under 800ms, voice quality clean, recording appears in the Hermes workspace within 30 seconds of hang-up.
- Notify the client (optional). If the client owns operational oversight, send a short heads-up: "Agent infrastructure upgrade, no change to your line." If the client does not see the back end (the standard white-label case), no message is needed.
Total elapsed time for steps 1 and 2: under 5 minutes. If anything looks wrong, the rollback is the inverse: change the Twilio Voice URL back to the Retell webhook. The call routes back to Retell. You are unmigrated. The reversibility is the entire reason Path A is the default.
Common gotchas that take down rushed migrations
These are the patterns that have cost operators a weekend. None of them are unfixable. All of them are avoidable.
- Forgetting the function-call authentication headers. Retell signs callbacks with a Retell-specific HMAC. Hermes uses a different signature scheme. Update your CRM webhook to accept the new signature before you cut over, not after. The first failed booking gets an operator-visible alert in the Hermes dashboard, but the lost lead is real.
- Leaving the old Retell agent active on the same number. If both Retell and Hermes have inbound webhooks registered to the same Twilio number, Twilio uses whichever responded last. Disable the Retell agent first. Repoint Voice URL second.
- Mismatched STT language models. Retell defaults English Nova-2. Hermes defaults the same, but multi-language clients (Spanish inbound on a US line, for example) need the language model set explicitly. Confirm before cutover.
- Not re-uploading the knowledge base. The agent will run without the KB. It will just answer the wrong question politely. Test KB hit rate on the sandbox number with five known queries before cutover.
- Skipping the parallel-run window. Migrating 30 numbers on a Friday afternoon because the team wants to "be done by Monday" is the recipe for an emergency Saturday. One client per business day. No exceptions on a first migration.
- Cancelling Retell before the last invoice clears. Keep the Retell account paid through the end of the parallel-run period. The accounting on a clean cancellation is easier than a refund dispute.
What does the cost picture look like the month after migration?
A representative 8-client agency on Retell averaged $0.21/min all-in across 14,400 monthly minutes in Q1 2026 according to the audit we ran for that operator. Total cost of voice infrastructure: $3,024 against $14,000 in retainer revenue. Margin line: $10,976.
On Hermes, the same 8 clients, same volume, sit on the Business plan ($399/mo) plus overage. Included minutes: 1,000. Overage: 13,400 minutes at $0.24 flat. Total Hermes spend: $399 plus $3,216 = $3,615. Margin line: $10,385. Margin per client is within $74/month of where it was on Retell, but the operator recovered roughly 12 hours per month on invoice reconciliation and gained a white-label client portal that lifted three upsells in the first 60 days.
The math gets more favorable on heavier volume because the upstream caching collapses repeated knowledge-base hits. On the Agency plan ($699/mo, 2,000 minutes included), a 15-client book at 25,000 monthly minutes lands at $6,219 total versus $5,250 on Retell with five invoices and no portal. The white-label portal is what closes the gap. See the full Hermes pricing breakdown for the included minutes and overage math at every tier.
When should I actually port instead of BYO?
Three conditions, all of which need to be true.
- You have been on Hermes for at least 60 days and the invoice/operations side is clean.
- You no longer use Twilio for anything else (SMS campaigns from a separate stack, programmable voice for non-AI flows, etc.).
- The accounting simplification of one carrier bill is worth more than the 7 to 15 business day porting window.
If any one of those is false, stay on Path A. The most common regret on rushed ports is realizing afterward that a separate business unit was still using the same Twilio sub-account for SMS, and the port broke that flow.
Frequently asked questions
Do I have to port my Twilio numbers to switch from Retell to Hermes?
No. There are two valid paths. Path A keeps the numbers on your Twilio account and points a SIP trunk at Hermes (zero-port migration, finished in a single afternoon). Path B is a full port-in to Hermes managed numbers, which takes 7 to 15 business days under the FCC simple-port rules. Path A is the right default for active client books. Path B is only worth doing once you no longer want to manage a Twilio sub-account at all.
Will my client lose calls during the Retell to Hermes cutover?
Not if you stage it correctly. The Path A trunk swap is a single change to the Voice URL on the Twilio number. Hermes provides a parallel sandbox phone number so you can validate the new agent on live audio before you flip the production number. Live cutover takes under 60 seconds. Path B port-ins use a Firm Order Commitment time window so the carrier transfer is also seamless if you keep call forwarding active until the FOC confirms.
What happens to my Retell agents, prompts, and functions during migration?
Prompts and conversation logic transfer in a day. Function calls and webhook integrations need to be re-pointed at Hermes endpoints, which usually takes one to three days depending on how many custom tools you wired into Retell. Hermes ships a prompt importer that ingests Retell agent JSON exports directly. Knowledge bases need to be re-uploaded since vector schemas differ between providers.
How much does the migration actually cost in dollars and time?
BYO Twilio (Path A) costs zero dollars in port fees and roughly 4 to 8 hours of engineering time for a 1 to 10 agent book. Full port-in (Path B) costs $0 to $30 per number on the Twilio side and the same 4 to 8 hours of agent setup work. Third-party migration audits price platform-to-platform moves at $2,000 to $10,000 in dev time across the industry. The Hermes migration kit collapses that to a single afternoon for the agent rebuild and a separate port window if you choose to port.
Why are agencies leaving Retell in 2026?
The two most-cited reasons in 2026 review aggregators are cost unpredictability (headline $0.07/min lands at $0.13 to $0.31/min once STT, LLM, TTS and telephony are layered in) and missing white-label, which is a deal-breaker for agencies reselling under their own brand. Retell is a strong builder platform. It was not built around agency multi-tenancy.
Can I keep my Retell account active while I migrate?
Yes. The recommended migration window runs Retell and Hermes in parallel for 7 to 14 days. New clients land on Hermes, existing clients stay on Retell until their next billing cycle, and you flip individual production numbers one at a time after validating each agent. You only cancel Retell once the last production number has cut over and you have a full month of clean Hermes invoices.
What if I want to keep some clients on Retell and move others to Hermes?
That works. Twilio sub-accounts are isolated, so each client's numbers can point to a different platform. Hermes was built around multi-tenant workspaces, so partial migrations are a first-class flow rather than a workaround. The clients you move first should be the ones whose Retell bill exceeds your retainer margin (run the audit in our 5-invoice problem post).
Where this leaves you
The hard part of leaving Retell is not the carrier side. The numbers are not the bottleneck. The bottleneck is the agent rebuild, and a clean prompt importer collapses that from weeks to an afternoon. Pick Path A. Validate on the sandbox. Roll one client per day. Cancel Retell on day 14. Keep Twilio if you still need it for anything else. Run the cost audit once the first full month of Hermes invoices closes.
By builders, for builders. The migration was painful enough on our own first agency that we rebuilt the importer twice. The version you get now is the one we wish we had on the first cutover.
next step
Migrate from Retell with zero downtime
Apply to the Founders' Beta. Drop your Retell agent JSON exports into the importer. Validate on a sandbox number the same day. Cut over one client at a time. Cancel Retell on day 14.
Alfredo Romero is CEO of Hermes, the voice infrastructure platform for AI agencies. Connect on LinkedIn.
