I put every tool in a category through the same battery, score it out of 100, and publish a dated PASS, BORDERLINE or FAIL. The inputs are public, so you can run the test yourself and tell me where I'm wrong. A new one lands every couple of weeks.
A new test every couple of weeks. No spam, unsubscribe anytime. By subscribing you agree to receive the newsletter and to our Privacy Policy.
Same published inputs, dated and re-runnable. No sponsorships; the verdict isn't for sale.
Each test adds a row. A re-test gets its own dated row, so nothing quietly gets overwritten. The back catalogue is the proof I'm not just chasing whatever launched this week.
| Tool | Category | As of | Score | Verdict | Cost / result | Buy or skip |
|---|
Rows marked pending are queued for the next run. Bands: PASS 75 and up, BORDERLINE 55 to 74, FAIL under 55.
Every tool in a category meets the same battery and the same scoring. The number I care about most is the cost of a result you can actually use.
One task set, one set of inputs, run identically. No friendly demos and no improvising to flatter a particular product.
Quality, reliability, speed, setup friction, cost per result, workflow fit, and the limits nobody advertises. It all collapses into one number out of 100.
Sticker price lies. I track what one output you can trust actually costs, once the retries and the re-dos are in.
Every verdict is pinned to a version and a date, with the inputs published so you can run it yourself and check me.
First battery: AI meeting notetakers — Otter, tl;dv, Fireflies, Granola and Fathom (free plans, tested 2026-07-14). Below is the exact meeting audio every tool received (Generation 1). Download it, feed it to any notetaker, and score it against the fixed set — written before the audio was generated.
Download Generation 1 — the scored file · three speakers, 2:16 · also the alternate take (Gen 2) · voices generated with ElevenLabs
ElevenLabs rewrites the container metadata on every download, so byte hashes of the same take won’t match between downloads — compare the decoded PCM, not the raw file.
21 terms scored: Northwind, Postgres, HubSpot, TikTok, MySQL, RDS, Slack, Kubernetes, HPA, EC2, AWS, CloudWatch, Datadog, UTM, Google Analytics, Mailchimp, Salesforce, Notion, LinkedIn, SOC 2, Jira. Each is scored twice — heard (word recognised, any spelling) and canonical (exact spelling and case) — because a lowercase brand name is a different failure from a misheard word.
10 action items scored: book the Saturday maintenance window (Slack by Thursday); open an AWS support ticket with the CloudWatch logs; tune the Datadog latency alert to the 95th percentile; grant Carla Google Analytics edit access; send three Mailchimp subject-line options for a vote; write a dedup script and test it in the Salesforce sandbox; put the $12k budget proposal in Notion; email the SOC 2 auditor about the August date; everyone update Jira tickets before standup; write a CloudWatch retention policy. Each is scored on capture, correct owner, and whether the tool invented a task that was never said.
Result (composite = terms 40% + action items 40% + speakers 20%): Otter 98 · tl;dv 90 · Fireflies 87 · Granola 59. Every tool heard essentially every term — transcription is close to solved. They split on understanding the conversation: Otter labelled all three speakers and every task owner correctly; tl;dv and Fireflies heard flawlessly but confused speakers; Granola doesn’t separate speakers at all and compressed a whole sentence into two words; Fireflies invented a task nobody said.
The mistakes followed the quietest voice. The same term was spoken by different people on purpose. Five of six errors landed on the one speaker measured 3 dB quieter than the others — the identical words came through cleanly from the louder voices. (Three tools heard “EC2” as “easy to.”) The voices are AI-generated, so read this as a reproducible probe, not proof of bias in the wild — download the file and try your own recording.
Inputs weren’t identical for every tool. Otter and Fireflies take a file directly; tl;dv, Granola and Fathom only join a live call, so they were fed the same file played into a meeting — a lossier capture that handicaps them. tl;dv still heard every term anyway. Fathom is not scored: it labels speakers by meeting participant, so on a played-in file it assigned the whole conversation to one person. That’s a limitation, not a verdict. Mini-run: two core tasks plus speaker labels; the full battery adds the rest.
A litmus strip doesn't care about the marketing, and neither does the score. Drag it: the same paper gives every tool the same reading.
You get the scorecard, the raw inputs, and a straight buy-or-skip call, every couple of weeks.
No spam, unsubscribe anytime. By subscribing you agree to receive the newsletter and to our Privacy Policy.