Fireflies.ai
A weekend of work, and real gaps remain.
Joins your meetings, records them, transcribes and summarises, and makes the whole archive searchable.
Build me the meeting recorder and searchable archive I actually need instead of Fireflies. **The joining bot is the hard part, not the transcription.** Transcription is free and local now; getting a reliable participant into three different conferencing platforms is a permanent maintenance job. Build the archive, and record locally. STACK - Node 20+ with Fastify, server-rendered HTML - SQLite through better-sqlite3, WAL mode, FTS5 over the transcripts - whisper.cpp for transcription, locally - pyannote or a simpler energy-based split for speakers - A local model through Ollama for summaries, or your own key - Caddy in front THE DATA MODEL - meetings: id, title, started_at, ended_at, source, calendar_event_id, participants_json, audio_path, status - segments: id, meeting_id, speaker, start_ms, end_ms, text — the unit of everything, because a search result must jump to a moment - summaries: id, meeting_id, kind, body, model, generated_at — kinds are recap, decisions, actions - actions: id, meeting_id, segment_id, text, owner, due, status - consent: id, meeting_id, participant, method, at GETTING THE AUDIO WITHOUT A BOT - Record locally: system audio plus microphone, started by a hotkey or by a calendar trigger. **This sidesteps the entire joining problem and produces better audio than a bot in the room** - Save a WAV to disk immediately and keep writing to it. A crash must cost the last seconds, not the meeting - Chunk into fifteen-minute pieces so transcription can start before the meeting ends CONSENT, WHICH IS NOT OPTIONAL - **In many places recording without telling everybody is illegal, and in the rest it is a way to lose a client.** Announce it in the meeting, record that you did, and make the archive visible to the participants - A per-meeting opt-out that stops the recording, not one that hides it afterwards - A retention policy that is enforced by a sweeper, and deletion on request TRANSCRIPTION AND SPEAKERS - whisper.cpp with a medium model; the large one is better and slow, and a queue with a concurrency cap keeps the machine usable - Diarise into speakers and label them once per person from a short voice sample; without labels the transcript is unusable - Timestamps per segment, so clicking a line plays the audio there SUMMARIES THAT ARE WORTH READING - Three fixed sections: what was decided, what was agreed as an action and by whom, and what was left open. **Not a paragraph of prose** — nobody reads the paragraph - Feed the model the transcript with speaker labels, and quote the segment id behind every extracted action so it can be checked - Never let a summary be the only record. It is a convenience over the transcript, not a replacement THE ARCHIVE, WHICH IS THE ACTUAL VALUE - Full-text search across every meeting, results as segments with the surrounding lines and a play button - Filter by participant, date and calendar event - **This is why the product is worth having**: 'what did we agree with them in March' answered in five seconds WHAT MATTERS MOST Local recording and searchable segments. Skipping the joining bot removes the maintenance burden; the segment index is where the value lives.
What you lose
- A participant bot that reliably joins Zoom, Meet and Teams
- Speaker separation good enough to attribute a sentence
- Search across every meeting you have ever had
- Calendar integration that just works
If you would rather not build
- Otter or an existing notetaker, if the bot is the requirement
- The conferencing platform’s own recording plus local transcription
The escape hatch
open source · no votes, no paid placement
whisper.cpp
$0Fast local transcription on CPU, no API and no cost.
ggml-org/whisper.cppfree · open source
Meetily
$0Local meeting recorder with transcription and summaries.
Zackriya-Solutions/meeting-minutesfree · open source
Why this verdict
our own opinion · changed only by a person
58/100
Verdict kinda at 58: the archive and transcription are entirely doable locally and free. The joining bot is the piece worth paying for, and local recording avoids needing it.
History
tracked since 14 Aug 2026 · nothing is ever overwritten
Nothing recorded yet. This chart fills in once the page has visitors, votes or prompt copies — it will not draw a flat line to look busy.
Questions about Fireflies.ai
answered from the record above
Is Fireflies.ai free?
No — the plan we track is $18 a month. Pro at $18 per seat per month billed monthly, $10 billed annually.
Can you replace Fireflies.ai by building your own?
ALMOST. A weekend of work, and real gaps remain. Replacement score 58 out of 100, build time a weekend. Read what you lose before you decide.
How much does Fireflies.ai cost?
$18 a month on Pro — $216 a year. Recorded 14 Aug 2026.
What do you lose by replacing Fireflies.ai?
A participant bot that reliably joins Zoom, Meet and Teams; Speaker separation good enough to attribute a sentence; Search across every meeting you have ever had; Calendar integration that just works. If any of those carry weight for you, keep paying.
Is there an open-source alternative to Fireflies.ai?
Yes: whisper.cpp, Meetily. The prompt on this page is for when you want it your way instead.
Related entries
same category first, most replaced first
Every week, something stops being worth paying for.
New verdicts, prices that moved, entries added. One email a week. Unsubscribe in one click. Nothing is being sent yet — your address is kept here, and the first issue is the first thing it is used for.
free forever · no tracking pixel · stored here, never passed to anyone

