ElevenLabs text-to-speech

The ElevenLabs text-to-speech integrationsIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] adds support for ElevenLabs as text-to-speech to read a text with natural sounding voices.

Prerequisites

  • You need an ElevenLabs account to use this integration. A free account suffices for basic usage.
  • For custom voices or more quota you need a subscription.
  • You need your API key from the ElevenLabs website.

Configuration

To add the ElevenLabs text-to-speech integration to your Home Assistant instance, use this My button:

Manual configuration steps

If the above My button doesn’t work, you can also perform the following steps manually:

  • Browse to your Home Assistant instance.

  • Go to Settings > Devices & Services.

  • In the bottom right corner, select the Add Integration button.

  • From the list, select ElevenLabs text-to-speech.

  • Follow the instructions on screen to complete the setup.

For an overview of which languages can be used, check the complete list of supported languages.

For a description of which voices are available for use, check your VoiceLab voices.

To see the available models and their benefits, check the models documentation.

Action speak

The tts.speak action is the modern way to use TTS. Add the speak action, select the entity for your ElevenLabs TTS (it’s named ElevenLabs by default), select the media player entity or group to send the TTS audio to, and enter the message to speak.

For more options about speak, see the Speak section on the main TTS building block page.

In YAML, your action will look like this:

action: tts.speak
target:
  entity_id: tts.elevenlabs
data:
  media_player_entity_id: media_player.giant_tv
  message: Hello, can you hear me now?

For more information about using text-to-speech with Home Assistant and more details on all the options it provides, see the TTS documentation.