Speaker diarization: transcribe with speaker labels
Labels:Up to 8 speakersAudio & video60 languagesUp to 10 hours
See who spoke when in a recording with several speakers, with the text in speaker turns, captions, and word timings.
10M+ files processed since 2021
Such as um and uh.
Up to 8 voices: Speaker 1, Speaker 2, and so on.
Free for the first 2 minutes, 3 times a day. No sign-up.
Listen and read along
Press play to see who says what.
Transcript
Two speakers in a busy museum, labeled turn by turn
Transcribes 60 languages
Detects the language automatically.
- English
- DeutschGerman
- FrançaisFrench
- EspañolSpanish
- ItalianoItalian
- NederlandsDutch
- 日本語Japanese
- 한국어Korean
Show all 60 languagesShow fewer
- Afrikaans
- العربيةArabic
- ՀայերենArmenian
- অসমীয়াAssamese
- AzərbaycancaAzerbaijani
- বাংলাBengali
- BosanskiBosnian
- БългарскиBulgarian
- 粵語Cantonese
- CatalàCatalan
- 简体中文Chinese (Simplified)
- ČeštinaCzech
- DanskDanish
- NederlandsDutch
- English
- EestiEstonian
- Filipino
- SuomiFinnish
- FrançaisFrench
- GalegoGalician
- DeutschGerman
- ΕλληνικάGreek
- ગુજરાતીGujarati
- עבריתHebrew
- हिन्दीHindi
- MagyarHungarian
- ÍslenskaIcelandic
- Bahasa IndonesiaIndonesian
- ItalianoItalian
- 日本語Japanese
- ಕನ್ನಡKannada
- Қазақ тіліKazakh
- 한국어Korean
- LatviešuLatvian
- LietuviųLithuanian
- МакедонскиMacedonian
- Bahasa MelayuMalay
- മലയാളംMalayalam
- मराठीMarathi
- नेपालीNepali
- Norsk bokmålNorwegian Bokmål
- ଓଡ଼ିଆOdia
- فارسیPersian
- PolskiPolish
- PortuguêsPortuguese
- ਪੰਜਾਬੀPunjabi
- RomânăRomanian
- РусскийRussian
- SlovenčinaSlovak
- SlovenščinaSlovenian
- EspañolSpanish
- KiswahiliSwahili
- SvenskaSwedish
- தமிழ்Tamil
- తెలుగుTelugu
- ไทยThai
- TürkçeTurkish
- УкраїнськаUkrainian
- اردوUrdu
- Tiếng ViệtVietnamese
How to run speaker diarization online
- 1
Add your multi-speaker audio or video recording, up to 10 GB with no sign-up.
- 2
Keep Label speakers on. Audo detects which of 60 languages is spoken.
- 3
Read each speaker's turns, click a line to hear it, and download TXT, VTT, SRT, or JSON with word timings.
Where speaker labels matter most
Label up to 8 voices in recorded calls, group sessions, and shows, in the browser or through the API.
Calls
Sales calls, customer interviews, and support recordings
See what the customer said and what your colleague said, without typing times by hand. Click any sentence to hear it and check the wording before you share notes. For an interview between two people, use Interview transcription.
Focus groups & meetings
Roundtables, panels, depositions, and recorded meetings
Up to 8 people are labeled, and signed in, a recording can be up to 10 hours long. To also cut a recorded meeting down to its main points, use Meeting shortener.
Shows & video
Co-hosted podcasts and multi-guest video episodes
Download text in speaker turns for an article, VTT captions with each speaker's label for web players, and SRT subtitles without labels for YouTube. To cut the audio or video by its words, open the result in the Text-based editor. For whole episodes, see Podcast transcription.
Developers & agents
Speaker diarization through the API or MCP
There is no Python environment or GPU to set up. Send one request to the Free API or the REST API, or connect the MCP server to Claude Code, Cursor, or ChatGPT. The JSON result gives a speaker number for every word.
Who spoke when, timed to every word
Audo's speaker diarization splits audio (WAV, MP3, M4A, AAC, FLAC, OGG, Opus, WebM, AIFF) and video (MP4, MOV, MKV, WebM, AVI) into labeled speaker turns, in 60 languages, for up to 8 voices, on files up to 10 GB without an account and up to 10 hours signed in, with the first 2 minutes free, 3 times a day, and no sign-up. A 2-minute recording is usually ready in under 10 seconds. Recent hour-long recordings came back in under 2 minutes.
Diarization tells you who spoke when, not who each person is. The first voice heard becomes Speaker 1, the second Speaker 2, and a voice that comes back keeps its number. Replace the labels with real names wherever you use the text. To cut the audio or video by its words, press Open in editor after transcribing, which opens the Text-based editor.
No caption mixes two speakers. If a recording is noisy, run it through Remove noise first, so background voices aren't taken for another speaker.
| Task | Question answered | How Audo handles it |
|---|---|---|
| Speaker diarization | Who spoke when across a conversation? | Labels up to 8 voices, Speaker 1 to Speaker 8, in TXT, VTT, and JSON |
| Speech-to-text alone (plain Whisper) | What words were spoken? | Included, in 60 languages |
| Speaker recognition | Which known person is speaking? | Not done: speakers are numbered, never named |
| Voice isolation | How do I remove noise or music from behind speech? | Done by Remove noise, Audio enhancer, and Voice isolator |
Questions
Is there a free speaker diarization tool online?
Yes. Audo runs online speaker diarization and multi-speaker transcription for free on the first 2 minutes of each file, 3 times a day, with no sign-up. Whole recordings cost $0.03 a minute ($1.80 an hour), with no subscription — see pricing.
How do speaker labels in transcription work?
Each voice is labeled Speaker 1, Speaker 2, and so on, up to 8 speakers, in the order people first talk. The plain text is grouped into speaker turns, VTT captions mark each cue with <v Speaker N>, and the JSON gives a speaker number for every word. SRT has no speaker labels, so video subtitles stay clean. A recording with one speaker has no labels.
Does OpenAI Whisper do speaker diarization on its own?
No. Plain Whisper transcribes spoken words and timestamps without separating who spoke when, so developers normally combine it with a separate diarization model such as pyannote. Audo does both together, from one upload in the browser, one API request, or one MCP call.
What is the difference between speaker diarization, speaker recognition, and voice isolation?
Speaker diarization works out who spoke when, without knowing who anyone is. Speaker recognition matches a voice to a known person, which this tool doesn't do. Voice isolation removes background noise or music from behind speech and doesn't label speakers. For a noisy recording, use Voice isolator.
How many speakers and how long a recording can Audo handle?
Audo labels up to 8 speakers on files up to 10 GB without an account, and up to 10 hours long when signed in. A 2-minute recording is usually ready in under 10 seconds. Recent hour-long recordings came back in under 2 minutes. A one-hour recording costs $1.80.
What happens when two people talk at once or one mic is faint?
The labels are most accurate when people take turns. When two people talk at once, each word goes to one speaker, so some words in the overlap can be labeled wrong. If noise covers a speaker, or one person is far from the microphone, run the recording through Remove noise or Balance audio first.
Can I call speaker diarization from an API, Claude Code, or Cursor?
Yes. Send an audio or video file with speaker_labels=true to /api/try/transcribe, with no key, for the free part. Run whole files through /api/v1/jobs with a key, or add Audo's MCP server to Claude Code, Cursor, ChatGPT, or Claude.
What happens to my files?
They stay private. Files are deleted after 24 hours, and free results after 1 hour.
More tools
- Text to SRTSync a script to audio.
- Auto captionsPut your words on the picture.
- Remove filler wordsCut the ums and uhs.
- Bleep censorBleep or mute swear words.
- Audio translatorSpeech into translated text.
- Translate subtitlesSubtitles in more languages.
- Text to speechTurn a script into a voiceover.
- SRT to speechVoice your subtitles on time.
- Voice cloningClone your voice for any script.
- Voice designDescribe a voice, then use it.
For AI assistants and developers
Ask ChatGPT, Claude, or a coding agent to do this for you, or call it from your own code. When an agent's free result is cut short, it gives you a link to finish the whole file, no sign-up.
Show the free API call
curl -F file=@meeting.mp3 -F format=txt -F speaker_labels=true https://audo.ai/api/try/transcribe -D response.headers -o response.body