About Blackjack Oracle

Introduction & Purpose

🎉 Blackjack Oracle v1.2 is now live! Test your skills with daily challenges and get real-time feedback in our enhanced simulator.

Under the hood is a production-ready strategy engine supporting the most comprehensive set of blackjack rules of any tool online (Ace resplitting, double after split, and more). Unlike standard simulations, our calculator performs an exhaustive state-space search with aggressive optimizations to provide 100% mathematically accurate optimal moves.

So what does perfect play actually buy you? It shrinks the house edge to a few tenths of a percent — it doesn't flip it. A rule combination generous enough to give the player a positive expected value off the top is technically possible, but casinos rarely (if ever) offer it. Where positive expectation genuinely appears is deck composition: feed the calculator the actual remaining shoe, and it computes exactly when the odds have swung your way.

Created by a University of Waterloo Honours Math alumni (Statistics major & CS minor) after losing $100 in Vegas in 5 minutes, this tool exists to help you master the odds!

Found a bug? Email oracle.blackjack@gmail.com. Let's beat the casinos together😏!

Future Plans

Hopefully we can continuously evolve Blackjack Oracle together! Here's what's on our roadmap currently (last updated on November 28th, 2025):

Calculator

  • Add support for calculating optimal moves with more than 2 cards (3+ card hands).

Simulator

  • Add card drawing animations.

Others

  • Add an issue submission channel.

If you encounter any issues not listed here, please contact me directly via Email. Your feedback is invaluable for improving Blackjack Oracle!

Version History

v1.2December 19th 2025

Enhanced Simulator & Code Quality Update

  • Adjustable shoe depth control
  • Remaining card count display
  • Reset balance and manual shuffle functionality
  • Action button validation based on game rules
  • Enhanced mobile layout and responsive design
  • Improved code organization and maintainability
v1.1December 12th 2025

Performance & Code Quality Update

  • Daily Challenge now loads instantly with zero loading delay
  • Optimized deterministic card generation using industry-standard js-sha256 library
  • Background API data fetching for seamless user experience
v1.0November 28th, 2025

Official Release - Production Ready! 🎉

  • Comprehensive blackjack rules support:
    • Ace resplitting
    • Drawing after split aces
    • Double after split
    • Full ten-value card splitting (split K-Q, J-10, etc.)
  • Complete action validation system with proper game flow enforcement
  • Improved code consistency between frontend and backend implementations
  • All major features now fully functional and tested
v0.1-betaJuly 13th, 2025

Beta Update

  • Simulator now features interactive gameplay instead of batch simulation
  • Real-time hand display with live card dealing and game state updates
  • Interactive player actions - make decisions as the game progresses
  • Enhanced betting management with dynamic bet tracking
v0.0-betaMay 26th, 2025

Beta Release

  • Functional settings page
  • Calculator & simulator now uses these settings in their calculations
  • Removed settings UI from simulator page
  • Settings are saved across sessions
  • Added about page
v0.2-alphaMay 24th, 2025

Alpha Update

  • Functional simulator page
  • Refined simulation logic and added ace handling for both player and dealer
  • Improved calculator efficiency via bit manipulation in hashing
  • Child pages loads properly upon refresh or direct visit
v0.1-alphaMay 5th, 2025

Alpha Update

  • Added deck composition UI to calculator
  • Added a reset button to calculator
  • Correctly handles errors due to insufficient card counts
  • Added explanation for the interpretation for the results section
  • Displays N/A instead of -1.0 for invalid actions
v0.0-alphaApril 30th, 2025

Alpha Release

  • Functional Calculator page
  • Outputs expected returns for all moves instead of only the optimal move
  • Fixed faulty logic for split and doubledown