Skip to content
HarakaRank

How these tests feed the ranking

The ranking on the home page averages, for each operator, the paid withdrawals timed in these tests, read to the minute; an operator enters it once three paid withdrawals are timed, and a refused, held or cancelled withdrawal lowers its share paid out. Here each test is shown in full, operator by operator in alphabetical order, with the range of delays it produced.

What the tests showed, side by side

Alphabetical order. A range is the fastest and the slowest test, not an average.
Operator Tests Money on M-Pesa Time to the SMS Taken at withdrawal Extra check Bet before withdrawing M-Pesa cost on deposit
1xBet 9 7 of 9 2 to 642 min None: the full amount arrived One-time code by SMS (2 of 7 withdrawals) Yes: a withdrawal was refused for lack of a bet none or KSh 24, depending on the payee
Betika 9 8 of 9 Within 1 min About 5 to 5.4% of the amount withdrawn, labelled “Withdrawal Tax” by Betika None Yes: a withdrawal was refused for lack of a bet KSh 24
Melbet 9 7 of 9 3 to 10 min Under 1 KES: the amount was rounded down to the shilling One-time code by SMS (2 of 7 withdrawals) Yes: a withdrawal was refused for lack of a bet None
Odibets 9 9 of 9 Within 1 min Varied, 5.1 to 7.6% of the amount withdrawn None No: paid without a bet (tester's report) KSh 24
SportPesa 9 8 of 9 Within 1 min About 5% of the amount withdrawn, labelled “Witholding tax on withdraw” by SportPesa None Yes, according to the tester (not tried without a bet) KSh 24

Tested with real money

1xBet

9 tests, 29 September 2026 to 16 October 2026, by Oscar N. (independent tester based in Kenya, paid a fixed fee per test by HarakaRank whatever the result). 7 of 9 ended with money on M-Pesa, 1 withdrawal refused, 1 bet lost with nothing left to withdraw.

Time to the M-Pesa SMS
2 to 642 min2 to 5 min: 3 tests · 6 to 15 min: 1 test · 16 to 30 min: 1 test · over 30 min: 2 tests
Taken at withdrawal
None: the full amount arrived
Extra check before paying
One-time code by SMS (2 of 7 withdrawals)
Bet before withdrawing
Yes: a withdrawal was refused for lack of a bet
M-Pesa cost on deposit
none or KSh 24, depending on the payee
Account used
Opened 14 September 2022
  • 1 October 2026 Tested with the 1xBet Kenya Android app (1xBet-ke), installed from an APK. Tester's report, no screenshot.
  • 29 September 2026 1xBet refused a withdrawal of an unplayed deposit and gave its rule.
    “The security department reserves the right to decline withdrawal requests if deposit or withdrawal amount(s) do not correspond to the stakes of bets placed (to be able to withdraw funds the deposit amount must be wagered in full in bets with odds of at least 1.1). Criteria for withdrawal approval is the amount of bets placed within the deposit in question.”
    • Operator's transaction history
  • 1 October 2026 Each of the three deposits went to a different M-Pesa payee (INSTRIPE PAYMENT SOLUTIONS LIMITED, GIKENOH ENTERPRISE LIMITED, GAMEFLO). M-Pesa charged nothing on the first and 24 KES on the other two. Both withdrawals were paid by BLOGGERLY PAYMENTS SOLUTION B2C.
    • M-Pesa SMS, deposit (test 3)
    • M-Pesa SMS, withdrawal (test 2)
  • 4 October 2026 In tests 4 to 6 deposits went to INSTRIPE PAYMENT SOLUTIONS LIMITED and GIKENOH ENTERPRISE LIMITED, and withdrawals were paid by GIKENO ENTERPRISE LIMITED and MEZIZ BET. No code was asked before these withdrawals.
    • M-Pesa SMS, withdrawal (test 1)
    • M-Pesa SMS, withdrawal (test 2)
  • 14 October 2026 1xBet refused a withdrawal because the deposit had been bet at odds of 1.056, under its 1.1 minimum, and quoted the same rule. A second bet at odds of 1.16 cleared it.
    “The security department reserves the right to decline withdrawal requests if deposit or withdrawal amount(s) do not correspond to the stakes of bets placed (to be able to withdraw funds the deposit amount must be wagered in full in bets with odds of at least 1.1). Criteria for withdrawal approval is the amount of bets placed within the deposit in question.”
    • Operator's transaction history
  • 15 October 2026 On 1xBet's own history, the withdrawals of 14 and 15 October were completed 1 h 54 min and 10 h 44 min after the request (23:39 to 01:33, 08:09 to 18:53). In tests 1 to 6 the longest wait had been 18 minutes.
    • Operator's transaction history
  • 16 October 2026 In the tests of 14 to 16 October deposits went to GAMEFLO and GIKENOH ENTERPRISE LIMITED, and M-Pesa charged 24 KES on each. Both withdrawals were paid by KASCALTY SOLUTIONS.
    • M-Pesa SMS, deposit (test 1)
    • M-Pesa SMS, deposit (test 2)
    • M-Pesa SMS, withdrawal (test 1)

Each test as recorded by Oscar N. Times are read to the minute, from the withdrawal request to the M-Pesa SMS.

Test Deposit Bet Withdrawal Time Proof
1. 29 September 2026
Morning
KSh 200 M-Pesa cost none credited KSh 200 to INSTRIPE PAYMENT SOLUTIONS LIMITED KSh 200 at 1.687lost Refused Withdrawal of the 200 KES deposit refused before any bet: the deposit must be wagered in full at odds of at least 1.1. The tester then bet it and lost, leaving nothing to withdraw. -
  • Operator's transaction history
2. 30 September 2026
Evening
KSh 200 M-Pesa cost KSh 24 credited KSh 200 to GIKENOH ENTERPRISE LIMITED KSh 200 at 1.148won Paid KSh 229 → KSh 229 on M-Pesa paid by BLOGGERLY PAYMENTS SOLUTION B2C · ref UIU2F8••RB 18 min22:15 → 22:33OTP asked
  • M-Pesa SMS, withdrawal (test 2)
  • Operator's transaction history
  • One-time code SMS
3. 1 October 2026
Morning
KSh 211 M-Pesa cost KSh 24 credited KSh 211 to GAMEFLO KSh 211 at 1.195won Paid KSh 252 → KSh 252 on M-Pesa paid by BLOGGERLY PAYMENTS SOLUTION B2C · ref UJ12F8••G2 2 min06:42 → 06:44OTP asked
  • M-Pesa SMS, withdrawal (test 3)
  • M-Pesa SMS, deposit (test 3)
  • Operator's transaction history
  • One-time code SMS
4. 2 October 2026
Evening
KSh 200 M-Pesa cost none credited KSh 200 to INSTRIPE PAYMENT SOLUTIONS LIMITED KSh 200.75 at 1.104won Paid KSh 221 → KSh 221 on M-Pesa paid by GIKENO ENTERPRISE LIMITED · ref UJ32F8••ZX 4 min3 Oct, 05:21 → 05:25
  • M-Pesa SMS, withdrawal (test 1)
  • Operator's transaction history
5. 3 October 2026
Afternoon
KSh 200 M-Pesa cost KSh 24 credited KSh 200 to GIKENOH ENTERPRISE LIMITED KSh 200 at 1.164won Paid KSh 233 → KSh 233 on M-Pesa paid by MEZIZ BET · ref UJ32F9••SV 13 min21:27 → 21:40
  • M-Pesa SMS, withdrawal (test 2)
  • Operator's transaction history
6. 4 October 2026
Night
KSh 200 M-Pesa cost KSh 24 credited KSh 200 to GIKENOH ENTERPRISE LIMITED KSh 200 at 1.26won Paid KSh 252 → KSh 252 on M-Pesa paid by GIKENO ENTERPRISE LIMITED · ref UJ42F9••5E 4 min07:47 → 07:51
  • M-Pesa SMS, withdrawal (test 3)
  • Operator's transaction history
7. 14 October 2026
Evening
KSh 200 M-Pesa cost KSh 24 credited KSh 200 to GAMEFLO KSh 200 at 1.056won Paid KSh 244 → KSh 244 on M-Pesa paid by KASCALTY SOLUTIONS · ref UJF2FA••5M A first request for 211 KES at 22:31 was refused: the 200 KES bet had odds of 1.056, under the 1.1 minimum. A second bet of 211.20 KES at odds of 1.16 cleared it. 113 min23:39 → 01:32
  • M-Pesa SMS, deposit (test 1)
  • Operator's transaction history
  • M-Pesa SMS, withdrawal (test 1)
8. 15 October 2026
Night
KSh 200 M-Pesa cost KSh 24 credited KSh 200 to GIKENOH ENTERPRISE LIMITED KSh 200 at 1.11won Paid KSh 222 → KSh 222 on M-Pesa paid by KASCALTY SOLUTIONS · ref UJF2FA••2P 1xBet's history shows the request pending from 08:09 until 18:53. The tester reports that no support was offered during the delay. 642 min08:09 → 18:51
  • M-Pesa SMS, deposit (test 2)
  • Operator's transaction history
  • M-Pesa SMS, withdrawal (test 2)
9. 16 October 2026
Afternoon
KSh 200 M-Pesa cost KSh 24 credited KSh 200 to GIKENOH ENTERPRISE LIMITED KSh 200 at 1.195lost No withdrawal Bet lost, nothing left to withdraw. -
  • M-Pesa SMS, deposit (test 3)
  • Operator's transaction history
  • Operator's bet slip (test 3)

9 tests are a sample, not a verdict: they say what happened on those days, on one account and one line. Personal details are hidden on every screenshot. How the tests are run.

Tested with real money

Betika

9 tests, 29 September 2026 to 16 October 2026, by Oscar N. (independent tester based in Kenya, paid a fixed fee per test by HarakaRank whatever the result). 8 of 9 ended with money on M-Pesa, 1 bet lost with nothing left to withdraw.

Time to the M-Pesa SMS
Within 1 minwithin 1 min: 8 tests
Taken at withdrawal
About 5 to 5.4% of the amount withdrawn, labelled “Withdrawal Tax” by Betika
Extra check before paying
None
Bet before withdrawing
Yes: a withdrawal was refused for lack of a bet
M-Pesa cost on deposit
KSh 24
Account used
Opening date not recorded
  • 1 October 2026 Betika lists each withdrawal and its tax as two separate lines, and prints the rule under the list.
    “All deposit and withdrawal transactions are subject to a 5% tax.”
    • Operator's transaction history
  • 1 October 2026 Withdrawals were accepted after a 13 KES bet in tests 2 and 3. Checked on a screenshot that is not published.
  • 3 October 2026 Betika refused a withdrawal after a 13 KES bet had been placed and won, then paid out after a second bet. In the first tests a 13 KES bet had been enough.
    “Sorry, please place a bet of atleast Ksh. 10.00 to be able to withdraw. Contact customer care in case of any queries.”
    • Screenshot

Each test as recorded by Oscar N. Times are read to the minute, from the withdrawal request to the M-Pesa SMS.

Test Deposit Bet Withdrawal Time Proof
1. 29 September 2026
Afternoon
KSh 230 M-Pesa cost KSh 24 credited KSh 218.50 (“Deposit Tax” KSh 11.50) to BETIKA KSh 200 at 1.55won Paid KSh 328 → KSh 311 on M-Pesa (“Withdrawal Tax” KSh 17) paid by BETIKA B2C · ref UIT2F8••M8 Tester's report, no screenshot: whether a bet was required. within 1 min16:05 → 16:05
  • M-Pesa SMS, withdrawal (test 1)
  • Operator's transaction history
  • Operator's transaction history
2. 30 September 2026
Evening
KSh 211 M-Pesa cost KSh 24 credited KSh 200.45 (“Deposit Tax” KSh 10.55) to BETIKA KSh 13 at 1.16won Paid KSh 203 → KSh 192 on M-Pesa (“Withdrawal Tax” KSh 11) paid by BETIKA B2C · ref UIU2F8••QR Tester's report, no screenshot: whether a bet was required. within 1 min18:07 → 18:07
  • M-Pesa SMS, withdrawal (test 2)
  • Operator's transaction history
  • Operator's transaction history
3. 1 October 2026
Morning
KSh 211 M-Pesa cost KSh 24 credited KSh 200.45 (“Deposit Tax” KSh 10.55) to BETIKA KSh 13 at 1.18won Paid KSh 202 → KSh 191 on M-Pesa (“Withdrawal Tax” KSh 11) paid by BETIKA B2C · ref UJ12F8••IQ Tester's report, no screenshot: whether a bet was required. within 1 min10:54 → 10:54
  • M-Pesa SMS, withdrawal (test 3)
  • Operator's transaction history
4. 2 October 2026
Evening
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Deposit Tax” KSh 10) to BETIKA KSh 190 at 1.17won Paid KSh 223 → KSh 211 on M-Pesa (“Withdrawal Tax” KSh 12) paid by BETIKA B2C · ref UJ32F8••14 Tester's report, no screenshot: whether a bet was required. within 1 min3 Oct, 05:23 → 05:23
  • M-Pesa SMS, withdrawal (test 1)
  • Operator's transaction history
  • Operator's transaction history
5. 3 October 2026
Afternoon
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Deposit Tax” KSh 10) to BETIKA KSh 13 at 1.19won Paid KSh 234 → KSh 222 on M-Pesa (“Withdrawal Tax” KSh 12) paid by BETIKA B2C · ref UJ42F9••5H A first request for 192 KES at 21:29, after the 13 KES bet had won, was refused. It went through after a second bet. within 1 min4 Oct, 00:02 → 00:02
  • M-Pesa SMS, withdrawal (test 2)
  • Screenshot
  • Operator's transaction history
  • Operator's transaction history
6. 4 October 2026
Night
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Deposit Tax” KSh 10) to BETIKA KSh 190 at 1.26won Paid KSh 238 → KSh 226 on M-Pesa (“Withdrawal Tax” KSh 12) paid by BETIKA B2C · ref UJ42F9••40 Tester's report, no screenshot: whether a bet was required. within 1 min07:48 → 07:48
  • M-Pesa SMS, withdrawal (test 3)
  • Operator's transaction history
7. 14 October 2026
Evening
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Deposit Tax” KSh 10) to BETIKA KSh 190 at 1.17won Paid KSh 222 → KSh 210 on M-Pesa (“Withdrawal Tax” KSh 12) paid by BETIKA B2C · ref UJE2FA••LH Tester's report, no screenshot: whether a bet was required. within 1 min21:46 → 21:46
  • M-Pesa SMS, deposit (test 1)
  • Operator's transaction history
  • M-Pesa SMS, withdrawal (test 1)
8. 15 October 2026
Night
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Deposit Tax” KSh 10) to BETIKA KSh 190 at 1.37won Paid KSh 260 → KSh 247 on M-Pesa (“Withdrawal Tax” KSh 13) paid by BETIKA B2C · ref UJF2FA••4K Tester's report, no screenshot: whether a bet was required. within 1 min08:08 → 08:09
  • M-Pesa SMS, deposit (test 2)
  • Operator's transaction history
  • Operator's transaction history
  • M-Pesa SMS, withdrawal (test 2)
9. 16 October 2026
Afternoon
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Deposit Tax” KSh 10) to BETIKA KSh 190 at 1.28lost No withdrawal Bet lost, nothing left to withdraw. Tester's report, no screenshot: whether a bet was required. -
  • M-Pesa SMS, deposit (test 3)
  • Operator's transaction history
  • Operator's bet slip (test 3)

9 tests are a sample, not a verdict: they say what happened on those days, on one account and one line. Personal details are hidden on every screenshot. How the tests are run.

Tested with real money

Melbet

9 tests, 29 September 2026 to 16 October 2026, by Oscar N. (independent tester based in Kenya, paid a fixed fee per test by HarakaRank whatever the result). 7 of 9 ended with money on M-Pesa, 2 bet lost with nothing left to withdraw.

Time to the M-Pesa SMS
3 to 10 min2 to 5 min: 5 tests · 6 to 15 min: 2 tests
Taken at withdrawal
Under 1 KES: the amount was rounded down to the shilling
Extra check before paying
One-time code by SMS (2 of 7 withdrawals)
Bet before withdrawing
Yes: a withdrawal was refused for lack of a bet
M-Pesa cost on deposit
None
Account used
Opened 29 September 2026
  • 30 September 2026 Melbet refused a withdrawal of an unplayed deposit and gave its rule.
    “You cannot withdraw funds in the amount of 247.95 KES (The security department reserves the right to decline withdrawal requests if deposit or withdrawal amount(s) do not correspond to the stakes of bets placed (to be able to withdraw funds the deposit amount must be wagered in full in bets with odds of at least 1.1). Criteria for withdrawal approval is the amount of bets placed within the deposit in question.)”
    • Operator's transaction history
  • 29 September 2026 A 380 KES bonus was credited with the first deposit.
    “380.00 KES bonus credited to account”
    • Operator's transaction history
  • 30 September 2026 The tester reports having to decline the bonus before a withdrawal was accepted. Tester's report, no screenshot.
  • 30 September 2026 Melbet sent a promotional SMS for a 50% bonus on a third deposit.
    “The bonus of 50% of the deposit? It’s not a joke - all you need to do is make the 3rd deposit.”
    • One-time code SMS
  • 1 October 2026 Withdrawals were paid by MELBET B2C (test 2) and GAMETOSHA B2C (test 3). M-Pesa charged nothing on the three deposits.
    • M-Pesa SMS, withdrawal (test 2)
    • M-Pesa SMS, withdrawal (test 3)
  • 4 October 2026 Winnings reached the balance about 5% lighter than the bet slip showed (212.61 KES won, 202.35 KES withdrawable; 221.16 and 209.95; 239.40 and 227.05). Melbet labels the difference nowhere in its history.
    • Operator's transaction history
  • 16 October 2026 In tests 7 to 9 deposits went to GAMETOSHA 2 and MELBET, and M-Pesa charged nothing. Both withdrawals were paid by MELBET B2C.
    • M-Pesa SMS, deposit (test 1)
    • M-Pesa SMS, deposit (test 2)
  • 15 October 2026 Winnings again reached the balance about 5% lighter than the bet slip showed (216.60 KES won, 206.15 KES withdrawable; 223.25 and 211.85).
    • Operator's transaction history
    • Operator's bet history

Each test as recorded by Oscar N. Times are read to the minute, from the withdrawal request to the M-Pesa SMS.

Test Deposit Bet Withdrawal Time Proof
1. 29 September 2026
Afternoon
KSh 250 M-Pesa cost none credited KSh 237.50 (KSh 12.50 less) to MELBET KSh 200 at 1.406lost No withdrawal Bet lost; 37.50 KES stayed on the account. Deposited in two M-Pesa payments, 200 and 50 KES. -
  • Operator's transaction history
2. 30 September 2026
Evening
KSh 200 M-Pesa cost none credited KSh 190 (KSh 10 less) to MELBET KSh 261 at 1.148won Paid KSh 284.05 → KSh 284 on M-Pesa (KSh 0.05 less) paid by MELBET B2C · ref UIU2F8••MH A first request for 247.95 KES at 17:42, before the bet, was refused. 3 min22:20 → 22:23OTP asked
  • M-Pesa SMS, withdrawal (test 2)
  • M-Pesa SMS, deposit (test 2)
  • Operator's transaction history
  • One-time code SMS
3. 1 October 2026
Morning
KSh 211 M-Pesa cost none credited KSh 200.45 (KSh 10.55 less) to GAMETOSHA KSh 201.26 at 1.2won Paid KSh 228.95 → KSh 228 on M-Pesa (KSh 0.95 less) paid by GAMETOSHA B2C · ref UJ12F8••3N 5 min06:46 → 06:51OTP asked
  • M-Pesa SMS, withdrawal (test 3)
  • Operator's transaction history
  • One-time code SMS
4. 2 October 2026
Evening
KSh 200 M-Pesa cost none credited KSh 190 (KSh 10 less) to GAMETOSHA KSh 190 at 1.119won Paid KSh 202.35 → KSh 202 on M-Pesa (KSh 0.35 less) paid by GAMETOSHA B2C · ref UJ32F8••1R 10 min3 Oct, 05:22 → 05:32
  • M-Pesa SMS, withdrawal (test 1)
  • Operator's transaction history
5. 3 October 2026
Afternoon
KSh 200 M-Pesa cost none credited KSh 190 (KSh 10 less) to MELBET KSh 190 at 1.164won Paid KSh 209.95 → KSh 209 on M-Pesa (KSh 0.95 less) paid by GAMETOSHA B2C · ref UJ32F9••KZ 3 min21:28 → 21:31
  • M-Pesa SMS, withdrawal (test 2)
  • Operator's transaction history
6. 4 October 2026
Night
KSh 200 M-Pesa cost none credited KSh 190 (KSh 10 less) to MELBET KSh 190 at 1.26won Paid KSh 227.05 → KSh 227 on M-Pesa (KSh 0.05 less) paid by GAMETOSHA B2C · ref UJ42F9••SA 4 min07:47 → 07:51
  • M-Pesa SMS, withdrawal (test 3)
  • Operator's transaction history
7. 14 October 2026
Evening
KSh 200 M-Pesa cost none credited KSh 190 (KSh 10 less) to GAMETOSHA 2 KSh 190 at 1.14won Paid KSh 206.15 → KSh 206 on M-Pesa (KSh 0.15 less) paid by MELBET B2C · ref UJF2FA••7V 4 min15 Oct, 03:30 → 03:34
  • M-Pesa SMS, deposit (test 1)
  • Operator's transaction history
  • M-Pesa SMS, withdrawal (test 1)
8. 15 October 2026
Night
KSh 200 M-Pesa cost none credited KSh 190 (KSh 10 less) to MELBET KSh 190 at 1.175won Paid KSh 211.85 → KSh 211 on M-Pesa (KSh 0.85 less) paid by MELBET B2C · ref UJF2FA••LU 6 min16:48 → 16:54
  • M-Pesa SMS, deposit (test 2)
  • Operator's transaction history
  • M-Pesa SMS, withdrawal (test 2)
9. 16 October 2026
Afternoon
KSh 200 M-Pesa cost none credited KSh 190 (KSh 10 less) to GAMETOSHA 2 KSh 190 at 1.225lost No withdrawal Bet lost, nothing left to withdraw. -
  • M-Pesa SMS, deposit (test 3)
  • Operator's transaction history
  • Operator's bet history

9 tests are a sample, not a verdict: they say what happened on those days, on one account and one line. Personal details are hidden on every screenshot. How the tests are run.

Tested with real money

Odibets

9 tests, 29 September 2026 to 16 October 2026, by Oscar N. (independent tester based in Kenya, paid a fixed fee per test by HarakaRank whatever the result). 9 of 9 ended with money on M-Pesa.

Time to the M-Pesa SMS
Within 1 minwithin 1 min: 9 tests
Taken at withdrawal
Varied, 5.1 to 7.6% of the amount withdrawn
Extra check before paying
None
Bet before withdrawing
No: paid without a bet (tester's report)
M-Pesa cost on deposit
KSh 24
Account used
Opening date not recorded
  • 1 October 2026 Odibets shows no transaction history, so what it deducted on each withdrawal cannot be read on its side. Its customer care told the tester to check the M-Pesa statement instead. Tester's report, no screenshot.
  • 1 October 2026 Odibets paid all three withdrawals without any bet being placed. Tester's report, no screenshot.
  • 3 October 2026 Odibets takes about 5 KES on top of the amount asked: for a 185 KES withdrawal the balance fell by 190 KES, and 175.50 KES reached M-Pesa.
    “Your withdrawal of Ksh. 185 is being processed. M-Pesa charges apply.”
    • Screenshot
    • Screenshot
    • M-Pesa SMS, withdrawal (test 2)
  • 3 October 2026 The account showed a 115 KES bonus, which the tester reports declining. Tester's report, no screenshot.

Each test as recorded by Oscar N. Times are read to the minute, from the withdrawal request to the M-Pesa SMS.

Test Deposit Bet Withdrawal Time Proof
1. 29 September 2026
Afternoon
KSh 230 M-Pesa cost KSh 24 to ODIBETS none Paid KSh 200 → KSh 189.75 on M-Pesa (KSh 10.25 less) paid by ODIBETS · ref UIT2F8••WU Tester's report, no screenshot: whether a bet was required, the amount requested, the time of the request. within 1 min12:50 → 12:50
  • M-Pesa SMS, withdrawal (test 1)
2. 30 September 2026
Evening
KSh 211 M-Pesa cost KSh 24 to ODIBETS none Paid KSh 200 → KSh 189.75 on M-Pesa (KSh 10.25 less) paid by ODIBETS · ref UIU2F8••RE Tester's report, no screenshot: whether a bet was required, the amount requested, the time of the request. within 1 min17:40 → 17:40
  • M-Pesa SMS, withdrawal (test 2)
3. 1 October 2026
Morning
KSh 211 M-Pesa cost KSh 24 to ODIBETS none Paid KSh 195 → KSh 181.20 on M-Pesa (KSh 13.80 less) paid by ODIBETS · ref UJ12F8••GK The tester could not withdraw the whole balance; 5.22 KES stayed on the account. Tester's report, no screenshot: whether a bet was required, the amount requested, the time of the request. within 1 min06:51 → 06:51
  • M-Pesa SMS, withdrawal (test 3)
4. 2 October 2026
Evening
KSh 200 M-Pesa cost KSh 24 to ODIBETS none Paid KSh 190 asked → KSh 180.25 on M-Pesa paid by ODIBETS · ref UJ22F8••S2 Tester's report, no screenshot: whether a bet was required, the amount requested, the time of the request. within 1 min21:22 → 21:22
  • M-Pesa SMS, withdrawal (test 1)
5. 3 October 2026
Afternoon
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (KSh 10 less) to ODIBETS none Paid KSh 185 asked, KSh 190 taken from the balance → KSh 175.50 on M-Pesa (KSh 14.50 less) paid by ODIBETS · ref UJ32F9••81 On a 190.22 KES balance, 190 and then 186 KES were refused as insufficient funds; 185 was accepted and the balance fell to 0.22. Tester's report, no screenshot: whether a bet was required. within 1 min14:05 → 14:05
  • M-Pesa SMS, withdrawal (test 2)
  • Screenshot
  • Screenshot
6. 3 October 2026
Night
KSh 200 M-Pesa cost KSh 24 to ODIBETS none Paid KSh 185 asked → KSh 175.50 on M-Pesa paid by ODIBETS · ref UJ32F9••1Y Tester's report, no screenshot: whether a bet was required, the amount requested, the time of the request. within 1 min23:56 → 23:56
  • M-Pesa SMS, withdrawal (test 3)
7. 14 October 2026
Evening
KSh 200 M-Pesa cost KSh 24 to ODIBETS none Paid KSh 185 asked → KSh 175.50 on M-Pesa Tester's report, no screenshot: whether a bet was required, the amount requested, the time of the request. within 1 min19:08 → 19:08
  • M-Pesa SMS, deposit (test 1)
  • M-Pesa SMS, withdrawal (test 1)
8. 15 October 2026
Night
KSh 200 M-Pesa cost KSh 24 to ODIBETS none Paid KSh 185 asked → KSh 175.50 on M-Pesa Tester's report, no screenshot: whether a bet was required, the amount requested, the time of the request. within 1 min03:35 → 03:35
  • M-Pesa SMS, deposit (test 2)
  • M-Pesa SMS, withdrawal (test 2)
9. 16 October 2026
Afternoon
KSh 200 M-Pesa cost KSh 24 to ODIBETS none Paid KSh 185 asked → KSh 175.50 on M-Pesa Tester's report, no screenshot: whether a bet was required, the amount requested, the time of the request. within 1 min12:03 → 12:03
  • M-Pesa SMS, deposit (test 3)
  • M-Pesa SMS, withdrawal (test 3)

9 tests are a sample, not a verdict: they say what happened on those days, on one account and one line. Personal details are hidden on every screenshot. How the tests are run.

Tested with real money

SportPesa

9 tests, 29 September 2026 to 16 October 2026, by Oscar N. (independent tester based in Kenya, paid a fixed fee per test by HarakaRank whatever the result). 8 of 9 ended with money on M-Pesa, 1 bet lost with nothing left to withdraw.

Time to the M-Pesa SMS
Within 1 minwithin 1 min: 8 tests
Taken at withdrawal
About 5% of the amount withdrawn, labelled “Witholding tax on withdraw” by SportPesa
Extra check before paying
None
Bet before withdrawing
Yes, according to the tester (not tried without a bet)
M-Pesa cost on deposit
KSh 24
Account used
Opening date not recorded

Each test as recorded by Oscar N. Times are read to the minute, from the withdrawal request to the M-Pesa SMS.

Test Deposit Bet Withdrawal Time Proof
1. 29 September 2026
Afternoon
KSh 230 M-Pesa cost KSh 24 to SportPesa KSh 200 at 1.1won Paid KSh 200 → KSh 190 on M-Pesa (KSh 10 less) paid by SportPesa B2C · ref UIT2F8••OE The tester withdrew 200 KES and left the rest of the balance on the account. Tester's report, no screenshot: whether a bet was required, the amount requested. within 1 min13:29 → 13:29
  • M-Pesa SMS, withdrawal (test 1)
2. 30 September 2026
Evening
KSh 211 M-Pesa cost KSh 24 to SportPesa KSh 238 at 1.14lost No withdrawal Bet lost, nothing left to withdraw. Tester's report, no screenshot: whether a bet was required. -
3. 1 October 2026
Morning
KSh 211 M-Pesa cost KSh 24 credited KSh 200.45 (“Excise tax on deposit” KSh 10.55) to SportPesa KSh 201 at 1.18won Paid KSh 237 → KSh 225.15 on M-Pesa (“Witholding tax on withdraw” KSh 11.85) paid by SportPesa B2C · ref UJ12F8••PK Tester's report, no screenshot: whether a bet was required. within 1 min06:41 → 06:41
  • M-Pesa SMS, withdrawal (test 3)
  • Operator's transaction history
4. 2 October 2026
Evening
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Excise tax on deposit” KSh 10) to SportPesa KSh 190 at 1.16won Paid KSh 220 → KSh 209 on M-Pesa (“Witholding tax on withdraw” KSh 11) paid by SportPesa B2C · ref UJ32F8••IT Tester's report, no screenshot: whether a bet was required. within 1 min3 Oct, 05:24 → 05:24
  • M-Pesa SMS, withdrawal (test 1)
  • Operator's transaction history
5. 3 October 2026
Afternoon
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Excise tax on deposit” KSh 10) to SportPesa KSh 190 at 1.18won Paid KSh 225 → KSh 213.75 on M-Pesa (“Witholding tax on withdraw” KSh 11.25) paid by SportPesa B2C · ref UJ32F9••JG Tester's report, no screenshot: whether a bet was required. within 1 min21:29 → 21:29
  • M-Pesa SMS, withdrawal (test 2)
  • Operator's transaction history
6. 3 October 2026
Night
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Excise tax on deposit” KSh 10) to SportPesa KSh 190 at 1.26won Paid KSh 237 → KSh 225.15 on M-Pesa (“Witholding tax on withdraw” KSh 11.85) paid by SportPesa B2C · ref UJ42F9••O1 Tester's report, no screenshot: whether a bet was required. within 1 min4 Oct, 07:48 → 07:48
  • M-Pesa SMS, withdrawal (test 3)
  • Operator's transaction history
7. 14 October 2026
Evening
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Excise tax on deposit” KSh 10) to SportPesa KSh 190 at 1.18won Paid KSh 224 → KSh 212.80 on M-Pesa (“Witholding tax on withdraw” KSh 11.20) paid by SportPesa B2C · ref UJE2FA••AY Tester's report, no screenshot: whether a bet was required. within 1 min21:47 → 21:47
  • M-Pesa SMS, deposit (test 1)
  • M-Pesa SMS, withdrawal (test 1)
  • Operator's transaction history
  • Operator's transaction history
8. 15 October 2026
Night
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Excise tax on deposit” KSh 10) to SportPesa KSh 190 at 1.12won Paid KSh 213 → KSh 202.35 on M-Pesa (“Witholding tax on withdraw” KSh 10.65) paid by SportPesa B2C · ref UJF2FA••TI Tester's report, no screenshot: whether a bet was required. within 1 min16:49 → 16:49
  • M-Pesa SMS, deposit (test 2)
  • M-Pesa SMS, withdrawal (test 2)
  • Operator's transaction history
  • Operator's transaction history
9. 16 October 2026
Afternoon
KSh 200 M-Pesa cost KSh 24 credited KSh 190 (“Excise tax on deposit” KSh 10) to SportPesa KSh 190 at 1.13won Paid KSh 215 → KSh 204.25 on M-Pesa (“Witholding tax on withdraw” KSh 10.75) paid by SportPesa B2C · ref UJG2FA••L1 Tester's report, no screenshot: whether a bet was required. within 1 min17:21 → 17:21
  • M-Pesa SMS, deposit (test 3)
  • M-Pesa SMS, withdrawal (test 3)
  • Operator's transaction history
  • Operator's transaction history

9 tests are a sample, not a verdict: they say what happened on those days, on one account and one line. Personal details are hidden on every screenshot. How the tests are run.

What these tests do not show

  • How fast an operator pays on other days, at other hours, for larger amounts or on an account with a longer history.
  • Why an amount was deducted. Each operator's own label is quoted; what the tax is, and who keeps it, is not ours to guess.
  • Anything about odds, bonuses, customer support or the app beyond what a test went through.
  • A recommendation to bet with anyone. A test is a record of how money went in and came back out.

How a test is run, who runs it, how screenshots are redacted and how a figure is corrected: the method. Every addition and correction is dated on the changes page. Withdrawal terms as each operator prints them: withdrawal charges.