Transcription overview
New to Daily transcription? Start here — covers real-time vs. post-call transcription, pricing, permissions, and transcript storage.
Transcription permissions
Only meeting owners and participants withcanAdmin: 'transcription' can start or stop transcription. See Permissions in the overview for how to grant this.
Transcript storage
By default, transcripts are ephemeral — participants receivetranscription-message events but nothing is persisted. To save transcripts as WebVTT files, enable enable_transcription_storage at the room or domain level. See Storage in the overview for setup details, including custom S3 configuration for HIPAA use cases.
Starting transcription
startTranscription() starts a transcription session. All options are optional — call it with no arguments to use Deepgram defaults.
startTranscription() for the full list of options.
Handling transcription messages
Listen totranscription-message to receive transcript segments in real time:
Updating transcription
UseupdateTranscription() to change which participants are being transcribed while transcription is running:
updateTranscription() to add them.
Stopping transcription
stopTranscription() ends a transcription session. If storage is enabled, the final transcript file is written at this point.