BACK TO BLOG
USE CASESOctober 26, 202610 min read

Mine Customer Calls for Content With tl;dv or Fireflies

JH

By Joris van Huët

Enterprise Interim CMO & Marketing Leader · 15+ years · 50+ orgs

Published

2026-10-26

The short answer: when five people on your team run 30 external calls a week, nobody in marketing listens to them, and the website answers last year's doubts. An n8n workflow can read each transcript as it lands, pull out the customer's objections, questions and own wording with a timestamp, and file them where a person checks every quote before use. tl;dv opens its API and webhooks on Pro at $18 a seat a month billed annually, Fireflies.ai lists API access on its Free plan, and n8n Starter is $24 billed monthly (tl;dv pricing, Fireflies pricing, n8n pricing, checked on 26 October 2026). For example, listening back to 30 calls of 40 minutes takes 30 x 40 = 1,200 minutes a week; checking 25 extracted quotes at 2 minutes each takes 25 x 2 = 50.

Disclosure: I may earn a commission through some links on this site. It does not change what this page says.

Customers voice their doubts to sales and success, and the pages meant to settle those doubts get written by people who never heard the call. This setup carries the customer's words across, timestamp attached, with a person between the transcript and anything published. The single-tool versions are the Fireflies.ai objection tracker and the tl;dv quote hunt; the CRM side of the same calls is in call notes into CRM updates.

Before the first call is mined:

  1. Seats for whoever organises the calls. tl;dv opens a meeting to its API only when the organiser is on Pro or above (API article). For example, 4 reps and you on Pro billed annually cost 5 x $18 = $90 a month (tl;dv pricing). Fireflies gives Free users 30 API requests a minute and 500 a day (limits), but delivers webhooks only for meetings you own unless a Super Admin on Enterprise collects the team's (Webhooks V2).
  2. The notetaker and notice you already run. If calls are recorded today, check that the notetaker's notice is on and that your privacy notice names marketing content as a purpose. The law section says why.
  3. The objections you already know. CRM loss reasons and phrases from pipeline reviews go into a Themes tab in a Google Sheet, for the agent to match against.
  4. A hand-mined baseline. A person mines 10 recent calls into the same sheet. Later the agent runs on those 10, and the two lists show what it misses and what it gets wrong.

From recording to checked quote

  1. Consent before the bot joins. tl;dv's Consent Collection swaps the meeting link for a consent page; if any participant declines, that meeting is never recorded. It covers calendar meetings recorded automatically and created after setup, not instant calls (consent collection). Fireflies' Compliance Notification emails participants an hour ahead with a link that keeps the bot out, and pins a chat message in the call; /ff pause stops recording from that moment only (consent guide). Switch both on at team level.
  2. Trigger. In tl;dv, put a webhook on MeetingReady and tick Include meeting transcript: the payload carries organiser, invitees with emails, meeting URL, and transcript segments with speaker and start time (API docs, webhooks article). The n8n Webhook node uses Header auth and responds Immediately, since tl;dv waits 10 seconds before retrying (Webhook node). On Fireflies, subscribe to meeting.transcribed with a signing secret; the payload holds only the meeting ID, so an HTTP Request node asks the GraphQL transcript query for sentences, speakers, start times, meeting_attendees and workspace_users (transcript query, schema).
  3. Customer calls only. An If node passes a meeting only when an invitee's email domain is not yours (If node), and a Code node lists the speakers who are outside attendees; on Fireflies, workspace_users already names the teammates (Code node). Internal meetings stop here. Nobody in them agreed to become content.
  4. The agent reads and proposes. An AI Agent node gets the transcript, the customer speakers and a page of product notes (AI Agent node). Its rules: quote customers only, word for word, with the start time; never join two sentences; label each item objection, question, customer wording or praise; for each objection or question, propose one piece of content; leave out third parties' names, quoted prices and personal circumstances. Its one tool is Google Sheets, Get Row(s), on the Themes tab, so it can match a known theme or mark one new without writing anything (Tools Agent). A Structured Output Parser returns one item per row.
  5. Rows land as unchecked. A Google Sheets node outside the agent appends each item to a To check tab: meeting link, start time, speaker, quote, label, theme, proposed content, status unchecked (Google Sheets node). In the workflow settings, stop saving successful production executions, so whole transcripts do not collect in n8n's history (workflow settings).
  6. A person checks every quote. Weekly, the content owner opens each meeting at its start time and plays the passage, or reads the transcript around it where the plan keeps no recording. Exact words? The customer speaking? Does it identify them, their company or someone they mention? Then a status: insight only, which shapes copy but never appears in it; anonymous use; or named use, which waits for the customer's written yes to the exact words, as the tl;dv how-to sets out. The rest is dropped.
  7. The backlog. A pivot of checked rows counts each theme beside its proposed content. Each month the top three themes become the plan: an FAQ answer, a comparison section, a help article.

The free version first

By hand, one hour a week does most of it. Pick the week's five external calls with the most customer talk, search each transcript for words from the Themes tab, and paste quotes with timestamps into the same sheet. tl;dv Free records and transcribes without a cap, with AI notes on 10 meetings, data kept up to 3 months and no API (tl;dv pricing). Fireflies Free includes transcription, meeting search, 400 minutes of storage per team and API access (Fireflies pricing).

The automated version can also start without a licence: Fireflies Free for your own calls, n8n's self-hosted Community Edition (n8n pricing) and a Google Sheet, with the model's usage as the only bill. Paid plans add coverage: every rep's calls, not the five you picked.

What it costs

ToolWithout payingPaid, as listedWhere it says so
tl;dvFree: unlimited recordings, AI notes on 10 meetings, no APIPro: $18 a seat billed annually, $29 billed monthly; Business: $29 or $39Pricing
Fireflies.aiFree: API access, 400 minutes of storage per teamPro: $10 a seat billed annually, $18 monthly; Business: $19 or $29Pricing
n8nCommunity Edition, self-hostedStarter: $24 billed monthly, 2,500 executionsPricing
Google SheetsPart of a Google accountNothing extra for this jobSheets node
Chat modelNot needed by handBilled by your model providerAI Agent node

Prices in US dollars per seat a month, checked on 26 October 2026. Each inbound webhook request is one n8n execution (executions), internal meetings included, before the If node stops them. For example, 30 customer calls and 40 internal meetings a week for 4 weeks come to (30 + 40) x 4 = 280 executions, inside Starter's 2,500.

Where the tiers push you

Both notetakers keep the all-reps view on a higher tier than the one that first opens the API. tl;dv lists API and webhooks on Pro, team-wide automations on Business, and reserves organisation-wide automation for Enterprise in its API documentation (tl;dv pricing, API docs); Fireflies passes the whole team's webhooks only to a Super Admin on Enterprise (Webhooks V2). Coverage is what the upgrade sells. Start with the calls one person organises, and buy coverage once the check rate says the rows earn a person's hour.

How to know it worked

First, the agent against the baseline. Run it over the 10 hand-mined calls and count two things: quotes the person found that the agent missed, and agent rows that fail the check on words or speaker. The second matters more. A sentence put in the wrong mouth is the failure that reaches a website.

Second, throughput: days from call to checked row.

Third, the content. Track each theme's mentions per 10 external calls. A holdout fits: of the top six themes, toss a coin for three to answer with content this month and leave three for next month, then compare how mentions moved after six weeks. Log campaigns in the sheet, because a new campaign changes who books calls.

The law on recording and reuse

Under Article 6(1) of the GDPR, processing is lawful only on one of the bases it lists, consent under point (a) and legitimate interests under point (f) among them. Article 13(1) requires telling people, when their data is obtained, the purposes and the legal basis, and the legitimate interest where (f) is used (GDPR on EUR-Lex).

This job adds reuse. Article 13(3) requires informing people before their data is processed for a purpose other than the original one, and Article 6(4) lists what decides compatibility: the link between purposes, the relationship with the person, the nature of the data, and the consequences for them (same regulation). A demo recorded for note-taking and then mined for the website is that situation, unless your notice named content from the start.

The notetaker settings do part of the informing: tl;dv's consent page and Fireflies' email and chat notice say a bot records, not that words may surface in your marketing. Questions for counsel: which basis covers the recording, (a) or (f); whether reuse for content is compatible or needs a fresh notice or consent; whether an unattributed quote still identifies its speaker; how long transcripts are kept; what the notetaker's data processing agreement says; and how your own team's recorded voices are covered.

FAQ

Can I use Granola for interviews where a bot is not welcome?

Partly. Granola runs on your computer with no bot, and on desktop it keeps the transcript but not the audio (Granola consent page), so the quote check can only read the transcript; confirm key sentences aloud during the call. Its MCP server returns raw transcripts on paid plans only (Granola MCP), which suits an assistant a person runs after each interview.

Can the agent publish anything?

No. Its only tool reads the Themes tab. A fixed Sheets node writes the rows as unchecked, and nothing in the workflow touches your website.

Does this work on calls in Dutch or French?

Yes, within the notetakers' language lists: tl;dv transcribes in 30+ languages (tl;dv pricing) and Fireflies in 100+ (Fireflies pricing). Keep the quote in the language it was spoken until the check is done, and translate only the rows marked for use.

TAGS
Customer CallsContent IdeasAI Notetakerstl;dvFireflies.ain8n

ABOUT THE AUTHOR

I am Joris van Huët, an enterprise interim CMO. 15+ years, 50+ organizations, including ING, P&G, Nestlé, BNP Paribas, WeTransfer and Vinted. I take on innovation projects (venture building, design sprints), agentic marketing (setting up and running AI agents) and hands-on multi-channel work. See the track record.

I wrote and published this with AI assistance, and I answer for it. Claims about my own experience are limited to the track record above, and a statistic links to its source or is labelled as an example. I sell interim and fractional CMO work, which is why this site exists. How this site is written.

Agentic marketing, built for your team

The agents in this article, built into your workflows and handed over to your team: the first one within two weeks.