Video Poker Video Poker Articles Online Casinos Online Gambling Video Poker Games Tools Video Poker Strategies

Five Joker Poker

Game Info Paytable Options Hand Analyzer Paytable Analyzer Simulator Strategy Guide Training Programming

Five Joker Poker is a wild card game which has five Jokers. Its closest relative is Deuces and Joker because it has two jackpot hands: a Royal Flush and Five Jokers. However, unlike Deuces and Joker, the prize for five wild cards in this game is the same as a Royal Flush.

The combined odds of getting either jackpot are relatively slim at 1 in 52,940. However, I think this makes the game look a lot worse than it really is. The combined return of both jackpots only adds up to about 1.5%, which is less than the typical return from a Royal Flush in most games. This means the majority of the game's EV comes from the more frequent hands, which reduces the variance and lets you play for longer. As you may have guessed, this is one of my favorite games. The strategy is extraordinarily simple and it has very few penalty card situations.

Play Five Joker Poker for free

Click here for help Opens in a new window

Currency Options


Currency: Coin Size: Coins per Hand:

Taxes & Tips


  Threshold   Withholding Rate
  Threshold   Withholding Rate
  Threshold   Withholding Rate
  Threshold   Amount
  Threshold   Rate

Click here for help Opens in a new window

Number of hands to simulate:  

Click here for help Opens in a new window



Don't forget that you can type in your own paytable below.

Hand Coins Paid
Five Jokers
Natural Royal Flush
Four Jokers
Wild Royal Flush
Five of a Kind
Straight Flush
Four of a Kind
Full House
Flush
Straight
Three of a Kind

Deck Simplification


An "X" in the suit pattern denotes a Joker.

Unique Rank Patterns - No Jokers


Core Hand Type Formula Result
Four of a Kind Combin(13, 1) * Combin(12, 1) 156
Full House Combin(13, 1) * Combin(12, 1) 156
Three of a Kind Combin(13, 1) * Combin(12, 2) 858
Two Pair Combin(13, 2) * Combin(11, 1) 858
One Pair Combin(13, 1) * Combin(12, 3) 2,860
No Pair Combin(13, 5) 1,287

Unique Rank Patterns - One Joker


Core Hand Type Formula Result
Four of a Kind Combin(13, 1) 13
Three of a Kind Combin(13, 1) * Combin(12, 1) 156
Two Pair Combin(13, 2) 78
One Pair Combin(13, 1) * Combin(12, 2) 858
No Pair Combin(13, 4) 715

Unique Rank Patterns - Two Jokers


Core Hand Type Formula Result
Full House Combin(13, 1) 13
Two Pair Combin(13, 1) * Combin(12, 1) 156
One Pair Combin(13, 3) 286

Unique Rank Patterns - Three Jokers


Core Hand Type Formula Result
Full House Combin(13, 1) 13
Three of a Kind Combin(13, 2) 78

Unique Rank Patterns - Four Jokers


Core Hand Type Formula Result
Four of a Kind Combin(13, 1) 13

Unique Rank Patterns - Five Jokers


Core Hand Type Formula Result
Five of a Kind Combin(5, 5) 1

Unique Suit Patterns - No Jokers


Four of a Kind Full House Three of a Kind Two Pair One Pair No Pair
Pattern Count Pattern Count Pattern Count Pattern Count Pattern Count Pattern Count
ABCDA 4 ABCAB 12 ABCAA 12 ABABA 12 ABAAA 12 AAAAA 4
ABCAD 12 ABCAB 24 ABABC 12 ABAAB 12 AAAAB 12
ABCAD 12 ABACA 24 ABAAC 24 AAABA 12
ABCDA 12 ABACB 24 ABABA 12 AAABB 12
ABCDD 4 ABACC 24 ABABB 12 AAABC 24
ABACD 24 ABABC 24 AABAA 12
ABCDA 12 ABACA 24 AABAB 12
ABCDC 12 ABACB 24 AABAC 24
ABACC 24 AABBA 12
ABACD 24 AABBB 12
ABCAA 24 AABBC 24
ABCAB 24 AABCA 24
ABCAC 24 AABCB 24
ABCAD 24 AABCC 24
ABCCA 24 AABCD 24
ABCCC 12 ABAAA 12
ABCCD 12 ABAAB 12
ABCDA 24 ABAAC 24
ABCDC 12 ABABA 12
ABCDD 12 ABABB 12
ABABC 24
ABACA 24
ABACB 24
ABACC 24
ABACD 24
ABBAA 12
ABBAB 12
ABBAC 24
ABBBA 12
ABBBB 12
ABBBC 24
ABBCA 24
ABBCB 24
ABBCC 24
ABBCD 24
ABCAA 24
ABCAB 24
ABCAC 24
ABCAD 24
ABCBA 24
ABCBB 24
ABCBC 24
ABCBD 24
ABCCA 24
ABCCB 24
ABCCC 24
ABCCD 24
ABCDA 24
ABCDB 24
ABCDC 24
ABCDD 24

Unique Suit Patterns - One Joker


Four of a Kind Three of a Kind Two Pair One Pair No Pair
Pattern Count Pattern Count Pattern Count Pattern Count Pattern Count
ABCDX 5 ABCAX 60 ABABX 30 ABAAX 60 AAAAX 20
ABCDX 20 ABACX 120 ABABX 60 AAABX 60
ABCDX 30 ABACX 120 AABAX 60
ABCAX 120 AABBX 60
ABCCX 60 AABCX 120
ABCDX 60 ABAAX 60
ABABX 60
ABACX 120
ABBAX 60
ABBBX 60
ABBCX 120
ABCAX 120
ABCBX 120
ABCCX 120
ABCDX 120

Unique Suit Patterns - Two Jokers


Full House Two Pair One Pair
Pattern Count Pattern Count Pattern Count
ABCXX 40 XXABA 120 XXAAA 40
XXABC 120 XXAAB 120
XXABA 120
XXABB 120
XXABC 240

Unique Suit Patterns - Three Jokers


Full House Three of a Kind
Pattern Count Pattern Count
XXXAB 60 XXXAA 40
XXXAB 120

Unique Suit Patterns - Four Jokers


Four of a Kind
Pattern Count
XXXXA 20

Unique Suit Patterns - Five Jokers


Five of a Kind
Pattern Count
XXXXX 1

Total Unique Patterns


Joker(s)Core Hand Type Rank Patterns Suit Patterns Total
None Four of a Kind 156 1 156
Full House 156 2 312
Three of a Kind 858 5 4,290
Two Pair 858 8 6,864
One Pair 2,860 20 57,200
No Pair 1,287 51 65,637
One Four of a Kind 13 1 13
Three of a Kind 156 2 312
Two Pair 78 3 234
One Pair 858 6 5,148
No Pair 715 15 10,725
Two Full House 13 1 13
Two Pair 156 2 312
One Pair 286 5 1,430
Three Full House 13 1 13
Three of a Kind 78 2 156
Four Four of a Kind 13 1 13
Five Five of a Kind 1 1 1
Total 152,829
Reduction in processing time 96.3500%

Hand Scoring Code


int GetHandType(int C1, int C2, int C3, int C4, int C5)
{
    int Hand = 0;

    int R1 = Rank[C1],
        R2 = Rank[C2],
        R3 = Rank[C3],
        R4 = Rank[C4],
        R5 = Rank[C5];

    int S1 = Suit[C1],
        S2 = Suit[C2],
        S3 = Suit[C3],
        S4 = Suit[C4],
        S5 = Suit[C5];

    if (R1 > R2) { R1 ^= R2; R2 ^= R1; R1 ^= R2; S1 ^= S2; S2 ^= S1; S1 ^= S2; }
    if (R1 > R3) { R1 ^= R3; R3 ^= R1; R1 ^= R3; S1 ^= S3; S3 ^= S1; S1 ^= S3; }
    if (R1 > R4) { R1 ^= R4; R4 ^= R1; R1 ^= R4; S1 ^= S4; S4 ^= S1; S1 ^= S4; }
    if (R1 > R5) { R1 ^= R5; R5 ^= R1; R1 ^= R5; S1 ^= S5; S5 ^= S1; S1 ^= S5; }
    if (R2 > R3) { R2 ^= R3; R3 ^= R2; R2 ^= R3; S2 ^= S3; S3 ^= S2; S2 ^= S3; }
    if (R2 > R4) { R2 ^= R4; R4 ^= R2; R2 ^= R4; S2 ^= S4; S4 ^= S2; S2 ^= S4; }
    if (R2 > R5) { R2 ^= R5; R5 ^= R2; R2 ^= R5; S2 ^= S5; S5 ^= S2; S2 ^= S5; }
    if (R3 > R4) { R3 ^= R4; R4 ^= R3; R3 ^= R4; S3 ^= S4; S4 ^= S3; S3 ^= S4; }
    if (R3 > R5) { R3 ^= R5; R5 ^= R3; R3 ^= R5; S3 ^= S5; S5 ^= S3; S3 ^= S5; }
    if (R4 > R5) { R4 ^= R5; R5 ^= R4; R4 ^= R5; S4 ^= S5; S5 ^= S4; S4 ^= S5; }

    bool Flush = false;

    int Jokers = (R1 == 13 ? 1 : 0) +
                 (R2 == 13 ? 1 : 0) +
                 (R3 == 13 ? 1 : 0) +
                 (R4 == 13 ? 1 : 0) +
                 (R5 == 13 ? 1 : 0);

    switch (Jokers)
    {
        case 0:

            Flush = (S1 == S2) && (S2 == S3) && (S3 == S4) && (S4 == S5);

            if (Flush)
            {

                if (R1 == 8)
                {
                    Hand = 10;          // Natural Royal Flush
                }

                else if ((R1 == (R2 - 1)) && 
                 (R2 == (R3 - 1)) && 
                 (R3 == (R4 - 1)) && 
                ((R4 == (R5 - 1)) || ((R1 == 0) && (R5 == 12))))
                {
                    Hand = 6;           // Straight Flush
                }

                else
                {
                    Hand = 3;           // Flush
                }
            }

            else
            {
                if ((R2 == R3) && (R3 == R4) && ((R1 == R2) || (R4 == R5)))
                {
                    Hand = 5;           // Four of a Kind
                }

                else if ((R1 == R2) && (R4 == R5) && ((R2 == R3) || (R3 == R4)))
                {
                    Hand = 4;           // Full House
                }

                else if ((R1 == (R2 - 1)) && 
                 (R2 == (R3 - 1)) && 
                 (R3 == (R4 - 1)) && 
                ((R4 == (R5 - 1)) || ((R1 == 0) && (R5 == 12))))
                {
                    Hand = 2;           // Straight
                }

                else if (((R1 == R2) && (R2 == R3)) || 
                 ((R2 == R3) && (R3 == R4)) || 
                 ((R3 == R4) && (R4 == R5)))
                {
                    Hand = 1;           // Three of a Kind
                }
            }

            break;

        case 1:

            Flush = (S1 == S2) && (S2 == S3) && (S3 == S4);

            if (Flush)
            {
                if (R1 >= 8)
                {
                    Hand = 8;           // Wild Royal Flush
                }
                else if (((R4 - R1) <= 4) || ((R4 == 12) && (R3 <= 3)))
                {
                    Hand = 6;           // Straight Flush
                }
                else
                {
                    Hand = 3;           // Flush
                }
            }
            else
            {
                if ((R1 == R2) && (R2 == R3) && (R3 == R4))
                {
                    Hand = 7;           // Five of a Kind
                }
                else if ((R2 == R3) && ((R1 == R2) || (R3 == R4)))
                {
                    Hand = 5;           // Four of a Kind
                }
                else if ((R1 == R2) && (R3 == R4))
                {
                    Hand = 4;           // Full House
                }
                else if ((((R4 - R1) <= 4) || ((R4 == 12) && (R3 <= 3))) && 
                            (R1 != R2) && (R2 != R3) && (R3 != R4))
                {
                    Hand = 2;           // Straight
                }
                else if ((R1 == R2) || (R2 == R3) || (R3 == R4))
                {
                    Hand = 1;           // Three of a Kind
                }
            }

            break;

        case 2:

            Flush = (S1 == S2) && (S2 == S3);

            if (Flush)
            {
                if (R1 >= 8)
                {
                    Hand = 8;           // Wild Royal Flush
                }
                else if (((R3 - R1) <= 4) || ((R3 == 12) && (R2 <= 3)))
                {
                    Hand = 6;           // Straight Flush
                }
                else
                {
                    Hand = 3;           // Flush
                }
            }
            else
            {
                if ((R1 == R2) && (R2 == R3))
                {
                    Hand = 7;           // Five of a Kind
                }
                else if ((R1 == R2) || (R2 == R3))
                {
                    Hand = 5;           // Four of a Kind
                }
                else if ((((R3 - R1) <= 4) || ((R3 == 12) && (R2 <= 3))) && (R1 != R2) && (R2 != R3))
                {
                    Hand = 2;           // Straight
                }
                else
                {
                    Hand = 1;           // Three of a Kind
                }
            }

            break;

        case 3:

            Flush = (S1 == S2);

            if (Flush)
            {
                if (R1 >= 8)
                {
                    Hand = 8;           // Wild Royal Flush
                }
                else if (((R2 - R1) <= 4) || ((R2 == 12) && (R1 <= 3)))
                {
                    Hand = 6;           // Straight Flush
                }
                else
                {
                    Hand = 5;           // Four of a Kind
                }
            }
            else
            {
                if (R1 == R2)
                {
                    Hand = 7;           // Five of a Kind
                }
                else
                {
                    Hand = 5;           // Four of a Kind
                }
            }

            break;

        case 4:

            Flush = true;
            Hand = 9;
            break;

        case 5:

            Flush = true;
            Hand = 11;
            break;
    }

    return Hand;
}


Processing, please wait... this could take a while.

Copyright © 2007-2010 Video Poker Genius. All rights reserved.

Free Video Poker | Mac Video Poker | Online Blackjack | Video Poker | Slot Machines | Privacy Policy & Disclaimers | Video Poker Websites | Contact