One-link guest intake for podcasters

Micro-SaaSWebweekendNext.jsSupabaseStripe

The idea

Booking a podcast guest triggers the same email scavenger hunt every time: can you send a bio, no not that long, a high-res headshot, how do you pronounce your surname, and please confirm we can publish this. The pieces arrive across five threads and two file-sharing services, and the consent confirmation lives in an email nobody can find a year later when a guest asks for an episode to be pulled.

Typeform can collect a bio. It cannot capture an in-browser pronunciation recording, produce a versioned, timestamped recording release, or file everything into an episode bundle with one download. Those three things are the wedge, and they are exactly what hosts assemble by hand today.

Who pays

Indie podcasters pay 9 USD/month, a trivial line next to hosting and editing costs, bought the week a guest no-shows the email chase for the third time. Distribution: podcasting subreddits and Facebook groups, podcast editor communities (editors recommend tools to their hosts), and integrations content around Riverside and SquadCast workflows.

MVP scope

  • Episode creation with unique guest intake link
  • Guest page: bio, socials, headshot upload, in-browser pronunciation recording
  • Versioned release text with timestamped consent records
  • Per-episode bundle with Download All zip including consent PDF
  • Intake status tracking across episodes
  • Skip for v1: scheduling, guest CRM, calendar integrations, multi-host teams, automated reminder emails
// Build prompt — paste into Cursor / Claude Code / Lovable / Bolt
Build GuestKit, a web app that collects everything a podcast host needs from a guest through one link.

Stack: Next.js (App Router), Supabase (Postgres + auth + storage), Stripe for billing.

Core flow: the host creates an episode (title, planned record date) and gets a unique intake link to send the guest. The guest opens it, no account needed, and completes one page: name and title, short bio, social links, headshot upload, an optional name-pronunciation recording captured in-browser via the MediaRecorder API, and a recording-release consent checkbox. The consent step shows the host's release text and, on tick, stores a consent record: full release text version, timestamp, IP, and user agent. Submissions file into the episode automatically, and the episode page has a Download All button that zips the bio as text, headshot, pronunciation audio, and a consent PDF.

Pages: magic-link login, episodes list with intake status (sent, partial, complete), episode detail with the collected bundle and Download All, release-text editor with versioning, intake page (guest-facing, mobile-first, works without login), settings, billing.

Implementation details: version the release text, and pin each consent record to the exact version shown, because edited-after-the-fact consent is worthless. Autosave the guest's progress to localStorage so a half-done form survives a tab close.

Pricing: free for 2 episodes, then 9 USD/month unlimited via Stripe Checkout.

// More Micro-SaaS ideas