Every sports recap today, from highlight reels and league app summaries to newspaper match reports and AI score bots, is written for fans: it assumes you already care about formations, form and the table. Sport Soap reads the same match data and writes for the other half of the room, turning results into characters, grudges and cliffhangers. The closest thing is the fly-on-the-wall sports documentary, which takes a film crew and a year; this is a two-minute episode for any match, the morning after.
The data it runs on
Football: football-data.org (free tier covers a set of top competitions, about 10 calls a minute) and API-Football (free plan of about 100 requests a day) give final scores, goals with minutes, cards, substitutions and line-ups as JSON.
Cricket: Cricsheet publishes free ball-by-ball data for thousands of men's and women's matches as JSON and YAML, usually a day or so after play. Perfect for "the over that changed everything".
Basketball: balldontlie offers a free, rate-limited API for NBA games and box scores.
Match reports: the club's own published report or a news story, read by an LLM to catch the human moments a data feed misses (a captain consoling a rookie, a coach sent to the stands).
How it is accessed: a small server job polls at full time, caches each match once, then every user's episode is written from that cached copy. No per-user API calls.
Limits and gaps: lower divisions, many women's leagues and amateur clubs are thin or missing in free feeds; live data on free tiers is delayed; player personalities are not data. Characters are built only from on-field facts and public career history.
Fallback: paste a match report, or type the score and three moments you heard about. The demo uses fictional leagues so nothing here is about real people.
1. The mission
Let anyone join the conversation about sport without pretending to love it. Sport Soap turns any match into a short drama with characters you can root for, then hands you the three sentences that make the fan in your life light up.
2. Why people can't resist it
Belonging without homework. Half of every family group chat goes quiet on match day. A two-minute episode lets them talk back.
Serial storytelling. Arcs run across a season. Once you care whether the rookie gets her redemption, you come back on Sunday.
Social reward. Saying one right thing to a fan ("that captain's header in stoppage time!") earns instant warmth. The cheat sheet is a small superpower.
3. How it works for real
Ingest: the full-time job pulls the event feed and the match report, normalised into one event list (minute, type, player, team).
Find the drama: a fast cheap model (Gemini Flash or DeepSeek via OpenRouter) scores each event for story value: comebacks, red cards, debuts, former club meetings, last-minute winners.
Cast and write: a frontier LLM (Claude or GPT) casts 4 roles from the line-up (veteran captain, rookie, rival coach, the one who left) and writes a 12-scene, two-minute script in the chosen tone, with every dramatic beat tied to a real event ID.
Voice: a TTS model reads the narrator lines; subtitles are timed from the audio.
Animate: template scenes (stadium, close-up, split screen, rain, flashback) are filled with drawn characters in team colours. No video model is needed, so it stays cheap and fast.
Cheat sheet: the same LLM writes 5 fan-safe lines plus 2 things not to say, checked against the facts.
4. Cost per use
About $0.02 per recap: one cheap scoring pass plus one frontier script call. Narration adds about $0.01. Animated template scenes cost nothing to render. A fully video-generated episode would cost $12 or more for two minutes at $0.10 per second, so it is never used for the free tier.
Free: 3 episodes a week, one followed team. Season Pass ($3 a month): unlimited matches, every followed team as its own series, narrator voices, and the weekly "Previously on" omnibus.
5. Growth loop
The cheat sheet line gets said out loud to a real fan. The share card ("I watched the Herons as a soap opera") travels into family chats, where the other non-fans tap it. Fans share it too, because seeing their club as a drama is funny and flattering.
6. Risks and guardrails
Real athletes: drama comes only from on-field facts and public records. No invented romances, injuries, feuds or private lives. Every episode is labelled "dramatised from match data".
Tone: no mocking of injuries, bodies, nationality or mental health; a classifier blocks these before publish.
Trademarks: club names in text only, no crests or kits copied; characters are stylised, not likenesses.
Youth sport: under-18 competitions are excluded.
7. MVP build order
One league, one feed: football-data.org full-time job that caches events.
Claude prompt that returns a 12-scene JSON script plus cast, with event IDs for each beat.
The SVG scene player with timed subtitles (this page is most of it).