Paragraph formatter for dictated text
Dictated speech arrives as one long block, because speaking has no paragraph key. VoiceGem groups sentences until a paragraph reaches 50 words, then caps it at 4 sentences of 4 words or more, so short interjections do not count against the cap.
Given an unbroken dictated passage, produce it split into paragraphs, in under 1 second.
8 sentences in, 2 paragraphs out. Target is 50 words per paragraph, capped at 4 sentences of 4 words or more.
The queue worker picks up jobs every thirty seconds and retries anything that failed. We cap retries at five so a poisoned message cannot spin forever. The failure log carries the job id and the last error. Ops asked for a dashboard on top of that but it is not urgent.
The bigger problem is the migration, which still locks the orders table for about four minutes. We can split it into two passes and backfill the second one overnight. That would take the lock down to a few seconds. I would rather do that before we add any more traffic to the write path.
VoiceGem on macOS splits sentences with Apple's NaturalLanguage tokenizer, which has no browser equivalent, so the paragraph formatter on this page substitutes a punctuation-based splitter and can put a paragraph break in a different place than the app would. The 50-word target and the 4-sentence cap are identical in both.
Paragraphs are the last stage, not the first.
Formatting text you already have is the slow half of the job. VoiceGem on macOS runs filler removal, punctuation cleanup and this paragraph pass in order as the text is produced, so the passage arrives shaped.
See the punctuation stage that runs before this oneVoiceGem has no mailing list and runs no drip sequence. An address left here is stored on voicegem.app for one purpose — sending you a single message when the code-dictation accuracy benchmark publishes — and is deleted after that send. The lawful basis is your consent, given by submitting this form; the field is optional and nothing is pre-selected. Leaving it blank costs you nothing on this page, because everything above is already yours. See the privacy policy.
This tool runs entirely in your browser. The passage you paste is chunked by a JavaScript function on this page and nothing is sent anywhere, stored, or logged. The one exception is the email box under the result: an address left there is sent to VoiceGem, and nothing else on this page is.
The chunking rules, exactly
Two rules run in sequence and the order is what produces sensible output. First, sentences are accumulated until the running word count reaches 50. Second, if that group contains more than 4 significant sentences, it is trimmed back to the first 4 of them and the rest start the next paragraph.
A sentence counts as significant at 4 words or more. Short ones — "Right." "That works." — are carried along without counting against the cap, which stops a passage full of brief confirmations from being broken into a paragraph per line. VoiceGem uses the same three constants on macOS as the tool above uses here.
The result is paragraphs that are roughly even in length rather than paragraphs that follow the argument. A formatter working from word counts cannot know where a topic changes, and the honest description of what it produces is readable text rather than well-structured text.
Where the browser version differs from the Mac app
VoiceGem on macOS splits sentences with Apple's NaturalLanguage tokenizer, which has no browser equivalent, so the paragraph formatter on this page substitutes a punctuation-based splitter and can put a paragraph break in a different place than the app would. The 50-word target and the 4-sentence cap are identical in both.
Concretely, the divergence shows up around abbreviations and non-English text. This page splits sentences on terminal punctuation followed by whitespace, so "e.g.", "Dr. Chen" and "v1.2" can start a new sentence where the app's tokenizer would not. A language whose sentences do not end in a period, question mark or exclamation mark will chunk differently here as well.
VoiceGem names this rather than hiding it because the whole position of this site rests on the browser tools matching the product. The other formatters on this site are exact ports checked against the app's own test vectors. This one is not, and a page that quietly implied otherwise would cost more trust than the tool is worth.
How to break up dictated text by hand
Reading the passage and pressing return where the topic changes is genuinely better than any word-count rule, and it takes about ninety seconds for a page of text. Use the tool when you have twenty of those passages, not when you have one.
The mechanical shortcut people reach for is splitting on every third or fourth sentence, which is what the rules above formalise. Its weakness is visible in any transcript containing a run of very short sentences: a fixed sentence count makes a paragraph out of six words. The significant-sentence threshold exists to defuse exactly that case.
Dictating paragraph breaks directly is the third option and it is often the right one. VoiceGem understands "new paragraph" as a spoken command that inserts a blank line, so a speaker who knows where their paragraphs go can put them there while talking and skip formatting entirely.
When not to reformat a transcript
Paragraph breaks in a transcript of a conversation carry information — who spoke, and where a turn ended. Re-chunking on word count destroys that, and for an interview transcript, a meeting record or anything that will be quoted, the original breaks are data rather than formatting.
Text that already has structure should also be left alone. VoiceGem applies this pass to dictated prose, not to code, lists or anything with its own layout, and the tool above will happily flatten a bulleted list into a paragraph if you give it one.
Related: what changes for the filler word remover, the punctuation cleanup tool, step by step, or the word replacement tester specifically.
Common questions
About 50 words. Sentences are added until the running count reaches that target, so the paragraph before the last sentence is always shorter than the target and the finished one is a little over it.
One with 4 words or more. Shorter sentences ride along without counting against the 4-sentence cap, so a run of brief replies does not become a paragraph each.
No, and this is the only tool on the site where that is true. The chunking rules are identical; the sentence splitting is an approximation, because the app uses Apple's NaturalLanguage tokenizer and no browser has an equivalent.
Yes. VoiceGem treats "new paragraph" as a spoken command that inserts a blank line, which is more accurate than any automatic rule because you know where your paragraphs go.
No. The chunking runs as a JavaScript function in your browser tab and works with the network disconnected.