From 12 Hours of Vibe Coding to 15M+ Plays and ~$47K ARR: The GeoSports Story
Frank Michael Smith built the sports quiz game GeoSports in 12 hours with Claude Code: 79 players on day one, a million within a month, 15M+ plays and ~$47K ARR five months on. Why sports trivia won — plus five replicable judgments for indie developers, and three honest caveats.

Starting with 79 players: one weekend, 12 hours
On a weekend in May 2026, Frank Michael Smith opened Claude Code without any grand plan to "start a business." He had simply been hooked on MapTap — a daily geography quiz game — for weeks, and a sports fan's obsession struck him: why was there no sports version?
Smith put it plainly: "I know almost nothing about software engineering, but I'm decent with Claude, so I fired up Claude Code and we got to work." He later recalled in his newsletter that he went back and forth with Claude "hundreds of times" and shipped the game the same day.
It had 79 players on day one and 575 on day two. Those numbers are the most worth remembering in this entire story — not the million-player climax, but the near-empty beginning. The turning point came on day three: Kendall Baker, who writes a widely read sports newsletter, featured the game, and daily players passed 4,000 before noon. Smith then posted it on X, and it took off.
On May 11, 2026, seven days after launch, Smith shared the first numbers on X: 366,000 total plays, 150,000 peak DAUs, 165,000 referrals from X — with zero marketing spend and content creation costs "near zero." MadRobot's in-depth report on October 10 called it "one of the clearest cases yet of a vibe-coded weekend project turning into a real business."
Why "five questions a day + drop a pin on the map"
Strip GeoSports down to its simplest form and it is one sentence: five sports questions a day, each answered by dropping a pin on a world map. Which ballpark has hosted the Chicago Cubs since 1916? Which city's team did the NBA stop from trading Chris Paul to the Lakers in 2011? The closer your pin lands, the more points you score. A round takes about a minute, needs no email address or sign-up, and ends with a scorecard built to be shared.
Every layer of this design has been validated — deliberately or by happy accident:
- The daily rhythm: Wordle already proved that "one round a day" is not a limitation but a hook. It turns "coming back" into a habit and "missing out" into loss aversion.
- The pin-drop interaction: It adds a physical feel and an element of luck beyond multiple choice. Guessing wrong is fun too — the agony of "I almost had it" is itself shareable material.
- Zero sign-up friction: Open and play. In social media traffic measured in seconds, every extra registration step sheds conversions. The zero-friction start deserves real credit for turning 79 day-one players into a snowball.
- The scorecard as advertising: Every round ends with something you can show off. Sports fandom is inherently competitive — get it right and you want to brag, get it wrong and you want a rematch.
By the end of May, Sportico reported that GeoSports had reached 1 million unique users and was averaging about 95,000 players on weekdays. Its shareable results swept across sports social media, and even former NFL head coach Jon Gruden posted a video of himself playing. Smith's summary to Sportico was almost disarmingly simple: "I just wanted to make a game that I like, and it turned out more people are like me than I thought."
From virality to real money: the restraint of a $5 Pro tier
Players soon lodged the sweetest complaint of all: one round a day wasn't enough. Smith's response wasn't to add ads — it was to launch Pro: $5 a month or $40 a year, unlocking past days' questions, random rounds, and sport-specific games.
Within two weeks, Pro had gathered about 1,000 subscribers. At roughly 1,000 × $5/month, that works out to approximately $47,000 in annualized recurring revenue (ARR) — an estimate from the early Pulse report, a simple subscribers-times-price calculation, not an audited financial figure.
What's more interesting is what Smith didn't do: he turned down sponsorship offers, mostly from betting and fantasy sports companies, to keep the game "pure." In a category where a sports trivia game is a natural fit for gambling ads, that decision meant personally shutting the fastest door to money. The judgment was clear: for a daily-habit product, trust and a sense of purity are the lifeblood — betting ads would poison the reason players open the game every morning. Less money now, survival later.
The biggest enemy wasn't competitors — it was forgetting
Once the game was rolling, the most common feedback Smith received wasn't "add features." It was: "I want to play every morning... I just forget."
This is the most honest life-or-death line for any daily product: the retention problem lives not inside the product but inside the user's memory. Smith's fix was direct and old-fashioned — on September 2, 2026, the GeoGames app launched on the App Store and Google Play, with a daily reminder as one of its core features. By then, GeoSports had topped 15 million rounds played.
Going native also brought a category expansion: GeoGames shipped with two spin-offs — GeoHistory (the history edition) and GeoFooty (a soccer edition for fans around the world). From a web mini-game to an app housing three games, GeoSports made the leap in under five months.
As of October 10, 2026, the iOS app held a 4.9-star rating from 453 reviews and sat at number 60 on the US App Store's free trivia chart. For a product that didn't exist five months earlier, that report card needs no embellishment.
Three things we have to say honestly
This is an electrifying story, but three things must be stated plainly — otherwise we'd be writing mythology.
First: most of the numbers haven't been independently audited
MadRobot stated it explicitly in the original piece: "Most of the other figures here come from Smith himself, and none has been independently audited." The 366,000 plays, the 150,000 peak DAUs, the 1,000 subscribers — all of these come from Smith himself. That's not the same as fabrication, but readers deserve to know: this is one side of the story, not a third-party audit.
Second: Smith didn't start from zero
This is the part most easily buried by the "12-hour comeback" narrative: Smith runs sports channels with millions of followers. He started with a precise cold-launch channel — millions of people who love sports, love sharing, and happen to be exactly GeoSports' target users. Kendall Baker's feature and the X explosion weren't pure luck; they were the right person saying the right thing in the right circles. Strip distribution power out of the story and then talk about "replicating it" — that's dishonest.
Third: vibe coding stopped on launch day
Smith said it himself: the vibe coding ended the day the game shipped. Development moved to the four-person team at Rhino Studios, his games company, while he still writes the questions himself — because AI doesn't "understand the pulse of the sports fan." AI turned the idea into a playable prototype; humans turned the prototype into a sustainable business. That division of labor is the most honest user manual for vibe coding.
Five replicable judgments for indie developers
Strip away the halo, and GeoSports' story contains several judgments that are genuinely replicable — they don't depend on millions of followers, only on taste and execution discipline.
1. Build what you yourself want to play every day
Smith's starting point wasn't market analysis — it was weeks of playing MapTap himself. "I just wanted to make a game that I like" carries weight because the founder is the harshest QA and the truest user persona. When you build for yourself, you don't need user research to tell you whether "one minute a round" is right — your gut is the data. Taste is the cheapest moat an indie developer has.
2. Pick a category that is naturally shareable and daily-repeatable
Why did sports trivia take off instead of Smith's other games? Because the category comes with a built-in growth engine: the daily cadence creates a reason to return, the scorecard creates social currency, and sports topics create identity. All three combined, and the product markets itself. Indie developers can run a three-question test when picking a category: will users come back tomorrow? Will they share their results? Does the topic come with its own community? Three yeses — then go all in.
3. Prototype furiously with AI, maintain with professional process
Twelve hours from zero to launch — that's what vibe coding is genuinely good at: turning an idea into something playable fast enough to validate before the excitement cools. But Smith switched modes on launch day: a four-person professional team took over, questions are written by hand. AI is the starter motor, not the engine. Expecting prompts to maintain a 15-million-round product is like expecting a lighter to power a car.
4. For daily products, the reminder is the life-or-death line
"I want to play but I always forget" — that piece of feedback is worth its weight in gold. Many daily products die by betting retention entirely on user discipline, and discipline is the least reliable growth strategy there is. GeoSports' answer was an app plus daily push notifications, turning "remember to come back" from a virtue into a mechanism. If you're building a daily product, you should know from day one: what will make users think of you at 8 a.m. tomorrow?
5. Monetize with restraint: get them to come back daily first, talk money later
Pro only adds (more ways to play) and never subtracts (no locked basics, no ads), priced at $5 a month — the cost of a coffee, a zero-friction decision. Even bolder was turning down betting sponsors: in the most lucrative category for them, choosing not to take the fast money protected the purity of "opening it every morning." The indie monetization rule should be: any revenue that hurts "wanting to come back tomorrow" is negative revenue.
Same wave: vibe coding is mass-producing "small and beautiful"
MadRobot placed GeoSports in a bigger picture: "a wave of hits built with AI coding tools" — a list that includes a vibe-coded GTA clone of Taipei, ArtCraft's free Adobe look-alikes, and Claude's one-prompt Pokémon Red. ArtCraft, which this site has also covered, belongs to the same story: a solo developer's comeback built with AI coding tools, starting from "I need this myself," rolling up its first users through word of mouth.
These two cases together sketch an emerging pattern of the vibe-coding era: the weight of ideas and taste is rising, while the cost of implementation is falling. Smith knew almost nothing about software engineering, but he understood sports fans — the feeling of wanting a round every morning, the vanity of showing friends a perfect score, the judgment that gambling ads would ruin it all. AI can't give you that; twelve hours of Claude Code can't give you that. Yet that is the true source of a million players.
Conversely, this is also a calibration of the cheap slogan "AI lets everyone start a business": AI flattens the distance from idea to prototype, not the distance of taste, distribution, and long-term commitment. Seventy-nine players on day one, 575 on day two — GeoSports nearly died before day three. It survived not because of Claude Code, but because someone who understood users put the right thing in front of the right people at the right time.
Building a game in 12 hours is news. Building a ~$47,000 ARR business in five months is the story. And the real protagonist of the story was never the AI.
Comments (0)
Sources
Related articles

Rails creator DHH announced at Rails World that 37signals is 'done writing code by hand.' This piece unpacks the November 2025 inflection point, the move to native apps and Rust, the counter-evidence from the same newsletter — and what vibe coders should actually take away.

Microsoft's homegrown coding model MAI-Code-1.1-Flash now runs on-device: 3-bit quantization, full 256K context, zero inference charges for local calls — but Microsoft recommends 120GB+ RAM. Third-party measurements put the quantized build at 70.80% on SWE-Bench Verified versus 72.6% full precision. What "zero inference fees" really means for indie developers, and why Copilot's router is the actual moat.

Lenovo Tianxi AI's in-house code-agent framework TianxiCode, paired with DeepSeek-v4.1-Flash, topped the SWE-bench-Live Lite leaderboard at a 71% solve rate with official Verified certification. We unpack why this "real engineering" benchmark is harder, what "framework > model" really means, and three takeaways for vibe coding practitioners.