Case study · Built by Jason
How I built Liquor Bets solo, ran it for a year, and shut it down honestly.
- 178 markets across M&A, awards, hospitality, legislation, issues
- 8 recurring crons running content, distribution, resolution, and email
- Perplexity-grounded auto-resolve with two-pass consistency check
- Now available to sponsor, white-label, or rebuild
Liquor Bets was a free, points-based prediction market I built for the spirits and bar industry. It ran at liquorbets.com from 2025 to September 2026. This page is the full case study: what I built, what worked, why I killed it, and what it means for what I ship next.
What it was
A Bloomberg-meets-bar prediction market where industry people forecasted the questions the industry actually argues about: spirits M&A, James Beard winners, Spirited Awards, legislation, celebrity brand launches, the future of GLP-1 on category volume. 100% free. Points only. No real money. Peer-to-peer voice, no macabre bets, no closure bets.
The thesis: the spirits industry has more opinions per capita than any other consumer category, and no shared surface to price them.
What I built
The whole thing. Solo. Shipped end-to-end.
- Product: Next.js 16 + React 19 app on Vercel. Supabase Postgres with Row Level Security bypassed via service-role for admin surfaces. Clerk for auth. Progressive Web App with offline nav, install banner, dark theme.
- 178 markets across five categories (M&A, awards, hospitality, legislation, issues), including binary and multiple-choice formats. Brier scoring for calibration. Public leaderboard.
- 8 recurring crons running the growth loop: daily flash-market generation, closing-soon alerts, new-market alerts, social distribution via Blotato (LinkedIn + Twitter + Instagram + Facebook), overdue-resolution nudges, 3-email onboarding drip, weekly digest, weekly Pulse industry-relevance update.
- Auto-resolve system: Perplexity-grounded evidence pipeline that resolved closed markets automatically with a two-pass consistency check, confidence floor, and structured audit log. Ran nightly.
- The Spirits Wire: weekly editorial feed with mandatory freshness verification, two-host AI audio episode, timestamp and AI disclosure on every output, same-day social distribution.
- SEO surfaces: FAQ pillar and 12 individual pages, 5+ cluster landing pages (bourbon glut, tequila crisis, GLP-1 effect, THC vs alcohol, celebrity spirits), per-market schema.org markup, dynamic OG images per market and per resolved prediction. Sitemap and IndexNow submission.
- Analytics stack: GA4, GTM, custom site-analytics dashboard in /admin, market-level consensus history and momentum tracking.
- Distribution mechanics: Blotato API integration with per-platform copy templates, urgency vs first-post modes, brand-voice-enforced text, editorial visual generation.
What it demonstrated
This is the part that matters for anyone thinking about hiring me or building with me.
I can ship a real full-stack product alone. Not a landing page, not a Notion doc pretending to be a startup. A live PWA with auth, a database, a payments-shaped billing surface, 8 crons on a schedule, a nightly automated content pipeline, and an evidence-grounded auto-resolve system running in production.
I can operate the growth loop, not just build it. Weekly cadence held for months. Content distributed. Emails sent. Markets resolved on time.
I can architect for AI operations, not just AI features. The auto-resolve system was the most interesting engineering. Two-pass Perplexity call, outcome-key match, confidence threshold, evidence-item floor, EOD-criteria guard, structured skip reasons. That is the pattern I now sell as KMS Connect and Route Command.
I can enforce brand voice at the machine level. No emojis, no exclamation marks, no em dashes, no closure bets, peer-to-peer tone. Every social post, every email, every OG image passed through gates. Consistent, on-voice, at scale.
Why I killed it
The product worked. The growth loop did not scale to a level that justified keeping the crons, the email sends, the Blotato posts, and the API bills running.
Being honest about what happened: I built the household-name growth engine before I proved the household-name demand. The market count grew faster than the audience. The Spirits Wire published on schedule. The auto-resolve system ran clean. The onboarding drip fired. None of it produced the kind of cold-start compounding that would justify keeping it as a portfolio project.
I could have kept it running as a hobby. I chose not to. There is a real opportunity cost to keeping shipped infrastructure alive. Every cron is a mental tax. Every email send is an obligation. Every unresolved market is a small ambient failure. I would rather put that energy into projects that are moving.
The kill decision was a judgment call, not a failure of the product. The product did what I designed it to do. What it did not do was find its audience fast enough for me to justify running it as a business instead of as an experiment.
What lives on
- The Spirits Wire continues as a weekly AI-generated industry brief at pod.co/the-spirits-wire.
- The data (resolved markets, prediction history, Brier scores) is archived. Available on request.
- The engineering patterns now power KMS Connect (small-business AI operating layer) and Route Command (route optimization for delivery businesses). The auto-resolve system in particular is the template for AI-verified decision loops I build for clients.
How to bring it back
The product is dormant, not dead. Everything is preserved: the 178 markets, the 252 predictions, the Brier scores, the schema, the crons, the auto-resolve system, the Spirits Wire pipeline, the social distribution templates. If the right partner shows up, it comes back online in a week.
What that looks like:
- Sponsor or acquirer: a spirits brand, industry publication, trade association, or distributor who wants a branded prediction market for their audience. I run it. You own the surface. Estimated deploy time: 5-7 days to swap branding, re-enable crons, refill the market slate, and relaunch.
- White-label license: you want the platform for a different industry: wine, coffee, cannabis, restaurant tech, live events. Same engine, new category. Estimated deploy time: 2-3 weeks to re-theme, re-seed markets, and reconfigure the resolution logic for your domain.
- Custom build on the pattern: you want the underlying architecture (auto-resolve pipeline, brand-voice-enforced distribution, editorial content engine) applied to your problem. Not a prediction market, a different product built on the same bones. Scoped as a KMS Connect engagement.
If any of these fit: tell me what you are running.
What it means for what I ship next
I ship live products, not decks. I run production cron jobs, not scripts on my laptop. I enforce brand voice on distributed AI systems, not just in copy docs.
If you have an operational problem in hospitality or a bar-industry business, and you want it solved with a real system instead of another SaaS subscription: tell me what you are running.
Get this for your operation
Built by Jason is the productized version.
This is what Built by Jason does when it is deployed against a real operation. Text me if you want to see how it fits yours.