SFX v3
SFX v3 (eleven_text_to_sound_v3), our newest sound effects model, is now available to every workspace. Compared with eleven_text_to_sound_v2, it follows prompts that contain several instructions more closely, handles prompts with music or vocals better, sounds more natural and is less likely to clip on high-frequency sounds such as chimes and whistles.
In ElevenCreative, SFX v3 is the default model in Sound Effects, Studio and Flows, and the sound effects that Video to music adds are generated with it. In the API, set model_id to eleven_text_to_sound_v3 on Create sound effect, and set loop to true for a sound effect that loops smoothly. eleven_text_to_sound_v2 is deprecated and will be removed on March 1, 2027.
Eleven Realtime for every workspace
ElevenAgents voice agents in every workspace can now use Eleven Realtime, completing the gradual rollout that started on October 19. Pick Eleven Realtime v1 Mini or v1 Max as the agent’s voice mode, or connect an OpenAI Realtime client to the Realtime WebSocket, and review sessions on the Realtime Conversations page. Realtime conversations can also be organized into groups through the API, under /v1/convai/realtime/conversation-groups.
Professional Voice Clones on Eleven v4
Text to Speech Professional Voice Clone fine-tuning for Eleven v4 and Eleven v4 Turbo is now available to every workspace. To train an existing clone, hover over it in My Voices and click the plus button next to Eleven v4. Requests for a clone fine-tuned on v4 now use the clone_strength saved in the voice’s settings when the request sets neither clone_strength nor use_pvc_as_ivc, so you no longer need to pass it on every call. See Eleven v4.
Analysis items API
ElevenAgents evaluation criteria and data collection items can now be managed through the API as reusable analysis items. Create, list, update, copy and delete them under /v1/convai/analysis-items, attach or detach them across agents and branches with a single request, list each item’s versions, and check which agents depend on an item before you change or delete it. Inline evaluation criteria and data collection in agent configurations keep working and are stored as attached items. See Analysis library.
Noisy environment detection in the API
ElevenAgents noisy environment detection can now be configured through the API and CLI. Set conversation_config.turn.noisy_environment_detection to true and the agent speaks noisy_environment_message once, without interruption, when it hears other people speaking in the caller’s background, asking them to move somewhere quieter. Add a translated message for each additional language in language_presets. The setting is available for voice agents in Enterprise workspaces; see Noisy environment detection.
Realtime entity redaction
Speech to Text can now redact entities in realtime transcripts. Pass entity_redaction and entity_redaction_mode as query parameters on the realtime WebSocket, in the same format as batch transcription, and each committed transcript is followed by a redacted_transcript event carrying the original text and the redacted_text. The Python and JavaScript SDKs from v2.76.0 and @elevenlabs/client from 1.34.0 support these options. See Entity detection.
All changes
ElevenAgents
- Analysis items API: Evaluation criteria and data collection items can be managed as reusable analysis items under
/v1/convai/analysis-items, with endpoints to list, create, get, update, copy and delete items, list versions, list dependent agents and update attachments in bulk. - Noisy environment detection:
turn.noisy_environment_detection(defaultfalse) andturn.noisy_environment_messageare available in the API, along withnoisy_environment_message_translationon language presets andnoisy_environment_messagein conversation and workflow overrides. Available for voice agents in Enterprise workspaces. See Noisy environment detection. - Eleven Realtime available to all workspaces: Realtime voice mode, the Realtime WebSocket and the Realtime Conversations page are available to every workspace, completing the gradual rollout announced on October 19. Realtime conversation groups can now be managed through the API, under
/v1/convai/realtime/conversation-groups. - Realtime API behavior: Each manual
input_audio_buffer.committranscribes only the speech since the previous commit, andinput_audio_buffer.cleardrops buffered audio.response.metadatafromresponse.createis echoed onresponse.createdandresponse.done, with at most 16 string pairs.input_audio_buffer.speech_startedandspeech_stoppedare sent once per committed user turn instead of on every pause. Idle audio sessions close after 3 minutes instead of 60 seconds, after asession_idle_timeouterror. - GPT-6.1 Terra:
gpt-6.1-terracan be selected as the agent LLM and as the analysis LLM, on the standard and fast service tiers, with reasoning effort fromnonetomax(defaultmedium). - Default LLM: New agents created without an explicit LLM use
gemini-3.5-flashinstead ofgemini-2.5-flash, and the default backup LLM cascade leads with Gemini 3.5 Flash models. Existing agents are unchanged. Gemini 3.5 Flash-Lite is also available in the India and Singapore isolated environments. - Model deprecations:
gpt-4.1-nanoandgpt-4o-2024-05-13, which OpenAI shut down on October 23, are deprecated immediately, and agents using them run ongpt-5.6-lunaandgpt-5.6-solrespectively.gpt-5,gpt-5-mini,gpt-5-nanoand their2025-08-07snapshots are deprecated ahead of OpenAI’s December 11 shutdown, with traffic moving togpt-5.6-sol,gpt-5.6-terraandgpt-5.6-lunain steps from 10% on November 11 to 100% on December 6. List LLMs returnsdeprecation_infofor these models. Claude Sonnet 4.5 is deprecated on November 30, with Claude Sonnet 4.6 as the replacement, and is removed from model selectors. The fallback ramp forgemini-2.5-flashandgemini-2.5-flash-litenow starts on November 8 instead of November 1; the November 30 cutoff is unchanged. - Conversation message counts: List conversations and Get conversation details return
user_message_countandagent_message_count.message_counton the conversation list now counts only turns with text, so tool-only turns are no longer counted. Conversations with no messages get acall_successfulvalue ofunknown, and the dashboard shows them as “No conversation”. - Knowledge base: Update document accepts
enable_auto_sync,auto_removeandminimum_frequency_days, and the dashboard can edit these auto-sync settings after a document is created, optionally applying folder settings to existing documents. Sitemap crawls acceptexclude_patterns, with an Exclude patterns field in the sitemap step of the URL dialog. Website crawls deduplicate pages by canonical URL, and Google Drive auto-sync pauses when the Drive token is rejected and resumes after you reconnect. See Knowledge base. - Agent testing: Tool call tests accept
guardrail_triggerto assert that a guardrail should or should not trigger on the generated turn, with Should trigger and Should not trigger options in the dashboard. Tests whose turn is blocked by a guardrail now fail with “Agent response blocked by guardrail” instead of returning an inconclusive result. List test invocations acceptscreated_by_user_id, and the test history adds a creator filter. Test runs are returned in creation order. See Agent testing. - Branches and merges: Branches can have a default environment, set when creating or publishing to a branch and changed from the branch menu. Conversations on the branch use that environment unless the caller requests another one, and such branches cannot receive live traffic. Merge and rebase conflicts can be resolved with Architect, and procedure conflicts can be edited and combined like prompt conflicts. A single procedure’s unpublished changes can be discarded without discarding the whole draft. Branches whose only version was created with changes can be merged, and branch responses report a
current_live_percentageof 100 for the main branch when the agent has no live deployment. - Workflows: Update state nodes and the
update_statetool can override LLM settings (model, temperature, token limit and reasoning) for the rest of the conversation from a new LLM tab. Double-click a workflow edge to add reroute points that shape it. Workflow tool nodes accept only configurable system tools plusstart_procedureandend_procedure. - Issues: Issue descriptions can be edited from the issue details sheet, and Update triage ticket accepts
qa_comment. See Triage. - WhatsApp: WhatsApp conversations record
call_result(answered,voicemail,busy,no_answerorfailed), and conversations opened with a template recordopening_messagewith the template name, delivery timestamps, error code and pricing category. Call permission requests recordresponded_at_unix,permanentandgranted_by_user_call. WhatsApp batch calls that are declined, missed or cannot be placed mark the recipientfailedinstead of leaving itinitiated. See WhatsApp. - Widget: Widget configuration adds
transcript_speech_sync_enabled(defaulttrue), with a Reveal transcript as the agent speaks switch; set it tofalseto show each message in full at once.show_rich_contentcarousel cards acceptrating(0 to 5) andreview_count, shown as stars. Resumed persistent text conversations replay rich content in their history. See Widget. - Channel integrations: Asynchronous channels such as Slack, Telegram, Intercom, Gmail, Salesforce and Custom Channel record message timestamps from the source platform and store the conversation’s
main_languagefrom the language override or the agent’s language instead of alwaysen. Salesforce passes the customer’s email to the agent asintegration__salesforce_customer_email, which is not a verified identity. Gmail triggers run on the agent’s current version, back off on Gmail rate limits and set aside threads that keep failing. - Telephony: Twilio conference transfers can combine post-dial digits with call screening (
require_acceptance). Tools that wait for speech to finish, such astransfer_to_numberandend_call, are skipped if the caller hangs up during their pre-tool speech. Callingskip_turnafter a turn timeout starts the skip-turn wait, so the silence timeout no longer ends the call during it. - Environment variables: Deleting an environment variable that the tip of a live branch references fails with
409and lists the affected agents and branches. The environment variables table adds Remove value and Delete row actions. - Dashboard: The conversation view shows human agent replies captured after an escalation in a separate post-escalation section. The system prompt editor’s wand opens an Ask Architect menu to review and improve the prompt or write a new one. Filtered conversation exports include evaluation criteria and data collection results. Turns where the agent speaks after a silence timeout no longer report end-to-end latency. The agent voice settings show the Clone strength slider for every voice fine-tuned for a v4 model.
- Fixes: Files that the LLM provider cannot process are dropped instead of failing later turns. Deleting an agent removes its trigger connections, so the integration connection can be deleted afterwards. The prompt editor saves
&and>as typed instead of encoding them. Say nodes no longer duplicate messages, merge proposals that add a node group no longer fail, and node groups show their configured titles. The structured procedure editor opens procedures authored through the API, and dynamic variables in If step expressions are included inreferenced_dynamic_variables. Agents whose data collection item uses a dynamic variable can be published again. Knowledge base rediscovery adds pages to older crawl jobs. The concurrency chart no longer overstates peaks when grouped by agent or branch. Garbled characters in LLM tool call arguments are repaired, and WhatsApp webhooks with resent interactive replies or contacts without a name are accepted instead of failing with422.
Speech to Text
- Realtime entity redaction: The realtime WebSocket accepts
entity_redaction(all, a category such aspii,phiorpci, or a list of entity types) andentity_redaction_mode(redacted,entity_typeorenumerated_entity_type, the default). Each committed transcript is followed by aredacted_transcriptevent, and the settings are echoed insession_started.entity_redactioncannot be combined withtranscript_edit. See Entity detection. - Realtime authentication: Bearer tokens passed to the realtime WebSocket in
Sec-WebSocket-Protocolrequire the Speech to Text permission, as the other authentication methods do. - Usage on empty responses: Empty and silent responses from Create transcript include
audio_duration_secs. - Fixes: Webhook transcription requests, with a file upload or
cloud_storage_url, now applydiarization_thresholdandseed.
Sound effects
- SFX v3 for everyone: SFX v3 (
eleven_text_to_sound_v3) is available to every workspace and is the default model in Sound Effects, Studio and Flows. The sound effects that Video to music adds withadd_sfxare generated with SFX v3. See SFX v3.
Text to Speech
- Professional Voice Clones on Eleven v4: Professional Voice Clone fine-tuning for Eleven v4 and Eleven v4 Turbo is available to every workspace. See Eleven v4.
- Saved clone strength: Eleven v4 requests for a fine-tuned Professional Voice Clone use the voice’s saved
clone_strengthwhen the request sets neitherclone_strengthnoruse_pvc_as_ivc. - Pronunciation dictionary limit: Applying pronunciation dictionaries can expand the input text to at most 50 times its length plus 10,000 characters. Requests over the limit return
400pronunciation_dictionary_expansion_too_large. - Fixes: History items for v4 generations keep
clone_strengthandspeedin their saved settings.
Studio
- Eleven v4 recommended: Project settings and the model picker recommend Eleven v4 instead of Multilingual v2.
- Larger media uploads: Pro and higher plans can upload audio and video assets of up to 3 GB, up from 1 GB.
- Word uploads: Audiobook projects can be created from Word
.docxfiles as well as EPUB and PDF. - Video clip background removal: Video clips have a Remove background action, and right-clicking a clip opens its AI Tools.
- Pronunciations tab: Audiobook projects have a pronunciations sidebar tab, opened from the selection menu or with Mod+Shift+P.
- Fixes: The import speech endpoints for external audio and video clips return
429system_busyand refund the transcription charge when transcription capacity is unavailable, instead of returning500. Duplicating a project no longer fails when an image clip points at a source image that is not copied.
Realtime Translation
- Close codes: The WebSocket always closes with a code:
1000for a normal end,1008for a rejected request such as an unknownvoice_idor an authentication failure, and1011for a server error. - Invalid frames: Frames that are not a JSON object receive an
input_errormessage and the session continues. - Fixes: Translated audio is encoded in the requested
output_format, so μ-law and A-law output plays correctly. Repeated utterances are no longer dropped, Chinese, Japanese and Korean clauses are no longer spoken twice or skipped, and Korean word order is improved.
Image and video
- SVG assets: SVG uploads to Assets stay SVG and render as vectors, including in the image editor. Scripts, event handlers and remote references are removed, models receive a PNG, and asset responses omit
preview_content_urlfor SVGs. - Flows: Node groups and the structure sidebar are available in every workspace. LLM nodes on video-capable models such as
gemini-3.5-flash-llmaccept video prompt references. - Clearer reference errors: Generations whose reference file was refused on upload, or is not decodable audio, fail as a validation error with a clear message instead of an unexpected error.
Speech Engine
- Longer conversations: Speech Engine conversations can last up to 2 hours, up from 40 minutes. See Speech Engine.
- Request headers: Speech Engine request header values can reference workspace secrets and are validated in the dashboard. Existing headers must be cleared before the WebSocket URL can change.
Voices
- Larger voice selections: Manual voice selection is no longer limited to 10 voices, and link-shared voice collections offer Select all. Shared collection links open in the EU, India and Singapore data residency environments.
- Fixes: The voice verification captcha accepts Serbian readings in Latin or mixed script.
Music
- Higher upload limit: Upload music accepts up to 100 songs per user per 24 hours, up from 20.
Workspaces
- Architect permission: Architect access is controlled by its own workspace permission.
PermissionTypeaddsagents_architectand group permissions addarchitect, so admins can turn off Architect without removing Agents access, and API keys have a separate Architect scope. - History download permission: Download history items requires the
speech_history_readAPI key permission. - Fixes: New users whose only invite is to a child workspace that inherits or borrows SSO can sign up with that SSO instead of receiving
400provider_not_allowed.
Billing
- Architect charging: Architect usage is now billed from workspace credits as its own line item, separate from agents’ minutes and LLM cost. Billing is rolling out gradually; the composer in the dashboard shows when it applies to your workspace. See Pricing and usage.
- Realtime pricing: Workspace pricing tables list Realtime API audio (
eleven_realtime_v1_audio) and the Eleven Realtime v1 Mini and Max token rates. - Cached LLM tokens: Cache writes are billed at least at the input rate and cache reads at the vendor’s cached rate. LLM calls for post-call analysis, guardrails and agent tests bill cached prompt tokens at those rates instead of the full input rate. Gemini 2.5 Flash-Lite cache reads are billed at 0.01 instead of 0.
- Preview conversation discount: The discount on conversations started from the agent tester applies only to workspaces on 2022 pricing. On 2026 pricing,
charging.dev_discountisfalse.
Hosted MCP
- Fixes: OAuth discovery names the host the client connected to, so MCP clients such as Claude Code, Cursor and VS Code can connect to
https://api.elevenlabs.io/v1/mcp.
SDK releases
JavaScript SDK
- v2.76.0 - The realtime Speech to Text wrapper accepts
entityRedaction. Addedclient.conversationalAi.analysisItemsfor managing analysis items, and methods onclient.conversationalAi.realtimeto list, create, get, update and delete realtime conversation groups and to set or clear a conversation’s group.
Python SDK
- v2.76.0 - The realtime Speech to Text wrapper accepts
entity_redaction. Addedclient.conversational_ai.analysis_itemsfor managing analysis items, andlist_conversation_groups,create_conversation_group,get_conversation_group,update_conversation_group,delete_conversation_group,set_conversation_groupandclear_conversation_grouponclient.conversational_ai.realtime.
Android SDK
- v0.13.1 -
textOnlyis now sent to the server, so text-only sessions run as text conversations instead of voice conversations. The top-leveltextOnlysetting takes precedence overoverrides.conversation.textOnly, as in the JavaScript SDK, and setting only the override now selects the WebSocket transport.
Unity SDK
- v0.1.0 - First release of the Unity SDK for voice agents, installed through the Unity Package Manager from a git URL. It requires Unity 6.3 LTS or later and runs in the Editor, desktop players and WebGL, with WebRTC available on WebGL.
Conversation.StartSessionAsyncstarts a session with an agent ID, signed URL or conversation token, and the SDK supports client tools, conversation events, messaging, feedback, device selection and spatial audio through anAudioSource. GettingStarted and QuickStart samples are included.
ElevenLabs CLI
- v1.9.0 -
agents workflow diagramdraws an agent workflow in the terminal, or prints it as Mermaid with--format mermaidor--format mermaid-md.agents graphshows how agents, tools, tests, knowledge base documents and handoffs connect across the agents inagents.json, and--useslists the agents that reference a given tool or document. Both commands read local files only. Regenerated against the latest API. - v1.8.0 - Request
User-Agentheaders include how the CLI was installed (install/<source>, such as npx, Homebrew or the installer). Pass--telemetry off, or setELEVENLABS_TELEMETRY=offorDO_NOT_TRACK=1, to drop these tags. Regenerated against the latest API.
Packages
- @elevenlabs/client@1.34.0, @elevenlabs/types@0.28.0 and @elevenlabs/react@1.21.0 -
Scribe.connect()anduseScribe()acceptentityRedactionandentityRedactionMode, and dispatch theredacted_transcriptmessage after each committed transcript.useScribe()adds anonRedactedTranscriptcallback and setsredactedTexton the matching entry incommittedTranscripts.stripAudioTagsremoves audio tags written in any language, not only tags in English letters. - @elevenlabs/convai-widget-core@0.24.0 - With
persistent-sessionenabled, a voice call can be resumed after a page navigation. The next page shows the conversation so far with “Resume talking?”, and resuming starts a new conversation that continues from those turns, skipping the greeting if the agent allows first message overrides. - @elevenlabs/client@1.32.0 - Self-hosted worklets (
workletPaths) are checked against the installed client version. A worklet copied from another release fails at session start with an error that names the worklet and path. Re-copy the files from@elevenlabs/client/worklets/*when upgrading. - @elevenlabs/client@1.32.1 - Fixes the start of the agent’s first message playing too fast and too high when the browser cannot use the agent’s sample rate. Voice sessions wait for the output resampler and fail with an error if it cannot be created.
- @elevenlabs/client@1.33.0, @elevenlabs/types@0.27.0 and @elevenlabs/convai-widget-core@0.23.0 - Added a
cloneStrengthTTS override to the client and anoverride-clone-strengthattribute to the widget. History rows of resumed persistent text conversations can carryrich_content, and the widget replays it. - @elevenlabs/react@1.20.3 -
useScribewithautoConnectkeeps a single open session under React StrictMode. - @elevenlabs/convai-widget-core@0.22.0 - Added the
transcript-speech-syncattribute; set it tofalseto show the agent’s full message at once in voice calls. Carousel cards accept an optionalratingfrom 0 to 5 andreview_count. - @elevenlabs/convai-widget-core@0.21.6 and 0.22.2 - Voice calls show typing dots when the agent takes more than a second to start replying, or “Thinking…” under the avatar when the transcript is off. Partially revealed markdown links show their text instead of
[blocked], carousel arrows no longer flicker, and carousel images use a 4:5 ratio. - @elevenlabs/react@1.20.1, 1.20.2, @elevenlabs/react-native@1.2.34, 1.2.35, 1.2.36, 1.2.37, @elevenlabs/convai-widget-core@0.22.1, 0.24.1 and @elevenlabs/convai-widget-embed@0.21.6 to 0.24.1 - Updated to the latest
@elevenlabs/clientand widget releases.
API changes
New endpoints
ElevenAgents
- Analysis items
GET /v1/convai/analysis-items- List analysis items, with optionalsearch,kind(evaluationordata_collection),analysis_item_ids,created_by_user_id,sort_direction,page_sizeandcursor.POST /v1/convai/analysis-items- Create an analysis item.GET /v1/convai/analysis-items/{analysis_item_id}- Get an analysis item.PATCH /v1/convai/analysis-items/{analysis_item_id}- Update an analysis item.DELETE /v1/convai/analysis-items/{analysis_item_id}- Delete an analysis item. Passforce=trueto delete it even when agents use it, removing it from the dependent agents and branches.POST /v1/convai/analysis-items/{analysis_item_id}/copy- Copy an analysis item.GET /v1/convai/analysis-items/{analysis_item_id}/versions- List an analysis item’s versions.GET /v1/convai/analysis-items/{analysis_item_id}/dependent-agents- List the agents that use an analysis item.PATCH /v1/convai/analysis-items/{analysis_item_id}/attachments- Attach or detach an analysis item across agents and branches.
- Realtime conversation groups
GET /v1/convai/realtime/conversation-groupsandPOST /v1/convai/realtime/conversation-groups- List and create conversation groups. Create requirestitle(string, unique per workspace, up to 64 characters) and accepts optionaldescription(string, up to 500 characters).GET,PATCHandDELETE /v1/convai/realtime/conversation-groups/{conversation_group_id}- Get, update and delete a conversation group.PUT /v1/convai/realtime/conversations/{conversation_id}/conversation-group- Place a conversation in a group, with requiredconversation_group_id. A conversation belongs to at most one group.DELETE /v1/convai/realtime/conversations/{conversation_id}/conversation-group- Remove a conversation from its group.
Updated endpoints
ElevenAgents
- Create agent and the agent get and update endpoints
- The prompt
llmdefault changed fromgemini-2.5-flashtogemini-3.5-flash. TurnConfigaddsnoisy_environment_detection(boolean, defaultfalse) andnoisy_environment_message(string). Language presets add nullablenoisy_environment_message_translation, turn overrides and workflow overrides add nullablenoisy_environment_message, and the override config addsnoisy_environment_message(boolean, defaultfalse).- Widget configuration adds
transcript_speech_sync_enabled(boolean, defaulttrue).
- The prompt
LLMenum addsgpt-6.1-terra, including inconversation_config_overrideon the/v1/convai/conversationWebSocket.- List conversations and Get conversation details - Added nullable
user_message_countandagent_message_count(integer). - Get conversation details
- WhatsApp conversation info adds nullable
call_result(answered,voicemail,busy,no_answerorfailed) andopening_message(template_name,wamid,sent_at_unix,delivered_at_unix,read_at_unix,replied_at_unix,failed_at_unix,error_code,pricing_categoryandbillable). - WhatsApp call permission requests add nullable
responded_at_unix(integer),permanent(boolean) andgranted_by_user_call(boolean). - Agent definition source enum adds
architect.
- WhatsApp conversation info adds nullable
- Update document - Added optional
enable_auto_sync(boolean),auto_remove(boolean),minimum_frequency_days(integer) andtighten_only(boolean, defaultfalse). - Update triage ticket - Added optional
qa_comment(string). - List test invocations - Added optional
created_by_user_idquery parameter (string). - Create test and the other test endpoints - Tool call evaluations add nullable
guardrail_trigger(object withtypeany). - Rebase a branch onto main (
POST /v1/convai/agents/{agent_id}/branches/{branch_id}/rebase) - The request body acceptsapplication/json.
Speech to Text
- Realtime (
/v1/speech-to-text/realtime)- Added optional
entity_redaction(string or array of strings) andentity_redaction_mode(redacted,entity_typeorenumerated_entity_type, defaultenumerated_entity_type) query parameters. - Added the
redacted_transcriptserver message. session_startedconfig addsentity_redaction(array of strings) andentity_redaction_mode(string).
- Added optional
Workspaces
- Service account and workspace group permissions -
PermissionTypeaddsagents_architect, and workspace group permissions addarchitect.