Betonchain Frontend

Betting with our contracts is frontend-agnostic, is just to provide progressive onboarding with a unified, trustworthy and data-rich UI/UX for both seasoned and casual bettors.

This frontend can be cloned and hosted decentrally on IPFS or Arweave. No user data is stored in a backend database and all displayed metrics are publically viewable and called directly from the official smart contracts. Users are encouraged to use Etherscan to validate metrics themselves. By using this frontend to interact with the official contracts and place bets, users commit to have accepted our Terms of Service.


Accessible, secure, and trustless on-chain Fantasy contests are mobile-only.

Our Progressive Web DApp (PWDA) is dedicated to fantasy sports and features embedded wallet generation and convenient user authentication flows. Real-time player chats and leaderboards are also available in the app.

To install the app, visit from your mobile device.


Odds can be displayed as American, Decimal or Implied Probabilties. This user supplied odds format is cached to persist through other components like pending/closed bet data. A countdown timer is displayed to inform when betting will be opened and closed for a game.

Total Volume Across Currencies is for all available bet positions (besides parlays which are collateralized separately).

Juice Removed Implied Probabilities

For example, a 2 position moneyline market with HOME (H) and AWAY (A) outcomes would have the following no-juice implied probabilties when initialized:

  • Pnj(H)=Pj(H)(TotalJuice0.5)P_{nj}(H) = P_{j}(H) - (TotalJuice *0.5)

  • Pnj(A)=Pj(A)(TotalJuice0.5)P_{nj}(A) = P_{j}(A) - (TotalJuice *0.5)

wherePj(H)P_{j}(H) and Pj(A)P_{j}(A) are Implied Probabilities for HOME and AWAY positions with juice included, Pnj(H)+Pnj(A)=100P_{nj}(H)+P_{nj}(A) = 100 and TotalJuice=(Pj(H)+Pj(A)1)TotalJuice = (P_{j}(H)+P_{j}(A) - 1) .

House Juice for bet positions is (Pj(H)+Pj(A)1)(P_{j}(H)+P_{j}(A) - 1) for the previous ex. This (usually) won't change.

Total Liquidity is the total seeded house liquidity for bet positions. For more details please visit the Providing Liquidity section.

House Max Payout - Max Profit are the potential max payout and profit for the house based on position odds and volume. A color gradient with fade is for visualizing these potential house PnLs.

User Profile

The total Betonchain wallet balance for a user includes available (deposits + winnings) and pending (locked in bets) balances. Users can claim all of their available balance or a portion in USDC, USDT or DAI. Users can deposit funds in USDC, USDT or DAI to their Betonchain wallet.

Users can also view their total number of bets made, lifetime profits and rewards from betting, and total amount bet on games.

The pending and closed betting history for a user is displayed in a table with sortable columns and includes the Date, League, Bet Type, Odds, Currency, Amount, Result, etc. for all bets. This table is downloadable as a readable csv file for accounting and further analysis. All profiles are queryable by wallet address or ENS (<address>).


Real-time event stream of newly created bets and bet results alongside a leaderboard showcasing top users. Users can also easily copy and counter each other.

LP Vaults

View protocol stats, stake/unstake BET and deposit/withdraw funds from the house liquidity pool. For more details please visit the tokenomics section.

Last updated