Podcast transcripts as clean, speaker-labeled Markdown — one episode or the whole show

You've listened to hundreds of hours. You still can't search a word of it. Spoken returns any episode — or a show's whole back catalog — as Markdown with real speaker names, ready for your notes or your LLM.

Try free — no signup
Search any episode or call the API with key pt_demo — first transcript in 30 seconds. 12,000+ transcripts fetched by people building searchable podcast archives (August 2026)

"I used Spoken to add every My First Million episode to my knowledge base, with a cron to pull new ones. Now I can enjoy the podcast on a run, then chat with Claude about it later — every episode saved and accessible in my Claude sessions."

— Marcus Taylor

How it works

Two API calls. Search by text or paste a URL from Spotify, YouTube, or any podcast app — then fetch the full transcript.

# 1. Search for an episode
curl -H "x-api-key: pt_demo" \
  https://spoken.md/search?q=huberman+sleep

# 2. Get the transcript
curl -H "x-api-key: pt_demo" \
  https://spoken.md/transcripts/1000651996090

Response is text/markdown with speaker names and credit info in headers:

HTTP/1.1 200 OK
Content-Type: text/markdown; charset=utf-8
X-Credits-Remaining: 99
X-Credits-Charged: 1
**Andrew Huberman** (0:00)
Welcome to the Huberman Lab podcast,
where we discuss science and science-based
tools for everyday life. Today my guest is
Dr. Matt Walker, professor of neuroscience
at UC Berkeley and author of Why We Sleep.

**Matt Walker** (0:45)
Thank you for having me, Andrew. Sleep is
one of those things where small changes to
your routine can have outsized effects on
both mental and physical health.

...

Take the whole back catalog

A show you follow has a run — sometimes hundreds of episodes, searchable once they're sitting in your notes or knowledge base. List them in one call, then loop them through the transcript endpoint:

# List every episode of a show (free — metadata only)
curl -H "x-api-key: pt_demo" \
  https://spoken.md/podcasts/{podcastId}/episodes

Returns a JSON episodes array with an id for each — fetch them through /transcripts/{id} to build the full archive. Every /search result carries a podcastId, so you can pivot from any episode straight to its whole show.

Listing episodes costs nothing — you're charged only for transcripts you successfully fetch. A 300-episode back catalog is 300 credits: $30 at the 500-pack rate. Point the same call at a cron afterwards and new episodes land in your archive as they publish.

Per episode, not per minute

Download audio Convert format Run Whisper Bolt on diarization Chunk for LLM Manage storage

Doing this yourself for one episode is an afternoon. Doing it for a show's back catalog is a project — and speech-to-text APIs bill per minute of audio, so a few hundred episodes puts hundreds of hours on the meter before you've written a line of code to work out who's talking.

Spoken bills per episode, not per minute. One call returns speaker-labeled Markdown with real names, ready to drop straight into your notes or your LLM's context window. The back catalog stops being a project and becomes a loop.

Real speaker names, not "Speaker 1"

Figuring out who is speaking is harder than transcribing what they say. Most tools punt — you get "Speaker 1," "Speaker 2," and a manual cleanup job. Spoken resolves speakers to their real names from context.

Whisper + diarization

Speaker 1 (0:00)
Welcome to the podcast, where we discuss science and science-based tools for everyday life.

Speaker 2 (0:45)
Thank you for having me. Sleep is one of those things where small changes can have outsized effects.

Spoken

**Andrew Huberman** (0:00)
Welcome to the podcast, where we discuss science and science-based tools for everyday life.

**Matt Walker** (0:45)
Thank you for having me. Sleep is one of those things where small changes can have outsized effects.

No post-processing, no manual cleanup, no guessing.

Seen enough? Your key is ready in 30 seconds.

Agent integration

# Agent skill (Claude Code, Cursor, Windsurf, etc.)
npx skills add https://spoken.md

# OpenAPI spec — works with any agent framework
https://spoken.md/.well-known/openapi.json

# llms.txt — automatic LLM discovery
https://spoken.md/llms.txt

# MCP server (Claude Desktop, Cursor, Cline, etc.)
npx spoken-mcp

Pricing

Starter
$15 / 100

$0.15 per transcript

Volume
$160 / 2,000

$0.08 per transcript save 47%

For scripts & back-catalogues

Credits never expire. Errors are never charged. If it doesn't work, you don't pay.

Each transcript replaces roughly a dollar of transcription infrastructure. No subscription, no overage charges, no annual commitment.

Already have a key? Top up here — or your agent can do it automatically via the API.

FAQ

What podcasts are supported?

Search by text or paste a URL from Spotify, YouTube, or any podcast app. Shows in other languages work too — Italian, German, Spanish, French and Portuguese among them — and each transcript comes back in the language it was recorded in, never translated. Availability varies episode by episode rather than by language, so search for your show: every episode it returns is one you can fetch.

Can I get a show's entire back catalog?

Yes, and you don't need to hunt down each episode by hand. One call to /podcasts/{podcastId}/episodes lists every episode of a show that has a transcript available, and that call is free — it returns metadata only. Fetch them by ID from there: one credit each, and re-fetching an episode you already pulled is never charged again.

How are speaker names detected?

Speaker names are detected automatically by analyzing the transcript for name mentions — no manual lookup table or post-processing required. When real names cannot be determined from context, labels like "Host" or "Guest" are used as fallbacks.

What format does the transcript come in?

Transcripts are returned as clean Markdown with speaker names in bold and timestamps per turn. A typical one-hour podcast episode produces 8,000–15,000 tokens — sized to fit in most LLM context windows in a single call. No proprietary markup, no timing artifacts, no post-processing needed.

Can I use this with my AI agent?

Yes. Install the agent skill with npx skills add https://spoken.md, add it as an MCP server with npx spoken-mcp (Claude Desktop, Cursor, Cline, etc.), use the OpenAPI spec for any agent framework, or make a plain HTTP call — anything that can hit an API works.

Is there a free trial?

Yes. Use the demo key pt_demo with any endpoint — no signup or payment needed. The demo key returns a full transcript for a sample episode so you can evaluate the format and quality before purchasing.

How do I get more transcripts?

Paste your API key in the top-up form above, or let your agent handle it — the API response includes a top-up link when credits run out.

Does a longer episode cost more?

No. One credit per episode, whatever its length — a four-hour interview costs the same as a twenty-minute one. Nothing is billed per minute of audio, so a show with long episodes costs no more than a show with short ones.

How much does it cost?

Transcripts start at $0.15 each (100-pack for $15), with volume discounts: 500 for $50 ($0.10 each) or 2,000 for $160 ($0.08 each). Returning customers get lower top-up rates. Errors (404, 502) are never charged. No subscription — credits never expire.

Compare & learn more

Popular podcasts

Browse transcripts from popular shows:

Example transcripts by podcast → · Browse by topic →

Try free — search an episode

From $0.08/transcript. No subscription, no expiry. Try with pt_demo first.