Statistics

What you have dictated, estimated spend per transcription engine, and where the disk went

Settings → Statistics answers three questions the app could not answer before: how much you have dictated, what your own API keys were charged for transcription, and what is filling Speakly's data folder. It is in the Account group of the Settings sidebar, between Account and Plans and Billing.

It measures on demand: opening the tab reads your local usage entries and walks the data folder, showing "Measuring…" while it does. Nothing is sent anywhere to produce these numbers.

Dictation report

The first panel is your own record, in its own words: "Everything you have dictated with Speakly, counted on this computer." It opens with Total words dictated, all-time. That number is kept as a counter in its own right rather than added up from the usage entries in the table below, so trimming or clearing those entries leaves it standing.

Books written

Every 100,000 words counts as one book — the middle of a typical novel — and a bar underneath shows how far into the next one you are. Below your first book Speakly prints how far along you are instead of "0 books", and before your very first dictation it simply says the count starts there.

Streaks

A streak counts the calendar days you dictated on: once in a day is enough, and dictating ten times that day does not count for more. The current streak stays alive through the day after your last dictation, so you never lose it before the day is over; once a whole day has gone by without one, it is reported as no streak. Longest streak, beside it, is kept whatever the current one does.

Streaks start from your next dictation
The streak is written down as you dictate, and it only began being recorded when this feature shipped. It is not reconstructed from the history you already had, so both figures start from your next dictation rather than from your first ever.

The activity grid

Under the streak is a day-by-day grid: one column per week, rows running Sunday to Saturday, month labels along the top and a Less / More legend below. Each square is shaded by how many words you dictated that day, and hovering one gives the date, the words and the number of dictations. The grid runs from your first dictation up to today, and prints that span underneath.

The shades are relative to you
The five shades are cut from your own days rather than from fixed word counts: the darker levels begin at the quartiles of the days you actually dictated on. Someone averaging fifty words a day and someone averaging five thousand both get a grid with every shade in it, instead of one that is uniformly pale and one that is uniformly dark.

Usage and spend

The panel's subtitle states the scope: "What your own API keys were charged for transcription, estimated from each provider's published per-minute rate." Switch the period with 30 days / All time at the top right. With nothing recorded in the period it says "No transcriptions recorded in this period."

  • Engine — the provider that did the transcribing, with a short note where one applies
  • Transcriptions — how many entries the row covers
  • Audio — minutes of audio, printed as 45m or 1h 12m
  • Est. cost — those minutes times that provider's per-minute rate
  • Total — the sum of the rows that have a knowable rate

The rates

Each rate is the provider's published price for the model Speakly defaults to, in US dollars per minute of audio:

  • Groq — $0.0007
  • Mistral — $0.001
  • Deepgram — $0.0043
  • OpenAI — $0.006
  • ElevenLabs — $0.0067
  • Google Cloud STT — $0.016
  • Local model and Ollama (local) — $0.00, noted as "Runs on your machine"
  • Custom endpoint — no rate at all, noted as "Your endpoint, your rate"
Zero and a dash mean different things
A local engine shows $0.00, because running on your own machine costs nothing and saying so is the point. A custom OpenAI-compatible endpoint shows instead: someone else's endpoint bills at someone else's rate, and a zero would read as "this was free". A dashed row contributes nothing to the Total.
An estimate, not a bill
The footnote under the table says it in full: "An estimate, not a bill. It assumes each provider's default model and ignores their free tiers, and post-processing is not included — LLMs charge per token and Speakly counts words, so any figure here would be a guess dressed as a measurement. Your provider's dashboard is the real number."

So everything post-processing pays for — cleanup and formatting, Agent Mode, translation, FAQ, flashcards, meeting notes — costs nothing in this table and something on your provider's bill. Transcription is what is counted here. If a provider you use is missing from the table, no rate is known for it and its rows are left out rather than guessed at.

Disk usage

Below the table the same tab measures Speakly's data folder, prints the total as "… in Speakly's data folder", and splits it. Each row names the control that clears it:

  • Whisper models — "Delete unused sizes in Transcription"
  • Local LLM models — "Delete unused sizes in Post-Processing"
  • Saved audio files — "Cleared by “Delete history” in Data and Privacy"
  • History and settingsspeakly-config.json plus IndexedDB/
  • Caches — "Rebuilt automatically"
  • Everything else — the total minus the rows above

Rows measuring zero are hidden, so a fresh install shows fewer lines. For what each of those folders actually contains, see Data Storage.

The table only knows this computer
Usage entries are stored locally, per account, in speakly-config.json. All time therefore means every entry still on this machine: Settings → Data and Privacy → Erase & Restart erases them and the table starts over, while Delete history leaves them alone.
Statistics — Speakly