Skip to content

NapKim Math Posts

Balatro Recaps: Wins, Woes, and a Whole Lot of Data!

Hey everyone, get ready for a rundown of the last couple of weeks in Balatro! We’ve had some killer wins, a few face-palms, and some major strides with the Jimbo’s Data mod. Let’s dive in!

Conquering Stakes and Dodging Disasters

The checkered deck brought some serious action! We kicked things off with a Green Stake win and then powered through to our first Black Stake victory, unlocking the Anaglyph deck in the process. Talk about a rush! Of course, it wasn’t all smooth sailing…one tragic loss did unlock Mr. Bones (every cloud, eh?), and we even spotted my first legendary Joker, Chicot! And can we talk about Sock and Buskin + Seltzer? The nostalgia was real, and the re-trigger was chef’s kiss.

Next up, we tackled the Blue Stake, and somehow, someway, pulled off a win with no xMulti scaling Jokers! Just good ol’ Photograph, Bloodstone, Arrowhead, and a sprinkle of luck. That sweet victory unlocked Plasma for us (my favorite deck)! Game 2 of that stream on Purple Stake…well, let’s just say trying to prep for the boss blind by grabbing Mr. Bones early backfired spectacularly. Using him on the big blind instead and then facing The Needle with no cash and a baby Flush? Ouch. We live and we learn!

The Plasma Deck proved to be a bit of a beast, giving us a rough night with two runs that just didn’t quite click. First, a chip Joker drought had us sweating, and then a lack of scaling sealed our fate. You can’t win ’em all, right? At least we learn from it!

But then came the Anaglyph Deck, and it was a double-feature delight! Two wins, and somehow, two Photochads graced us with their presence (one right before the ante 8 boss blind). Yorick even made his spooky debut, and the deck dished out some seriously clean combos. Good times!

The Star of the Show: Jimbo’s Data!

Across these streams, the real MVP development has been Jimbo’s Data, my very own Balatro data-logging mod! It made its official stream debut for games starting May 13, live-tracking every run.

In a dedicated stream, we took a deep dive into the major progress on Jimbo’s Data. I walked through how the mod tracks everything from run starts and ends, to individual rounds, hands, Jokers, consumables, playing cards, and even poker hand levels. We also looked at the actual CSV output the mod is creating as we were playing – it’s pretty neat stuff if I do say so myself!

We covered the full source code, including:

  • The overall data structure
  • The main Lua code and game hooks (init.lua)
  • Helper functions that are consistent across multiple lua files (tracker_helpers.lua)
  • Specific trackers for run information (JimbosData.lua), rounds and hands (Score.lua), and consumables (ConsumableTracker.lua)

We even had a live demo showcasing the mod in action and discussed what’s next for the data pipeline.

Want to check out the code or contribute? You can find Jimbo’s Data on GitHub.

It’s been an exciting couple of weeks, and I can’t wait to see what data insights and Balatro victories come next. Stay tuned!

Comments closed

Photo-Chad Cheesin’: Winnings, Wheel Odds & WHERE Clauses

This week was stacked – literally! We had some killer Balatro runs and pulled off our most ambitious SQL Saturday yet. Let’s break it down:


Tuesday: Triple Black Deck Trials

We played three Black Deck, White Stake runs, and let’s just say the third time’s the charm:

  • Run 1: Forgot I had fewer hands (classic Black Deck moment).
  • Run 2: Scaling was a little off…turns out vibes aren’t enough.
  • Run 3: Victory! Thanks to unlocking Hanging Chad a week before, I got to flex a Photograph–Hanging Chad synergy that finally delivered the W. Say cheese.

Thursday: Checkered Wins All Around

We switched things up with the Checkered Deck, taking on both White and Red Stake, and we won both!

  • Game 1: Everything just clicked. Big carry by face cards (shoutout to Photo Chad, Smiley Face, Sock and Buskin, and a perfectly timed Card Sharp). The Plant didn’t show up, which meant a smooth cruise to victory.
  • Game 2: Photo-Chad showed up again, but this time with backup. Blueprint and Hologram duplication made for some spicy plays. Red Stake didn’t stand a chance.

Saturday: SQL Gets Real

We opened Saturday’s stream with a deeper dive into the data than usual and things got fancy:

  • Checked in on our Wheel of Fortune odds: 3 wins out of 13 tries, which is weirdly close to the expected 1/4 odds. Law of Large Numbers, I see you creeping.
  • Counted how many Jokers we’ve purchased so we can add in other card types and eventually track Completionist progress (aka, did we buy every single thing we possibly could?).
  • Then it was time for some serious SQL glow-up:
    • Used UNNEST to break out comma-separated lists
    • Wrote a CTE (Common Table Expression) like a true data sorcerer
    • Pulled together a clean list of which Jokers we’ve unlocked, how many are left, and what the unlock conditions are

Jimbo’s Data Update: Joker Tracker Debuts

Wrapped things up by walking through the early stages of my new joker_tracker in Jimbo’s Data. It’s not legendary tier yet, but it’s already logging:

  • Every Joker buy and sell
  • Where the action happens (shop, pack, etc.)
  • Pertinent info like edition, sticker, and cost (with differentiation between buying and selling)

More improvements to come, but it’s already helping keep my data clean enough to eat a Gros Michel off of.


As always, catch the chaos live on Twitch or relive it on YouTube. And don’t forget to check my Balatro GitHub. I’m posting all my SQL queries from SQL Saturdays, so you don’t have to pause the stream and squint at my screen.

Happy analyzing, and may Photo-Chad always smile upon you.

Comments closed

Green Deck Gains, Stat Tracking, and the Humble Beginnings of Jimbo’s Data

Another week, another pair of Balatro runs where the deck was greener than my snack budget. We queued up with Green Deck, White Stake, and the results were… mixed (but emotionally rich):

  • First run: Hit The Wall. Brutal. Stone-cold. Especially since I was so close to victory.
  • Second run: Victory over Violet Vessel. Sweet, sweet redemption.

A comeback story in two acts — Hollywood, call me.


Winning the Anti-Lottery

We started off Saturday’s stream by talking about the odds of pulling four Rental Jokers in a Mega Buffoon Pack. Spoiler alert: the odds are extremely low — and yet, I somehow managed it. A true statistical anti-lottery. Somewhere out there, a probability professor weeps.

Saturday Stats Check-In

On SQL Saturday, we dove back into some stats we’ve been collecting:

  • Most Common Tags: I am still investing in myself via the tags I skip. Don’t forget that economy – future you will thank you.
  • Run-level and round-level observations:
    • My average time per game is trending down now that I’ve gotten the hang of streaming.
    • I tend to skip the most rounds during Antes 1 and 2 (relatable), but Small Blind and Big Blind skips are about even.
    • We started poking into which Boss Blinds show up the most — but it’s still early days for good data there.

Jimbo’s Data: From Little Joker to Big Dreams

Finally, we took a stroll through the early stages of Jimbo’s Data (full walkthrough and tl;dr version)— my lovingly homebrewed Balatro data tracking mod. Right now it’s just capturing run start and run end info in CSVs. But like every Common Joker hoping for greatness, it’ll grow into a legendary tracker over time. Expect more detailed per-round, per-card, and per-shop tracking soon!


Catch the chaos live on Twitch, or watch me wrangle SQL into submission over on YouTube. As always, thanks for being here while I turn napkins into data pipelines.

Comments closed

What I’ve Been Napkin’ On: Balatro Stats, SQL Snacks, and Some Video Dreams

It’s been a data-fueled two weeks over at NapKim Math HQ, aka my desk. Here’s what I’ve scribbled together lately — no coffee stains were harmed in the making of this post.

Balatro: The Game, the Myth, the Math

So, I started poking at Balatro data more seriously, and now I’m building my own stat-tracking mod (more on that coming soon!). It’s kind of like a FitBit for your runs, except it tracks Jokers, not steps. I’m logging everything I can — scoring patterns, shop choices, and yes, even the emotional rollercoaster that is the Wheel of Fortune. Spoiler: the Law of Large Numbers is real, even if your luck isn’t.

Need proof? I linked to a few brave souls on Reddit who manually tracked 1,000+ spins. Absolute legends.123 I also spotlighted a Redditor45 who built a public Joker sticker tracker — super handy if you’re not already rocking Completionist++ (in which case, congrats, you’re basically the final boss).

I’m also tracking all the SQL I use during our SQL Saturday streams right in my Balatro GitHub repo, so if you see a cool query on stream, you can snag it there — no need to squint at my screen.

SQL Napkins: Wipe Up That Messy Data

Meanwhile, I’ve been building reusable SQL templates — aka napkins — that help you clean and analyze datasets faster than you can say SELECT * FROM feelings. They’re game-agnostic, meaning you can use them whether you’re analyzing Balatro runs, inventory spreadsheets, or your cats’ meal patterns.

If you’re new to SQL or BigQuery, don’t panic — here’s the starter guide, and here’s the syntax cheat sheet. Pair it with my napkins, and you’ll be querying like a boss in no time.

Content Dreams and Streaming Schemes

I’ve been scheming up video plans too — think SQL explainers, Balatro deep dives, and sneak peeks of my dataset as it evolves. Still learning the whole “editing” thing (aka, right now the clips are just vibes), but I’m live three times a week showing everything raw and unfiltered — like your data before a WHERE clause.

Where to Find Me

  • Twitch for live gameplay and datasets mid-chaos
  • YouTube for live gameplay as well as the archive (and future highlight dreams)
  • Instagram and Bluesky for announcements
  • GitHub for all the SQL goodness
  • Ko-fi if you wanna fuel my caffeine + server time

Thanks for watching me spin the Wheel of SQL these past couple weeks. More data, more napkins, and hopefully more jokers coming soon. As always, remember: clean your data like you clean your counters — or at least like you clean your napkins.


  1. Reddit Wheel of Fortune post 1 ↩︎
  2. Reddit Wheel of Fortune post 2 ↩︎
  3. Reddit Wheel of Fortune post 3 ↩︎
  4. Sticker tracker Reddit post ↩︎
  5. Direct link to sticker tracker ↩︎

Comments closed

Welcome to NapKim Math!

Welcome to NapKim Math! I’m so glad you’re here 🙂 I will be streaming on Twitch and YouTube for the first time this Saturday, April 5 at 2 PM ET.

During the first stream, I’ll play Balatro and show how I’ll track basic stats for future streams. While I’ve played Balatro extensively on my phone, I’ll be starting from scratch via Steam so we can track together from the very beginning.

I then plan on following this schedule for streaming (subject to change):

  • Tuesdays @ 6 PM ET – Balatro
  • Thursdays @ 6 PM ET – Balatro
  • Saturdays @ 2 PM ET – Build and analyze a dataset

I look forward to seeing you there!

Comments closed