Speculation pools
Players: treat this as experimental. Only participate if you understand you can lose your stake and that UX and rules may change. Most haulers never need this page.
A speculation pool is an optional side bet tied to one freight job. It is not the haul itself, and it is not a reputation score for anonymous bettors. You stake SUI on whether the courier finishes on time. When the job settles on-chain, winners share the pool after a rake (default 17.5% of gross stakes — in line with typical US straight pari-mutuel takeout).
Think of it like a simple prediction market on that run: For = on-time delivery wins; Against = late delivery or overdue refund wins.
Trust model: On-chain freight job state is the source of truth for escrow, SLA deadlines, delivery outcomes, and overdue refunds. EVE Frontier (Fenris / CCP) emits killmail events on Sui, but Pelusium Move cannot verify the native killmail type in dependent packages today (VM errors). Speculation pools resolve on the SLA clock only — on-time vs late delivery, or overdue refund — not from killmail alone. Any future killmail-based betting would inherit the same limitation until chain support allows it.
If the app is waiting on world-contract support, you may still be able to view the speculation pages and pool UI, but final actions such as opening a pool or placing a bet can be paused at the signing step.
What you are betting on
| Side | You are saying | Wins when |
|---|---|---|
| For (courier / on-time) | This haul will land before the job’s delivery deadline | Delivery completes on time on-chain |
| Against (fail / late) | It will miss that window | Delivery is late, or the job is refunded overdue with no on-time delivery |
Mutual cancel of the freight job (when both sides unwind before pickup) voids the pool: bettors can claim their stakes back. That is not a win for either side.
You do not need other bettors to have a social reputation for this to work. Settlement follows the job’s on-chain outcome and the SUI already locked in the pool—not ratings or tribe vouching.
How a pool runs (lifecycle)
- Freight job must already be accepted (or picked up / in transit). See Shipping.
- A pool is opened and linked to that job (one pool per job).
- While the job is still accepted or picked up and the pool is open, anyone can place a bet with SUI on For or Against.
- Betting stops when the job is delivered, cancelled, refunded, or the pool otherwise leaves the open state.
- Resolution happens with delivery (on-time vs late) or with overdue refund. Then winners claim.
- If the haul is mutually cancelled (with a linked pool), the pool is voided and you claim a refund of what you staked—not a profit.
Pari-mutuel in plain language
All For stakes sit in one pile; all Against stakes sit in another. Together they are the gross pool.
- Losers’ stakes (and winners’ stakes) fund the pot.
- After resolution, a rake (default 17.5%) comes off the gross pool first.
- What remains is the winner pool, shared pro rata by how much each winner staked on the winning side.
Odds are implied by the sizes of the two piles, not by a house setting a fixed payout.
Example: open pool before resolution
Suppose players have staked 70 SUI For and 30 SUI Against (100 SUI gross). The pool looks like this:
If more people pile onto For, that side gets “cheaper” wins (more winners sharing the pot). If Against is thin, a correct Against bet pays more relative to stake.
What happens when For wins (worked example)
Same pool: 70 For / 30 Against, 100 SUI gross.
Assume the default 17.5% rake on the gross pool (same ballpark as US straight win/place/show takeout — e.g. Kentucky Derby / Churchill Downs; check the app for your deployment):
| Slice | Amount | Who gets it |
|---|---|---|
| Rake (17.5%) | 17.5 SUI | Split among protocol treasury, courier, and shipper (see next chart) — only when For wins |
| Winner pool (82.5%) | 82.5 SUI | Shared by everyone who bet For, in proportion to their For stake |
How one winner’s claim is sized
If you put 10 SUI on For out of 70 SUI total For stake, your claim is:
10 × (82.5 ÷ 70) ≈ 11.8 SUI
You get your share of the winner pool, not a fixed “odds” number typed by a bookie. If Against had won instead, For bettors get nothing from this pool (their stake stays in the pot that Against winners claim).
How the rake is split
The rake is always taken from the gross pool at resolution. Default size is 17.5% of gross stakes. Where that rake goes depends on the outcome:
| Outcome | Who receives the rake |
|---|---|
| For wins (on-time delivery) | Split per deployment — often about 40% treasury / 30% courier / 30% shipper |
| Against wins (late or overdue fail) | 100% protocol treasury — courier and shipper get none of the rake |
Compare the same rake under both outcomes (example 17.5 SUI rake → 7 / 5.25 / 5.25 on success, or 17.5 to treasury on fail):
Successful (For wins)
On-time · 40% / 30% / 30%
Protocol treasury 40%
Courier 30%
Shipper 30%
Failed (Against wins)
Late or overdue · 100% treasury
Protocol treasury 100%
So on-time speculation can tip the people on the haul a little as well as the protocol. A failed haul still pays rake, but only to the treasury—separate from freight escrow refunds on the job itself.
Against wins, voids, and empty sides
- Against wins — Against bettors share the post-rake winner pool; For stakes are lost to that pot; entire rake → treasury.
- Voided pool (e.g. mutual cancel) — no winner/loser. Each bettor claims back what they put in (no rake).
- Nobody staked the winning side — there is no one to pay pro rata; remaining funds after rake go to the treasury per protocol rules. Unusual, but possible on a lopsided or empty side.
Speculation vs hauling trust
| Freight job (hauling) | Speculation pool | |
|---|---|---|
| What it settles | Escrow for the haul (and optional goods pay) | Side bets on on-time vs late/fail |
| Main safety | Shipper locks escrow; job rules on-chain | Bettors lock stakes; outcome from job state |
| Do you need bettor reputation? | N/A — you care about the courier and the job | No — you care that resolution matches the job |
| Who can participate | Shipper, courier, and roles on that job | Anyone who can stake SUI while the pool is open |
Completed hauls still create a useful record of who delivered for whom. That social signal is about trusting a courier with cargo, not about whether speculation can exist. Speculation runs on capital at risk and a clear on-chain outcome.
What works today
- Core on-chain pools linked to jobs: open, bet, resolve with delivery or overdue refund, claim winnings, void + refund on mutual cancel.
- The app may show pool actions from Shipping or a speculation hub when that build has them turned on.
What’s still rough
- Product polish and some claim UX can feel incomplete; treat every stake as money you can lose.
- Always read what your wallet is signing and assume high risk until your community trusts the deployment.
Related
- Shipping & freight jobs — the underlying haul and escrow
- Cargo insurance — optional cover on cargo value for the same job
- Glossary — short definitions
- FAQ — common questions