The report in 30 seconds
01 / FAIRNESS PROOF
Failed
You can’t independently
verify a bet’s result.
The seed already contains the answer. No published formula lets you reproduce how it was generated.
Limbo · Dice · Plinko
Evidence →
02 / LIMBO RETURN
Below advertised
Limbo paid less
than advertised.
97.33% returned against 99.02% advertised, measured over 60,000 bets.
1.69 percentage points below the claim
Evidence →
This investigation evaluates three of BetFury's in-house "Original" games — Limbo, Dice and Plinko — against two independent questions:
01
Provably fair implementation
Are the games genuinely provably fair — is each result reproducible, is the outcome outside the casino's sole control (bound to a player or external-entropy input), does the casino commit to its seeds before the outcome is derived, and can a player see how a result is produced and reproduce it themselves?
02
Measured RTP vs advertised
Because the outcome can't be derived and verified as fair, do the games actually pay the 99.02% RTP BetFury advertises?
Original test findings
Provably fair
Fail
BetFury's player-facing system proves only that a completed result was not changed after commitment. It does not prove how the result was generated, does not include any disclosed input outside BetFury's control, and does not let a player reproduce the outcome — no player-controlled client seed, disclosed nonce or public derivation formula was found in the UI, requests, history or verifier we tested.
Limbo RTP
Fail
In the tested 60,000-bet capture, Limbo returned 97.33% against the 99.02% encoded by its displayed odds — a sample house edge roughly 2.7× the advertised rate.
Dice · Plinko RTP
No discrepancy
Measured 99.39% and 99.01% — statistically consistent with their advertised mathematics. As same-window controls, they strongly support that the detected discrepancy was specific to Limbo rather than a general account or collection issue.
240,000
bets placed (180k instrumented + 60k exploratory)
97.33%
Limbo RTP vs 99.02% advertised
~2.7×
the advertised house edge
0
player-controlled randomness inputs in the tested flow
01
Fairness proof failed: you can’t replay a result
01 / FAIRNESS PROOF
The hash checks out.
The result cannot be replayed.
A valid commitment shows the string was not changed. It does not explain how the result was generated.
Pre-bet commitment matched
CAPTURED randomSeed
LIMBO / Multiplier
1.91_XiLQkYQZxcwNxF
DICE / Roll
52_FcqvWBAQrkwQbZ
PLINKO / Ball path
1000101001000011_owOW…
Highlighted: the completed result is already in the seed.
Player-controlled seed
None observed
Per-bet nonce
Not disclosed
Derivation formula
Not published
Replay the outcome
Not available
1.1
What provably fair should look like
How a provably fair result is made
committed before the bet · re-runnable after
Client seed
The player's — or another source outside the operator's control
+
Server seed
The casino's — SHA256 of it published before any bet
+
Nonce
Counts up with every bet — a unique index per outcome
HMAC-SHA256
A published formula — anyone can re-run it
Result
Fixed before you bet — recomputable after the seed is revealed
1.2
What BetFury actually does
Captured from the live game socket — the complete outgoing bet, everything the browser sends to place a wager:
// games.dice.bet — the entire wager sent to BetFury
{ "is_under": true, "prediction": 50, "amount": "0.10000000",
"isFast": false, "isAuto": false, "frontID": 1784114526766 }
Nothing the player generates feeds the result.
1.3
The revealed proof contains the result
BetFury's bet record reveals a randomSeed and a hash where SHA256(randomSeed) == hash. But read the seed:
Limbo: 1.91_XiLQkYQZxcwNxF → 1.91 was the multiplier
Dice: 52_FcqvWBAQrkwQbZ → 52 was the roll
Plinko: 1000101001000011_owOW… → the 16-step ball path
Every proof is <result>_<server string>. It contains the finished result — not the inputs and formula needed to derive it. BetFury's own docs confirm the shape: "Random seed is a combination of Random winning number and Server seed."
1.4
The RNG certificate
The public BetFury testing document we located — SIQ Test Report T-J0068-I0003, from 2022 — provides laboratory testing and software analysis of a submitted Math.random()-based PRNG sample, and states its own scope:
The report does include a Limbo section — and it's worth being precise about what that section checks, because it's easy to mistake for a fairness guarantee. It tests that the game's underlying random draw is statistically uniform: that the raw numbers come out evenly, with no bias. The sample passes. That is a real and useful test — but it answers a narrower question than fairness.
The report provides evidence that the submitted PRNG sample passed its statistical and software checks. It does not establish that the live games used the same implementation, or that their payout maths produced the represented RTP — the two things that decide what a player actually receives. A generator can pass every randomness test and still underpay if the payout constant that converts those numbers into a return is set below the advertised rate, which is exactly the Limbo pattern we measured: fair-looking numbers, a house edge ~2.7× the advertised rate.
1.5
Provably fair requirements vs BetFury
Requirement
Conventional provably fair model
What we observed on BetFury
Verdict
Server-seed hash shown before betting
SHA256(serverSeed), pre-bet
Hash shown pre-bet, but it commits the result itself, not a seed
Partial
Player-controlled client seed
Yes
None in UI, bet, history or verifier
Missing
Disclosed per-bet nonce
Yes
None disclosed
Missing
Documented derivation formula
HMAC_SHA256(server, client:nonce)
None — the "proof" simply contains the finished result
Missing
Player can replay a bet
Fully reproducible
Nothing to recompute
Impossible
Secure live RNG demonstrated
CSPRNG, tested on the live game
2022 report covers a sample, not the live game
Not established
Player-verifiable fairness
Yes
Mechanisms absent
Unsupported
RTP Measurement
PRIMARY CAPTURE · 16 JUL 2026
60,000 bets per game
FIGURE 01 · 60,000 BETS PER GAME
Measured vs advertised return
Dashed line: 99.02% advertised
Limbo
97.33%
−1.69 percentage points below advertised
SAME-WINDOW CONTROLS
Dice
99.39%
Plinko
99.01%
97%
98%
99%
100%
Dice and Plinko were within the expected range.
MEASURED RETURN · 60,000 BETS PER GAME
Limbo under-returned. The controls did not.
97.0%
98.0%
99.0%
Advertised 99.02%
97.33%
Limbo
1.7 pts short
99.39%
Dice
control
99.01%
Plinko
control
−1.69 pp
Limbo lands 1.7 points below the advertised line; Dice and Plinko land within ordinary sampling range of it. Dice sits 0.37 points above the line and Plinko 0.01 below — each inside one standard deviation — against Limbo's 1.69-point shortfall. Same method, same account, same session. Each point is a 60,000-bet estimate; the result table is below.
Game
Bets
Measured RTP
Advertised
Result
Limbo
60,000
97.33%
99.02%
Shortfall
Plinko
60,000
99.01%
99.02%
No discrepancy
Dice
(control)
60,000
99.39%
99.02%
No discrepancy
2.1
Method & conditions
Because a BetFury result can't be recomputed by a player, the only remaining check is statistical: place a large, fixed number of bets and compare what the games actually pay against what they advertise. Money RTP = total paid ÷ total staked — mechanism-agnostic, identical for all three games. Dice and Plinko serve as controls; both are checkable against a fixed reference.
Game
BetFury Original Limbo
Test date
16 Jul 2026
Target
1.10×
Displayed win chance
90.01818%
Stake
0.001 USDT, fixed
Bets
60,000, single account
Bonuses
none
Controls
Dice + Plinko, same window
BetFury states a 99.02% RTP for Limbo, and the game confirms it on every bet: at our 1.10× setting the on-screen 90.01818% win chance × 1.10× payout = 99.02%. BetFury's own page publishes the same relationship at other targets — its 2.00× example shows a 49.51000% win chance, exactly 0.9902 ÷ 2. So the odds our test is measured against are BetFury's own published figure, not our inference.
Why 60,000 bets at these settings. The precision of a measured RTP depends on per-bet variance as much as on bet count, so the run was designed around a low-variance setting: at a 1.10× target the game pays on roughly nine bets in ten, and 60,000 fixed-stake rounds bring the standard error on measured RTP down to ±0.135 points — a 95% confidence interval of ±0.26 points around the advertised 99.02%. That is quarter-point resolution on a question asked in whole points; the same count at high cash-out targets would resolve RTP only to within several points. The fixed 0.001 USDT stake keeps money RTP a pure function of the win count, and Dice and Plinko ran through the same account, window and stake, so the controls share identical exposure to any capture artefact.
WHERE THE SHORTFALL APPEARS
Nearly twice as many instant losses.
1.00× busts in 60,000 rounds · expected under the standard 99.02% model
Advertised model
Expected at either target
≈1,176
1 bust in 51
Exploratory capture
2.00× target · corroboration
2,072
1 bust in 29
Primary capture
1.10× target · instrumented
2,130
1 bust in 28
Instant-loss count
0
600
1200
1800
2400
+954
Extra instant losses in the primary capture
Compared with the standard advertised-return model for the same 60,000 bets.
WHERE THE SHORTFALL APPEARS
Nearly twice as many instant losses.
1.00× busts in 60,000 rounds · expected under the standard 99.02% model
Advertised model
Expected at either target
≈1,176
1 bust in 51
Exploratory capture
2.00× target · corroboration
2,072
1 bust in 29
Primary capture
1.10× target · instrumented
2,130
1 bust in 28
Instant-loss count
0
600
1200
1800
2400
+954
Extra instant losses in the primary capture
Compared with the standard advertised-return model for the same 60,000 bets.
Limbo shows a "Win Chance" on every bet — 90.01818% at the 1.10× setting. Over 60,000 bets those odds predict about 54,011 wins; players actually won 53,087, roughly 924 fewer than the game's own displayed odds promise. This is the cleanest evidence in the report, because it needs no assumptions about BetFury's formula — it holds them to the number printed on their own button. And 924 is not a rounding error: at BetFury's displayed odds the standard deviation over 60,000 bets is about 73 wins, so a shortfall of roughly 924 wins is 12.58 standard deviations below expectation — far outside any credible run of ordinary bad luck (the exact odds are in the note below).
The clearest single symptom: the 1.00× instant bust
At 1.00× Limbo ends before the multiplier moves — an outright loss on the first tick. Under the standard two-decimal Limbo formula consistent with a displayed 99.02% RTP, about 1.96% of rounds should land there — roughly one bust every 51 bets. We recorded far more.
1.00× instant losses
Expected under 99.02%
Observed
Number of rounds
~1,176
2,130
Share of all bets
~1.96%
3.55%
What a player feels
1 bust in 51
1 bust in 28
54,011
expected wins
53,087
actual wins
2,130
instant busts
+954
extra instant busts
2.5
Corroboration — the signal appeared twice
Before the fully instrumented investigation, we ran an exploratory 60,000-bet Limbo capture at a 2.00× target. It recorded results, payouts and timestamps but not the seed/hash fields, so it is not pooled into the headline figure — it is published separately as corroboration.
Run
Target
Instant busts
Rate
Frequency
Exploratory
2.00×
2,072
3.453%
1 in 29
Confirmatory
1.10×
2,130
3.550%
1 in 28
Advertised-model expectation
either
~1,176
~1.96%
1 in 51
Both real runs land near one instant bust every 28–29 bets; the advertised model predicts one every 51. The near-doubling from a 1.6-point RTP change is expected arithmetic, not a mismatch: the 1.00× rate equals (1.01 − R) ÷ 1.01, so it tracks the gap between R and 1.01 — and every point of return removed reappears almost one-for-one as additional instant-bust probability. The exploratory run also returned 97.89% money RTP against the displayed 99.02% — corroboration only; the headline rests on the instrumented 1.10× run.
FIGURE 02
Effective RTP reconstructed at each cash-out target (same 60,000 rounds)
96%
97%
98%
99%
99.02% advertised
1×
2×
5×
10×
Cash-out target · log scale
Select a target · swipe for more
1.10× target
97.33% effective RTP
−1.69 pts vs advertised
Every target lands 1.6–2.8 points below the advertised return.
FIGURE 02
Effective RTP reconstructed at each cash-out target (same 60,000 rounds)
96.0%
97.0%
98.0%
99.0%
Advertised 99.02%
1.10× instrumented run: 97.33%
Every target lands 1.6–2.8 pts below the advertised return
1.01×
1.25×
1.5×
2×
3×
5×
10×
Hover, focus or tap a point for the figure
The shortfall is distribution-wide. Every tested threshold from 1.01× to 10× returned below the displayed 99.02%; individual estimates run 96.24%–97.41% and grow noisier at higher targets. The overall distribution best-fits an RTP parameter near 97.4%.
Within the 60,000 multipliers generated while betting at 1.10×, the implied return remained below 99.02% at every tested threshold from 1.01× to 10×. Individual estimates ranged from 96.24% to 97.41% and became noisier as the target rose. Fitting the captured multiplier distribution to the standard two-decimal Limbo model produces an underlying RTP estimate near 97.4%. We did not separately place bets at other targets; the exploratory run below did, at 2.00×, and also came back short.
Cash-out target
Implied win rate
Win rate × target
Effective RTP
vs 99.02%
1.01×
≈96.4%
96.4% × 1.01
≈97.4%
−1.6 pts
1.10×
(instrumented run)
88.48%
88.48% × 1.10
97.33%
−1.69 pts
1.25×
≈77.7%
77.7% × 1.25
≈97.1%
−2.0 pts
1.50×
≈64.8%
64.8% × 1.50
≈97.2%
−1.8 pts
2.00×
≈48.4%
48.4% × 2.00
≈96.7%
−2.3 pts
3.00×
≈32.2%
32.2% × 3.00
≈96.7%
−2.4 pts
5.00×
≈19.2%
19.2% × 5.00
≈96.2%
−2.8 pts
10.00×
≈9.65%
9.65% × 10.0
≈96.5%
−2.5 pts
The same shortfall, row by row. Implied win rate at each cash-out threshold within the captured 60,000 multipliers, times the payout — the same win-chance × payout arithmetic BetFury's own bet panel displays. Every row lands 1.6–2.8 points below the advertised 99.02%. The highlighted 1.10× row is the instrumented headline run, exact to the bet; per-target figures are recomputable from the published dataset.
The direct test is an exact one-sided binomial: 53,087 wins from 60,000 bets against BetFury's exact displayed win probability of 90.01818% at the 1.10× target (0.9902 ÷ 1.10), giving p ≈ 4.1 × 10⁻³⁵. The shortfall of about 924 wins is 12.58 standard deviations below expectation (the standard deviation over 60,000 bets is ≈ 73 wins). The exact 95% confidence interval for the captured RTP is approximately 97.04% to 97.61%. Split into twelve blocks of 5,000 bets, every block returned below 98%. The 1.96% instant-bust figure is conditional on the standard two-decimal Limbo reference model; this direct displayed-chance test assumes nothing about the formula.
2.4
A standard Limbo reference model (R ≈ 0.974) closely fits the captured pattern
BetFury does not publish a player-reproducible Limbo formula, so we cannot state what exact code or constant was running on its servers. But the standard two-decimal Limbo model can be fitted to the recorded results — and under that model, a single RTP constant controls the whole multiplier distribution:
// simplified standard reference model — NOT BetFury source code
rawMultiplier = R / (1 − u) // u uniform in [0,1); R = RTP constant
displayedMultiplier = max(1.00, floor(rawMultiplier × 100) / 100) // 2-dp floor; below 1.00 = instant bust
In this model, one constant — R — sets the whole payback. With R = 0.9902 the model returns 99.02%, exactly what BetFury advertises and what its own bet panel encodes. A lower R shifts the entire distribution the same way: fewer wins at every cash-out target, and more first-tick busts. The question is simply which R best fits what we recorded.
And 0.9902 is not just the advertised number — it is the constant BetFury's own bet panel encodes at every cash-out target. At each of the eight targets below, the displayed win chance is exactly 0.9902 ÷ target to five decimal places:
Target
Win chance BetFury shows
Win chance × target
1.01×
98.03960%
0.9902
1.10×
(tested)
90.01818%
0.9902
1.50×
66.01333%
0.9902
2.00×
49.51000%
0.9902
5.00×
19.80400%
0.9902
10.00×
9.90200%
0.9902
100.00×
0.99020%
0.9902
1000×
0.09902%
0.9902
The interface encodes R = 0.9902 at every target checked. Win chance × payout returns the same constant at every target we captured from the bet panel — which also means no fatter high-multiplier tail is claimed that could reconcile the captured distribution with 99.02%, and none could alter the measured return of the 1.10× bets we placed, since a 1.10× target pays a fixed 1.10× however far the round runs.
Three separate readouts of the same 60,000-bet capture point to the same range — related views of one distribution, each expressing the discrepancy differently:
What we measured
If R = 0.9902 (advertised)
Observed
Implied R
Win rate at the 1.10× target
90.02%
88.48%
0.973
Instant 1.00× bust rate
~1.96%
3.55%
0.974
Return across targets 1.01×–10×
99.02%
~97.3%
0.974
These three readouts are related, not independent experiments — they come from the same capture. Together they show BetFury's captured multiplier distribution behaves like a standard Limbo model with an effective RTP parameter near 97.4% (R ≈ 0.974), not the displayed 99.02%. This is a statistical model fit, not a claim that we obtained BetFury's source code; the actual replication is the two separate 60,000-bet captures. The shortfall itself does not depend on this model: the 88.48% win rate against the displayed 90.01818% win chance, and the 97.33% return against the advertised 99.02%, are raw counts from the recorded bets and stand under any formula. The fit adds the interpretation — those counts are what a standard Limbo game configured ~1.6 points low would produce.
THE CONTROL COMPARISON
One result sits far outside the normal swing.
Distance from the advertised return, in units of each game’s own normal sampling swing (1σ).
Limbo
−12.58σ
Dice
+0.92σ
Plinko
−0.02σ
-14
-10
-6
-2
+2
±1σ reference band
Dice and Plinko are within one standard deviation. Limbo is far outside that range.
The green band marks ±1 standard deviation. Limbo is 12.58 standard deviations below expectation.
THE CONTROL COMPARISON
One result sits far outside the normal swing.
Distance from the advertised return, in units of each game’s own normal sampling swing (1σ).
±1σ
-14
-10
-6
-2
0
+2
Limbo
−12.58σ
Dice
+0.92σ
Plinko
−0.02σ
The green band marks ±1 standard deviation. Limbo is 12.58 standard deviations below expectation.
Each control showed no statistically significant deviation from its expected distribution in these samples. The controls reduce concern about a general collection or calculation error; they do not independently authenticate or prove the completeness of the Limbo capture.
BetFury's displayed odds already rule out ordinary variance — no assumption about its formula required. At a displayed 90.02% win chance, 60,000 bets predict about 54,011 wins; we recorded 53,087, roughly 924 short. A shortfall that large or larger has a probability of about 4.1 × 10⁻³⁵ under the displayed odds. This calculation holds BetFury to the number on its own button and nothing else.
The multiplier distribution shows where the shortfall appears. Under the standard 99.02% two-decimal Limbo model, about 1,176 rounds should end immediately at 1.00×; we recorded 2,130. An earlier, separate run recorded another 2,072 instant busts — again almost twice the expected count. Two captures, two different targets, the same excess: that is not a credible ordinary-variance explanation.
The controls reduce the remaining concern. Dice and Plinko don't establish the Limbo result — Limbo's own win count does that — and they don't independently authenticate the Limbo capture. What they do show is that the same collection-and-analysis pipeline did not systematically produce low results across every game: run identically, both were statistically consistent with their expected mathematics, strongly arguing against a general account-wide or pipeline issue and isolating the detected discrepancy to Limbo.
Same 60,000 bets, radically different statistical meaning
The three games cannot be compared by asking whether each sample finished above or below 99.02%. Their payout distributions have different variance, so ordinary luck moves each game’s 60,000-bet average by a different amount. The right yardstick is each game’s own normal sampling swing:
Game
Measured RTP
vs 99.02%
Normal 1σ swing
Deviation
Assessment
Dice
99.393%
+0.373 pts
±0.404 pts
+0.92σ
Normal
Plinko
99.008%
−0.012 pts
±0.609 pts
−0.02σ
Normal
Limbo
97.326%
−1.694 pts
±0.135 pts
−12.58σ
Not variance
Why 99.39% and 97.33% are not comparable deviations. The 1σ column is how far ordinary luck moves each game’s 60,000-bet average, computed from the games’ published odds and paytables — at the tested settings Dice and Plinko swing naturally about 3× and 4.5× wider than Limbo. Dice finished less than one normal swing above its target and Plinko landed almost exactly on it; both are ordinary sampling variance, and neither implies a true RTP above or below the advertised figure. Limbo’s high-win-rate 1.10× configuration should have converged the most tightly of the three — instead it finished 12.58 standard deviations below expectation; the exact binomial probability of a shortfall that large is ≈ 4.1 × 10⁻³⁵ (see the statistical note in 2.3).
Control check
Measured
Expected if fair
Dice roll uniformity (0–99)
consistent
uniform
Dice win rate (roll under 50)
50.19%
50.00%
Plinko peg fairness (~960k L/R)
50.014%
50.000%
Plinko landing distribution
consistent
Binomial(16, 0.5)
03
What the findings establish
What the evidence supports
Fairness proof: players can check the committed string, but cannot reproduce how a result was generated.
Measured return: Limbo returned 97.33% vs 99.02%. Dice and Plinko were consistent with their stated returns.
Public evidence: request captures, verifier records, datasets, scripts and certificate scope support the findings.
Limits of this investigation
Cause and intent: not established. BetFury needs to explain the discrepancy.
Affected play: the start date, duration and impact on other accounts, stakes, regions or sessions remain unknown.
Test scope: one account, one fixed stake, 16 July 2026.
What BetFury still needs to explain
There is a straightforward way for BetFury to resolve this. We will publicly update this report if any of it is answered with reproducible evidence.
RECOMMENDATIONS
What needs to change.
01
Commit to a seed, not a result
02
Support client seeds
03
Expose all inputs
04
Demonstrate the live RNG
05
Investigate and reconcile
What BetFury still needs to explain
There is a straightforward way for BetFury to resolve this. We will publicly update this report if any of it is answered with reproducible evidence.
RECOMMENDATIONS
What needs to change.
01
Commit to a seed, not a result
02
Support client seeds
03
Expose all inputs
04
Demonstrate the live RNG
05
Investigate and reconcile
3.1
Scope of the claim
BetFury's "provably fair" system verifies only that a committed result wasn't altered afterward — it cannot show how a result was generated or let a player reproduce it. And in the tested capture, Limbo returned materially below the RTP encoded by its displayed odds (97.33% vs 99.02%), while Dice and Plinko are consistent with theirs. The statistical findings are independently recomputable from the published datasets and scripts; the provably fair finding is supported by the published request captures, verifier records, documentation and certificate scope.
We make no claim about intent — the cause, whether a misconfigured payout setting, a display error or something else, is for BetFury to explain. We also do not establish when the discrepancy began, how long it lasted, or whether every account, stake, region or session was affected — the primary capture tested one account at one fixed stake on 16 July 2026.
3.3
Recommendations
Run the investigation yourself.
Every figure is recomputable from the published data. Because the seeds contain the results and SHA-256 is unkeyed, a matching hash proves internal consistency, not origin — so anyone can run the scripts on a fresh capture of their own to test whether the shortfall reproduces.
ProvablyFair-org / betfury-investigation
PUBLIC REPOSITORY ↗
$ node scripts/verify.mjs
limbo 60000 | SHA256(seed)==hash 60000/60000 | result-in-seed 60000/60000 ✓
plinko 60000 | SHA256(seed)==hash 60000/60000 | result-in-seed 60000/60000 ✓
dice 60000 | SHA256(seed)==hash 60000/60000 | result-in-seed 60000/60000 ✓
TOTAL 180000 rounds | 180000/180000 seed matches its hash
$ node scripts/analyze.mjs
limbo RTP 97.326% win 88.478% vs 90.018% shown binomial p=4.1e-35
plinko RTP 99.008% no discrepancy
dice RTP 99.393% no discrepancy (control)
Open data & scripts
Published output shown · run locally to check
Game
randomSeed
SHA256 = hash
Result
Limbo
1.91_XiLQkYQZxcwNxF
b593674471f49bd7…42086aa3b8cc
1.91×
Limbo
1.13_eRABOoyYnxIfVm
b2e0724bae7a52ba…3823adb0278cdc28
1.13×
Dice
52_FcqvWBAQrkwQbZ
74a65e7dff528412…99e0049defcf1
roll 52
Plinko
1000101001000011_owOWuUgQaZegSbjIVckdaEBBhuGGwUfu
a4cf0ee400b823cc…3044cdaf65f
path → 1.0×
Dataset
Contents
Primary data
3 × 60,000 instrumented rounds
(data/*-60000.jsonl)
Exploratory
60,000 Limbo rounds at 2.00×, corroboration only
(data/limbo-exploratory-60000.json)
Pre-commitments
Dated fixed-n manifests, timestamped before each game's first bet
(data/*.precommit.json)
Certificate
BetFury's 2022 SIQ RNG certificate
(data/siq-rng-certificate-2022.pdf)
Tooling
verify.mjs · analyze.mjs · exploratory.mjs — Node.js only, no deps, no network
05
Conclusion
What players should know
BetFury Originals · Limbo, Dice & Plinko
ASSESSMENT
OBSERVED RESULT
VERDICT
Provably fair implementation
No player-reproducible outcome derivation
Fail
Limbo measured RTP
97.33% vs 99.02% advertised
Below advertised
Dice / Plinko measured RTP
99.39% / 99.01% respectively
No discrepancy
INTERPRETATION
Two claims surrounding the BetFury Originals we tested did not survive scrutiny.
The first is fairness. Its "provably fair" system gives players a valid cryptographic commitment to an already-created result — but no way to check how that result was generated or whether the advertised odds produced it. BetFury proves it kept its answer; it does not prove it generated the answer fairly, and a hash on a black-box result is not provably fair.
The second is the number on the screen. Measured directly over 60,000 hash-checked bets, Limbo returned 97.33% against the 99.02% encoded by its displayed odds — a sample house edge roughly 2.7× the advertised rate — while Dice and Plinko were statistically consistent with theirs.
SCOPE OF THE FINDINGS
Primary capture: one account, one fixed stake, 16 July 2026. The investigation does not establish when the discrepancy began, how long it lasted, or whether other accounts, stakes, regions or sessions were affected.
Both findings are independently recomputable from the published capture and scripts. We are reporting the measured data, not implying intent.
ProvablyFair.org · Independent investigation
