Blackjack Expected Value Calculator

Warning: Some combinations require heavy computation and may crash the page, even on high-end laptops

Card Values Seen
Card
Remove
Seen
Add
2
Error
/
Error
3
Error
/
Error
4
Error
/
Error
5
Error
/
Error
6
Error
/
Error
7
Error
/
Error
8
Error
/
Error
9
Error
/
Error
10
Error
/
Error
a
Error
/
Error
Dealer Up Card Value

No Values found

Add Position Card Values

No Position Cards

No Values found

Table Settings
Expected Values Result
Error Error

No result found

An example of calling the api endpoint in javascript:

Javascript

async function get_best_move() {
    try {
      const params = new URLSearchParams({
        number_of_decks: 6,
        dealer_up_card_value: "10",
        position_card_values_so_far: ["5", "6"].join(","),
        card_values_seen_so_far: ["10", "5", "6", "2", "3", "4"].join(","),
        is_surrender_allowed: "true",
        blackjack_win_multiplier: "1.5",
        hit_card_simulation_limit_to_save_compute: "3",
      })
      const res = await fetch(`https://www.crushblackjack.com/api/move-expected-value?${params.toString()}`)
      if (!res.ok) {
        throw new Error(`http error ${res.status}`)
      }
      const res_body = await res.json()
      console.log("expected value result:", res_body)
      return res_body
    } catch (err) {
      console.error("fetch error:", err)
      return null
    }
  }

Example Result:

Javascript

  {
        bust: null,
        blackjack: null,
        stand: {
          ev: -0.5806544619024554,
          outcomes: {
            "0": 0,
            "1": 0.20967276904877227,
            "-1": 0.7903272309512277,
          },
        },
        hit: {
          ev: 0.032002488946088425,
          outcomes: {
            "0": 0.08829462548363258,
            "1": 0.4734932759935231,
            "-1": 0.44149078704743466,
          },
        },
        split: null,
        double: {
          ev: 0.06400497789217685,
          outcomes: {
            "0": 0.08829462548363258,
            "2": 0.4734932759935231,
            "-2": 0.44149078704743466,
          },
        },
        surrender: {
          ev: -0.5,
          outcomes: {
            "-.5": 1,
          },
        },
        best_choice: "double",
      }
icon
Powered byContibase

Authentication

Content is for users only

Sign up or sign in to get access