Case study
WhatsApp Bangers
Upload a WhatsApp chat, get a comedy song made entirely of things your friends actually said, with a karaoke video to share back to the group.

The Challenge
This one's ours. Nobody asked for it.
Every group chat has its legendary moments: the 2am argument about whether a hot dog is a sandwich, the voice-note-length message that ends "anyway". We wanted to see if AI could find those moments in an exported chat and turn them into a song you'd actually send back to the group.
It's a silly idea, which made it a good test. Getting a model to write a funny song is easy. Getting it to write one where every line is something someone really said, sung by the right person, and synced to a video, is a proper engineering problem. It also meant handling people's private chats, and running jobs that take minutes on a platform built for requests that take seconds.
Our Approach
You upload the .txt or .zip that WhatsApp exports. We parse it, strip surnames, and ask Claude Haiku to pick out up to six comic themes. You choose one, pick one of eight genres, from folk to gospel to Broadway, and log in with your phone number. The login link arrives on WhatsApp, which felt right.
The lyrics are where the work went. The rule is that every line is quoted word for word from the chat. The model can't write its own jokes, only find yours. A validator checks each line against its source message and throws out anything paraphrased or attributed to the wrong person. We ran a bake-off on a 952-message chat before choosing a model:
- Gemini 3 Flash: 97% of lines verbatim, 34 seconds, about 1p
- Gemini 2.5 Pro: 100% verbatim, 77 seconds, about 20p
- Claude Opus 4.6: 100% verbatim, about 50p
Flash won. The validator catches the 3%, and a song that costs a penny to write can be free to make. The prompt got shorter as it got better. The last version mostly says "make it as funny as possible" and points out that LOLs, ๐ and ALL CAPS usually mark the good bits.
The song itself comes from a Suno-based music API, which returns two takes and word-level timings for the singing. Those timings drive a Remotion video of WhatsApp bubbles popping up in time with the vocals, previewed in the browser and only rendered to MP4 when someone wants to share it.
The fiddly bits, roughly in order of how much sleep they cost:
- Long jobs on Vercel. A song takes a few minutes. The API returns as soon as the job's submitted, and then a webhook and a background poll race each other. Whichever lands first wins, and the WhatsApp "your song's ready" message goes out exactly once.
- Matching words to lines. The timings come back as one flat stream of words, and Suno likes to repeat a chorus you didn't write. We map it back to the script line by line, allowing for the repeats. One emoji in the lyrics crashed the whole thing until we stopped sending emoji to the singer.
- Missing timings. Sometimes they come back empty. It retries on a back-off, and there's a cheap "realign" that fetches them again without paying for a new song.
- Not spending money by accident. Nothing that costs money runs before login. Chat analysis is cached by file, so uploading the same chat twice is free. An early retry loop that could spend 65p on a single song got removed.
The original upload isn't kept and media attachments are ignored. The chat text does go to the AI providers to make the song.
The Results
It's live at whatsappbangers.com. The first working version took about a week in April 2026, with a second push in late May for WhatsApp login and the privacy policy.
It's a toy, and we're fine with that. But the problems were real ones that turn up in client work all the time. Picking a model on measured accuracy and cost, not reputation. Checking AI output against the source instead of trusting it. Running slow AI jobs reliably on serverless hosting. Being straight with people about where their data goes. Those are exactly the things we're asked about on AI consultancy projects. It was just more fun to learn them on a gospel song about who forgot the bins.