Fill cancelled therapy slots from the waitlist
The idea
A late cancellation costs a private-practice therapist 100-200 USD, and it happens weekly. Meanwhile the same therapist keeps a waitlist of clients begging for an earlier slot. Connecting the two currently means the therapist playing phone tag between sessions, so the slot usually just dies.
SimplePractice and its peers have waitlists, but they are static lists a human still has to work through manually. The whole wedge is the cascade: a staggered SMS waterfall that runs itself while the therapist sees their 2pm client, with first-reply-wins logic and automatic close-outs. Keeping the data to first names and phone numbers keeps the product deliberately out of PHI territory, which keeps the build a week instead of a year.
Who pays
Solo therapists and small group practices pay 29 USD/month out of their own pocket, and one filled slot covers three to six months of it. Distribution: therapist Facebook and Reddit communities, private-practice business podcasts, and directories like Psychology Today where practice-building content already circulates.
MVP scope
- Prioritised waitlist with drag-to-reorder (first name + phone only)
- One-tap slot-open trigger with date and time
- Staggered SMS waterfall with first-YES-wins and close-out texts
- Live fill-status screen and fill history
- Quiet hours and configurable stagger window
- Skip for v1: EHR/calendar integrations, client portal, payments for sessions, group practice roles
Build SlotBack, a web app that fills cancelled therapy appointments from a prioritised waitlist via SMS. Stack: Next.js (App Router), Twilio for SMS, Supabase (Postgres + auth), Stripe for billing. Core flow: the therapist maintains a waitlist of clients wanting earlier or additional sessions, stored as first name and mobile number only, in priority order with drag-to-reorder. When a cancellation lands, the therapist opens the app and taps Slot Open, picks the date and time, and hits Send. The app texts the top waitlist entry: a slot has opened Thursday 3pm, reply YES to take it. If no YES within a configurable stagger window (default 15 minutes), it texts the next person, and so on down the list. First YES wins: the slot is marked filled, the winner gets a confirmation text, and anyone mid-window gets a polite close-out text saying the slot is taken. Pages: magic-link login, waitlist manager with drag reorder, slot-open form, live fill status screen showing the waterfall in real time, history of filled and unfilled slots, settings (stagger window, quiet hours), billing. Implementation details: store only first names and phone numbers, no diagnoses, no session notes, and say so plainly on the settings page. Enforce quiet hours (no sends 9pm-8am local) and handle a YES arriving after the slot is filled with a graceful reply. Pricing: 29 USD/month solo plan via Stripe Checkout, 30-day trial.
// More Micro-SaaS ideas
-
Invoicing for freelance film crew
Freelance film crew hand-build invoices with day rates, kit fees, OT, and per diems; generates production-ready invoices from a simple call-time log.
Market read pendingWe are still researching this idea. -
Auto-generated graphics for youth sports leagues
Youth leagues wrangle Canva every single week; auto-generates schedule, matchup, and result graphics for every team straight from the fixture list.
Market read pendingWe are still researching this idea. -
Lead-first analytics for local businesses
Plausible tells local businesses pageviews, not jobs; cookieless analytics that ties visits to calls and quote forms so owners see which channel pays.
Market read pendingWe are still researching this idea. -
Restaurant websites built from the menu
Restaurant sites rot because menus change weekly; snap the menu and get a full site with schema markup, hours, and ordering links that stay in sync.
Market read pendingWe are still researching this idea.