Skip to content
Testnet mode — deposits use Base Sepolia test USDC. Learn more

How FlipFlops works

FlipFlops turns San Francisco's resale and surge prices into simple YES/NO markets. There is no house on the other side of your bet and no order book — everyone's money goes into one pool, and the winning side splits it. Here is exactly how that works, what we charge, and who decides the answer.

  1. 1.Deposit USDC

    Sign in with Google and you get your own USDC deposit address on Base Sepolia. Send any amount — it's credited automatically, usually in under 30 seconds. No crypto? Buy with Apple Pay or card when that option is enabled.

  2. 2.Back YES or NO

    Every market asks one question with a number attached — will this ticket resell above $X, will surge top 3.0x. Bet $1$1,000 on either side until the market closes.

  3. 3.Get paid at settlement

    When the market resolves, the winning side splits the pool pro rata and the money lands in your balance the same second. Withdraw any time (minimum $2).

Pari-mutuel: the pool sets the odds

Each market has two pools: everything staked on YES and everything staked on NO. The market's “chance” is just the share of money on YES: YES ÷ (YES + NO). Nothing else sets the price — no market maker, no spread, no liquidity provider.

Because your payout depends on the final pools, it moves while the market is open: every later bet on your side dilutes your share, and every bet against you fattens the pot you'd split. That's why every payout figure on FlipFlops is labelled est. until the market closes. You can't sell or cash out early — a position runs to settlement (an order book is v2).

A worked example — run through the real settlement code

YES pool$600.00
NO pool$400.00
Total pool$1,000.00
Implied chance of YES60%
Your bet (on YES)$150.00
YES wins. Pool fee (5%, capped at the losing side)−$50.00
Left for winners$950.00
Your share of the $600.00 YES pool25%
Your payout$237.50
Profit+$87.50 (1.58x)

Every winning dollar on YES returns 1.58x. If NO had won, the same math would run the other way and your $150.00 would be gone — that is the whole bet.

Try it with your own numbers

$
$
Your side
$
Chance of YES after your bet63.6%
Pool fee taken at settlement$55.00
Est. payout if YES wins$149.28
Profit+$49.28 (1.49x)

Every later bet changes these pools, so the real payout is only known when the market closes. That's why we label it “est.” everywhere.

The fee: 5% of the pool, never more than the losing side

FlipFlops takes 5% of the total pool once, at settlement. No deposit fee, no withdrawal fee, no spread, no monthly anything — we even pay the gas for your withdrawal. The fee is already reflected in every estimated payout you see before you bet.

The cut is capped at the size of the losing side. That cap is what makes the policy safe: a winning bet can never return less than its stake, however lopsided the market was.

Lopsided market: the cap bites

YES pool$990.00
NO pool$10.00
5% of the pool would be$50.00
Fee actually taken (capped at NO)$10.00
YES backers get back$990.00 of $990.00

Winners keep their full stake. We earn only what the losing side put up.

Void or one-sided: no fee at all

OutcomeVoid
Fee$0.00
Refunded to bettors$1,000.00
Your refund$150.00

If a market is voided — or nobody backed the winning side — every stake is refunded in full, fee free.

Why skim the pool instead of taxing winnings?

Most crypto books charge a commission on your profit. That sounds friendlier, but it means the operator earns more when one side loses than the other — and on FlipFlops the operator is also the one who finalizes resolutions. A pool skim is outcome-neutral: 5% of $1,000.00 is $50.00 whether YES or NO wins, so we have nothing to gain from any particular answer. It is also the classic pari-mutuel takeout used by racetracks for a century: one number, visible up front, already priced into the odds you see — instead of a second calculation applied to your winnings after the fact.

The trade-off is the lopsided case above, where 5% of the pool would exceed everything the losing side staked. The cap handles it: we take less, and winners still get their money back.

Where markets come from

A discovery agent reads the resale and surge world — ticket resale, sneaker drops, watch comps, hype boxes, rideshare and hotel surges — and proposes market ideas with a tracked underlying, a threshold, a direction, a close time and a specific resolution source. Each proposal lands in an admin queue.

No market goes live without a human approving it. The admin edits or rejects ideas, and the approved version — question, threshold, source, criteria, close and resolve times — is frozen when the market opens. You can read all of it on the market page before you bet. The house sometimes seeds a small opening line so a brand-new market isn't a coin flip on zero volume; that stake is disclosed on the market and in the ledger.

How a market is resolved

AI proposes, a human finalizes, and the result is cryptographically signed. Concretely:

  1. The market publishes its resolution source, criteria, threshold and resolution time before anyone bets.
  2. After the resolution time, the resolver agent gathers evidence with web search — URLs, quoted values, timestamps — and writes a proposed outcome with its reasoning and a confidence score.
  3. An administrator reviews it. They can accept, override with their own evidence, or void the market. Nothing pays out without this step, and any user can file a dispute that the admin sees next to the proposal.
  4. Finalizing signs an EIP-712 attestation over (market, question, outcome, observed value, evidence hash, time) with the attester key, and settles the market in the same database transaction — so the payout and the signature can never disagree.
  5. Anyone can verify that signature in their browser against the published attester address on Transparency.

If the source vanishes or the criteria turn out ambiguous, the honest answer is void: everyone gets their stake back and we take no fee.

Deposits & withdrawals

Every account gets a unique USDC deposit address on Base Sepolia, derived from a hardware-style HD key. We watch the chain for transfers to it and credit each one exactly once, after 2 confirmations. Credited deposits are swept to the treasury using a signed transfer authorization, so your deposit address never needs gas.

Withdrawals debit your ledger balance first, then the treasury sends the USDC to any address you name — if the broadcast fails, the debit is reversed and you see the reversal in your activity. Minimum $2; we pay the gas. Money in open bets is locked until those markets settle.

Proofs: don't trust us, check

  • Proof of reserves. Live on-chain USDC (treasury + unswept deposit addresses) against total liabilities (user balances + open escrow), with coverage shown as a percentage.
  • Merkle snapshots. Each snapshot hashes every account balance into a tree and publishes — and signs — only the root. From your Portfolio you can verify your balance is in that root without revealing anyone else's.
  • Hash-chained ledger. Every movement of money is a double-entry row whose hash commits to the row before it. The public explorer replays the chain and checks that all balances sum to zero.
  • Signed resolutions. Each settled market carries an EIP-712 attestation you can verify in your browser.

Open the transparency page →

You're on a test network

This deployment uses Base Sepolia. Balances are test USDC with no monetary value — you can get some free from the faucet linked inside the deposit dialog, and nothing you win here is real money. It behaves exactly like the production configuration: same contracts, same ledger, same proofs, same settlement code.

On mainnet the only differences are the chain (Base), the real USDC contract, and real money at stake.

FAQ