Transcript FormatterRename Speakers, Fix Timestamps

Paste a transcript with speaker labels and timestamps. Rename speakers, merge back-to-back turns, and export a readable version as plain text, Markdown, or numbered minutes.

Your input is never sent anywhere.

Details

Paste your transcript

Paste text and it is analyzed right away

Why Raw Transcripts Are Hard to Read

Auto-generated transcripts are built to capture everything, not to be read. You get labels like Speaker 1, a timestamp on every line, and one sentence split across several short turns. Pasted straight into an email or a doc, it takes effort to follow.

This tool takes that text and fixes the parts that get in the way. It replaces generic labels with real names, joins consecutive lines from the same person, strips or standardizes timestamps, and can drop filler words like um and uh. You then copy the result as plain text, Markdown, or numbered minutes.

It works on text only. It does not process audio, and it does not summarize or rewrite what people said.

Situations Where a Cleanup Helps

Sending notes to people who missed the meeting

Swap Speaker 1 and Speaker 2 for real names, hide the timestamps, and paste a readable version into an email or chat.

Turning a call into meeting minutes

The Minutes format numbers each turn and puts the speaker first, which makes it easy to pull out decisions and action items by hand.

Publishing an interview

Rename the two speakers to Interviewer and Guest, merge short lines, and remove ums and uhs before you edit the text further.

Saving a transcript in Notion, GitHub, or Obsidian

Markdown output gives each turn a heading with the speaker's name and an optional timestamp, so the page has a clear outline.

Checking who did most of the talking

The word share chart shows each speaker's turns and words, which is useful for reviewing a sales call or a team meeting.

How It Works: Paste, Rename, Export

  1. Paste your transcript into the box, or click one of the sample buttons to see how it works.
  2. Check the speakers the tool found. Type a real name next to any label you want to change.
  3. Choose whether to merge back-to-back turns and remove filler words, then pick how timestamps are shown.
  4. Select Plain text, Markdown, or Minutes, then copy the result or download it as a file.

Note: Your text is processed in your browser. The tool does not upload it.

Limits and Things to Check

  • This tool does not transcribe audio. It only reformats text you already have.
  • Speakers and timestamps are found by pattern matching. Always read the preview, especially if a turn is attached to the wrong person or a speaker shows as "Unknown".
  • A speaker label is recognized when it is up to 30 characters, up to 4 words, and each word starts with a capital letter or a digit. A lowercase label such as "alex:" is treated as part of the sentence.
  • Lines that appear before the first speaker label are listed under "Unknown".
  • Filler removal is a simple text match for um, uh, er, hmm, ah, and "you know," / "I mean," followed by a comma. It leaves words like "like" and "so" alone.
  • Timestamps with two parts (such as 12:30) are read as minutes:seconds. When you choose hh:mm:ss, turns without a timestamp show as --:--:--.
  • The time shown under the word share chart is the gap between the first and last timestamp found. It is not the length of the recording.

Supported Transcript Layouts

These line patterns are recognized. Timestamps can be m:ss, mm:ss, or h:mm:ss, with optional milliseconds.

LayoutExampleNotes
Time, then name[00:00:12] Alex: Thanks for joining.Square brackets, parentheses, or none
Name, then timeAlex (00:00:12): Thanks for joining.Square brackets or parentheses
Time, dash, name00:00:12 - Alex: Thanks for joining.Hyphen or dash after the time
Name and time, text belowAlex Chen 0:12 Thanks for joining.Following lines go to that speaker until the next label
Name onlyAlex: Thanks for joining.No timestamps in the output unless the source has them
SRT or VTT cues00:00:00,000 --> 00:00:04,000 Alex: Thanks for joining.Cue numbers and WEBVTT lines are skipped; <v Alex> tags are read as speakers
Timed lines without names[00:00.000 --> 00:05.000] Thanks for joining.Shown under "Unknown" because there is no speaker label

Other layouts can still work if each line starts with a short capitalized name followed by a colon. Check the preview before you share the result.

Getting a Transcript Ready to Share

What each setting changes, so you can pick the right combination for the document you are writing.

Replace "Speaker 1" with a real name

Generic labels make a transcript hard to follow a week later. Type a name next to each detected label and the new name is used everywhere in the output and in the word share chart.
Doing this here avoids a common find-and-replace mistake: replacing "Speaker 1" in a word processor also changes the start of "Speaker 10".

Hide timestamps or keep them in one style

Hide removes them from the output. Keep original leaves each timestamp as it was in your source. hh:mm:ss rewrites every timestamp into the same format, so 3:05 becomes 00:03:05. Hiding is usually best for notes people will read, and keeping them helps when someone needs to find a moment in the recording.

Remove filler words without retyping

Turn on the filler option to remove standalone um, uh, er, hmm, and ah. If a sentence started with a filler, the next word is capitalized. Turn it off for legal records, research data, or anything that has to match the recording word for word.

Pick Plain text, Markdown, or Minutes

Plain text writes Name [time]: text. Markdown writes a heading per turn with the speaker's name and the time in code formatting. Minutes numbers each turn and puts the name and time on the line above the text. The download is a .md file for Markdown and a .txt file for the others.

Mistakes That Make a Transcript Worse

Sharing the raw export

Generic labels and a timestamp on every line push readers to skim, and they may not know who said what.

💡 See the solution▼
Rename the speakers, merge back-to-back turns, and hide the timestamps unless readers need them.

Renaming speakers by find-and-replace

Replacing "Speaker 1" by hand can miss variants like "Speaker1", or change part of "Speaker 10".

💡 See the solution▼
Use the Rename speakers panel. It works from the labels the tool detected, and you can see every one of them before you rename.

Removing filler words from a record that must be exact

Interviews used as evidence, legal depositions, and research transcripts often need every word kept, including hesitations.

💡 See the solution▼
Leave Remove filler words off for those. Use it only on notes and drafts where readability matters more than a verbatim record.

Leaving the timestamps on in a document meant for reading

A time next to every turn pulls attention away from what was said and makes the page look longer than it is.

💡 See the solution▼
Choose Hide for the shared version. Keep the original export if someone may need to find a moment in the recording later.

Speaker names that show up inside the sentence

A label that is lowercase, longer than 30 characters, or more than four words is not read as a speaker, so the whole line is treated as text.

💡 See the solution▼
Shorten or capitalize the label in your source text, for example "Alex Chen:" instead of "alex chen from the product team:", and paste again.

Transcript Formatting Questions

Q.Can this tool transcribe an audio or video file?

Q.

A. No. It does not listen to audio. You paste text you already have from a meeting recorder, captions export, or speech-to-text app, and the tool reformats it: speaker names, timestamps, line breaks, and output format.

Q.Which transcript formats does it recognize?

Q.

A. It looks for a short speaker label and an optional timestamp on each line. That covers layouts like [00:12] Alex: text, Alex (00:12): text, 00:12 - Alex: text, a name and time on one line with the text below it, plain Alex: text, and SRT or VTT cues. Export formats differ between apps and versions, so paste a few lines first and check the preview.

Q.How do I rename Speaker 1 and Speaker 2 to real names?

Q.

A. After you paste, every detected speaker label appears in the Rename speakers panel. Type a name next to a label and it is replaced throughout the output. If you give two labels the same name, their turns are treated as one speaker.

Q.Which filler words does it remove?

Q.

A. Standalone um, uh, er, hmm, and ah, plus "you know," and "I mean," when a comma follows. It does not remove "like", "so", or "well", and it is a simple text match, so a word you wanted to keep can occasionally go with it. Turn the option off when you need a word-for-word record.

Q.Is my transcript uploaded anywhere?

Q.

A. No. The tool does not upload your text. Parsing and formatting run in your browser, and the Copy and Download buttons work on that local result.

Q.How do I keep the formatting when I paste into Notion, GitHub, or a doc?

Q.

A. Choose Markdown, copy the result, and paste it into an app that reads Markdown. Each turn becomes a heading with the speaker's name. For Word or Google Docs, Plain text or Minutes usually pastes more cleanly.

Q.What does "Merge back-to-back turns" do?

Q.

A. When the same speaker has several lines in a row, they are combined into one turn. The turn keeps the first line's timestamp, and each original line stays on its own line inside the turn.

Q.How is the share of words by speaker calculated?

Q.

A. The tool counts the words in each speaker's turns after your options are applied, then divides by the total. Turn counts are shown next to it. Word share is a rough measure of who talked most, not an exact measure of speaking time.

User Feedback & Request

Your feedback
makes this tool better.

Tell us which features you'd like, what should be fixed, or which new tool you'd like to see. An engineer reads every submission and uses it to guide development.

Send feedback