What it does
Turn a Big Brother season into a competition your whole friend group plays together: draft the house, make a quick weekly pick before each episode, and let the app score it automatically. For the superfan who is not in a league yet, give a two-minute pre-episode ritual and a place to go deep on houseguests without a spreadsheet or a login.
Currently
Live at bigbrotherfantasy.com, hosted separately from k8mak.com, built on a Vite and React front end with a Supabase backend (a sibling of SurvivorTribes, forked from the same codebase). BB28 premiered July 9 2026, and one episode of real data rewrote the strategy. The draft is still open. Activation turned out healthy, not broken: about 71% of people who register go on to make a team or join a league. The real leaks are downstream. Leagues stall before they draft, the weekly ritual that actually caught on is the free no-auth prediction poll rather than the login-gated weekly picks, and league commissioners are the reliable buyers of the paid Season Pass. The North Star stays Weekly Engaged Players, rebaselined to the real user base, and the protected bet moved to the anonymous weekly poll as the mass-market ritual.
Roadmap
/now-next-later-roadmapNow/Next/Later Roadmap- Draft-close countdown plus a commissioner nudge campaign, to push stalled leagues to draft before the first eviction
- The no-auth prediction poll as the homepage weekly ritual, every episode, no login (the proven spine)
- Reclaim campaign for the registered-but-idle and the joined-but-undrafted
- Fix the leftover season_number data bug from the Survivor fork
- Weekly Engaged Players instrumentation on the real events: solo picks, poll votes, draft completion, logins
- Solo-to-commissioner upsell: turn completed solo players into the paid act of starting a league
- Ghost-league 'invite your friends' prompt for the one-person leagues that never filled
- Episode-timed notifications (poll closing, your player scored, recap live)
- Verify and relaunch weekly picks as paid league depth, not the mass ritual
- Standings auto-update after each episode
- Multi-season and multi-show platform: the seasonality hedge and the BB29+ growth path
- League depth for the invested few: trades, waivers, power rankings, head-to-head
- Commissioner-pays-per-league pricing test (parked until per-user conversion stalls)
- Achievements and badges once the weekly retention loop is actually proven
Recently shipped
- Jul 8, 2026Baked real HTML, meta, and JSON-LD into the client-rendered SPA with a prerender pass, plus homepage schema and per-page meta, so crawlers and AI engines see the app instead of an empty shell (K8-1783).
- Jul 8, 2026Added BBFantasy to the k8mak.com apps catalog with a thumbnail and this detail page, timed to premiere week.
- Jun 28, 2026Ran the full 16-step product-strategy recipe grounded in the live repo and real GA4 data, and locked BBFantasy as a recurring, season-agnostic product.
How I know it's working
instrumented Β· awaiting trafficThe number of unique people who complete at least one core engagement action within a given episode week during the season. A core action is a weekly pick or prediction on the free no-auth side, a draft or lineup or standings check on the paid league side, or an active use of the compare tool. It is active-only on purpose: counting passive page views would let search traffic inflate the number without measuring the habit. It spans free and paid, so it keeps the team building the funnel rather than the paywall, and it leads Season Pass revenue rather than lagging it.
The events are wired into a privacy-first store. Counts populate here as people use it. This is the honest part of the work: instrument first, claim later.
How it's built
How I built it
I built BBFantasy for the same reason I built SurvivorTribes: I love Big Brother, I love a good fantasy league, and the two never quite fit together without a pile of manual scoring. It is a sibling of SurvivorTribes, forked from the same codebase, so the shape was familiar. What keeps surprising me is how fast real data corrects whatever story I had been telling myself.
Round two, and the data humbled me again
Back in June, before a single episode aired, I ran the full 16-step product process on this app and decided the funnel was broken. The story I told myself was that almost nobody crossed the login wall, so activation was the whole game. Then the premiere aired, the first real users showed up, and I got to check that story against production data instead of pre-launch guesses.
It was wrong in the most useful way. Activation is healthy. About seven in ten people who register go on to make a team or join a league. The thing I was most afraid of, that people show up and never do anything, was not the real problem.
The real problem sits one step later. Leagues stall before they draft. People create a league, or join one, and then the group never actually sits down to pick teams, so the league dies quietly before the season gets going. That, not the login wall, is where the players I care about leak out.
The ritual I did not bet on
The other correction stung a little. In June I named a weekly ritual and protected it above everything else: a login-gated weekly pick I was sure would carry retention. It has zero uses so far. Meanwhile the thing I treated as a nice-to-have, a quick anonymous prediction poll that needs no account, is where people actually keep showing up week to week.
So I moved the bet. The poll is the ritual now. It is frictionless, it lives on the free side, and it is the one habit the data says is real. The login-gated picks feature is not dead, but it demotes to league depth for the people who are already invested, instead of being the thing the whole strategy leans on.
Revenue is a real target now
Here is the part I did not expect to be able to say this season. The paid Season Pass works. Commissioners buy it, reliably: the people who start leagues convert at a rate I would be happy with in any product, and every paying customer so far is a league organizer. That tells me exactly where the money comes from. It is not a paywall to optimize. It is league creation.
That changes the goal. In June I called revenue a validation signal and refused to put a number on it, because optimizing a paywall nobody reached would have been the wrong problem. Now I have proof people pay, so revenue is a real, modest target for the rest of BB28, and the way I grow it is the same as the way I fix the biggest leak: get more leagues to actually draft. The commissioner who pays and the league that stalls are the same story from two directions.
I will still build this to last past one season. BBFantasy is meant to be a recurring product, so after BB28 the same engine loads the next season, the way SurvivorTribes grew beyond a single one. Win this season honestly first. But build it so season two is a content load, not a rebuild.
The strategy behind it
A snapshot of the product process this app was built from. Each artifact comes from a k8 skill you can run yourself. It reflects the original plan, not the live state above.
Jobs to be done
/jtbd-analysisJTBD Analysis| When I⦠I want to⦠| Importance | Frequency |
|---|---|---|
| When my friend group watches a Big Brother season, I want to turn it into a competition we all play together, so we have stakes and trash-talk all summer. | high | high |
| When a new episode is about to air, I want something to do and predict, so watching feels active instead of passive. | high | high |
| When I am a superfan between episodes, I want to go deep on houseguests, stats, and history, so I can feel informed and form opinions. | medium | high |
| When something wild happens in the house, I want to react and share and look clever to my people, so I get a little social currency. | medium | medium |
| When I run a league, I want to manage scoring and keep my players engaged with near-zero effort, so I am not doing unpaid admin all season. | high | high |
| When the season ends, I want to settle who won and remember it, so the bragging rights are real and durable. | medium | low |
Persona
/persona-createPersona Create- Be informed and be right about her predictions
- Have one structured place to make and track picks instead of Wikipedia plus Reddit plus scattered wikis
- Look clever to her people with a low-effort shareable
- Houseguest info is scattered across a dozen tabs
- Nowhere structured to make a prediction and prove it later
- Reacting well takes more effort than it should
Persona
/persona-createPersona Create- Get everyone playing fast, before the season starts
- Never hand-update a scoring spreadsheet again
- Keep the group engaged all summer, not just on draft night
- Herding friends to sign up, and the league dying before it starts
- Manual scoring every Thursday
- Players ghost after the draft and nothing brings them back
Persona
/persona-createPersona Create- Be part of the group fun without studying
- Play in a few taps and talk smack in the group chat
- Fantasy leagues feel intimidating and homework-heavy
- Bounces immediately if onboarding is heavy
Prioritization and risks(the internal detail)
RICE prioritization
/rice-scoreRICE Score| Feature | Reach | Impact | Conf. | Effort | Score |
|---|---|---|---|---|---|
| Episode countdown plus this-week poll on the homepage | 3000 | 1.5 | 80% | 0.5 | 7200 |
| Surface the compare tool everywhere | 1500 | 2 | 90% | 0.5 | 5400 |
| Homepage 'do something now' path | 3000 | 2 | 80% | 1 | 4800 |
| Share CTA on every page | 2500 | 1 | 70% | 0.5 | 3500 |
| Named weekly ritual: Thursday Picks (strategic spine) | 2000 | 3 | 80% | 1.5 | 3200 |
| Solo Team shareable graphic | 2500 | 2 | 70% | 1.5 | 2333 |
Pre-mortem risks
/pre-mortemPre-mortemSolo-founder capacity collapses mid-season. Too many 'Now' items compete for the same scarce time, so the ritual ships half-done while the shareable and the homepage all fight for attention. This is the most likely killer.
highMitigation: Ruthless sequencing. The Thursday Picks ritual is the protected spine; everything else is explicitly cuttable, and 'Next' stays 'Next' no matter what.
Structural churn beats the ritual. A player's picks get evicted from the house and they leave regardless of features. This is the most Big-Brother-specific risk: reality TV evicts your reason to care.
highMitigation: An 'evicted player save' mechanic, a Solo winner-pick that keeps stakes alive, and league-wide engagement so it is not only about your one player.
The weekly ritual shipped but nobody noticed. Thursday Picks existed but was not promoted, so retention never moved.
mediumMitigation: Make it the homepage hero on episode days, name it clearly, and add the email nudge if the 'Now' work lands early.
The launch slipped. Cast data or payments were not ready by premiere, so the one reliable traffic spike hit a broken app and never came back.
mediumMitigation: Lock the launch blockers before premiere and soft-launch with placeholder houseguests if cast data slips.
Bot traffic masked the truth. Bots were never filtered, so Weekly Engaged Players looked fine or looked dead and decisions were made on noise.
mediumMitigation: Filter bots before reading the metric. This is a 'Now' prerequisite, not optional.