History and crash rescue
YapToText keeps a full dictation history on your Mac. Every dictation is saved with its raw transcript, the final text, which mode ran, the app it went to, and, by default, the audio recording itself. Search it, play recordings back, regenerate an entry with a different mode, export it, and choose how long it is kept.
It is also the safety net. If the app or the Mac dies mid-sentence, the audio survives on disk. On the next launch YapToText transcribes it, puts the text on your clipboard, and files it in History as "Recovered after a crash". None of it leaves the machine.
What is stored
Each entry holds everything the pipeline knew about that dictation:
- The raw transcript: exactly what the speech model heard before anything touched it.
- The final text after cleanup, dictionaries, and commands, and the delivered text if it differed.
- The mode, whether cleanup ran, which cleanup model did it, and what Auto mode decided the dictation was.
- The target app, the timestamp, the spoken length, the language, and how the text was delivered.
- Where the time went: the stop-to-text total, split into transcription, cleanup, and delivery.
The row shows the final text, mode, app, and time. The rest sits behind a Show pipeline details disclosure. When a dictation comes out wrong, the details lay out the three stages in order, what the speech model heard, what cleanup made of it, and what actually landed, so you can see which one to blame.
Three things stay out on purpose. Quick Edit commands are never recorded. Dictations into the Utility scratchpad are not filed either. Cancelled dictations are discarded unless you turn on Record cancelled dictations, which saves the transcript but never inserts it.
History is a plain JSON file inside the app's own container, with the recordings in an Audio folder next to it.
Search and filters
The search box matches the final text, the raw transcript, the mode name, and the app name, ignoring case. The date chips narrow the list to Today, 7 days, or 30 days, or show All. A mode menu limits it to one mode, and an AI only chip shows only entries where AI cleanup ran.
Audio playback
Every row has a play button, and a thin progress bar runs under the text while it plays. The pipeline details hold the full player: skip back or forward five seconds, play or pause, a scrubber with elapsed and total time, a button that shows the recording in Finder, and a share button. If audio was not saved for an entry, the play button is grayed out and the details say "not kept".
Regenerate, copy, insert, delete
There is no text box for retyping an entry. Changing one means regenerating it. Regenerate re-runs cleanup on the raw transcript and replaces the entry in place. If it is the most recent dictation and the text it typed is still on screen, the new text is swapped in right there; otherwise the new text goes to the clipboard. It uses the entry's own mode if that mode has cleanup, then the current mode, then Clean Up, so even a Raw Transcription entry can be reformatted. The button is grayed out only when no cleanup model is available at all.
Copy puts the final text on the clipboard. Insert into the previous app hides YapToText and inserts the entry into the app you were just using. Delete removes the entry and its recording together.
Regenerate and Insert last are also in the menu bar popover, above a Recent list of the last three dictations, each with a copy button, and a See all link to the full page. A Paste recent dictation shortcut in General settings, unassigned by default, opens a panel of your last nine dictations so you can insert one without opening the app.

Export
Each entry has an export menu with three choices. Export Text saves the final text as a .txt file named with the dictation's date and time. Export Audio saves the recording as a .caf file with the same name. Copy Raw Transcript puts the version from before cleanup on the clipboard.
The page's own Export button writes the whole visible list to one Markdown file, yaptotext-history.md, each entry under a heading with its mode and date. Filters apply, so a search plus a date range exports just those entries. The Share your whole setup backup in Settings never includes History.
Retention limits
Retention lives in Settings, under Advanced, in the History & audio section. The defaults:
- Save dictation history: on. Off means dictations are used once and never stored.
- Keep: Keep last 500. The other choices are Keep everything, Keep last 100, and This session only, which writes nothing to disk. Even Keep everything stops at 2,000 entries.
- Also save the audio recording: on. Off keeps text only; the audio file is deleted the moment a dictation ends.
- Auto-delete old items: After 30 days. The other choices are Never, After 7 days, and After 90 days. The sweep runs at launch and removes each entry's audio with it.
- Clear history when I quit: off. On, every entry and every recording is removed when the app quits.
Turning the history switch off stops new entries; it does not remove what is already there. Clear All on the History page removes every entry and every recording. Deleting a single entry deletes its audio too.
Crash recovery on next launch
From the first moment of audio, the recording streams to a file inside the app's container, and once recording is live the app also writes a small marker naming that session. Every clean end, whether you finish, cancel, or hit an error, clears the marker. If it is still there at the next launch, the last session never finished, so the app rescues it.
The audio is transcribed in the mode you were using, filed in History under the app name "Recovered after a crash" with the original start time, and put on your clipboard. The app announces "Recovered your last dictation. It's in History and on the clipboard." A recording under half a second is treated as a stray tap and thrown away. The recording stays with the entry only if audio saving is on. With history off, the text still goes to the clipboard.
I dictate everything, so losing a paragraph to a crash was never acceptable to me.
Questions
Where does YapToText store my dictation history?
In a plain JSON file, history.json, inside the app's own sandboxed container under Application Support/YapToText, with the recordings as .caf files in an Audio folder next to it. Nothing is uploaded, and deleting the app deletes all of it.
What happens if YapToText crashes in the middle of a dictation?
The audio is on disk from the first moment you speak. At the next launch the app transcribes it, puts the text on the clipboard, and files it in History as "Recovered after a crash". A recording under half a second is discarded as a stray tap.
Can I turn off history, or stop it from saving audio?
Yes. Settings, under Advanced, has a Save dictation history switch and an Also save the audio recording switch. With audio off, the file is deleted the moment a dictation ends; with history off, dictations are used once and never stored.
How long does YapToText keep dictations?
By default it keeps the last 500 entries and deletes anything older than 30 days at launch. You can change both: Keep everything (up to 2,000), Keep last 100, or This session only, and auto-delete after 7, 30, or 90 days, or never.
How do I export my dictation history?
Each entry exports its text as a .txt file or its audio as a .caf file from the row's export menu. The Export button on the History page writes every entry in the current filtered list to one Markdown file.