Thanks for the question — here’s how the voice caching works:
TTL for cached voices:
There’s no fixed TTL. ElevenLabs audio is cached on our side without an expiration and is only removed when our Redis cache evicts it using LRU, or when it’s manually cleared internally.
Enforcing expiration:
There isn’t a way to programmatically expire cached voices through the API. Cache management happens entirely on our backend.
Best workaround:
Modify any synthesis parameter (stability, style, voice settings, etc.). This generates a new cache key and forces fresh synthesis, which is the most reliable way to bypass the existing cache without disabling caching.