How FlightMarket Works
Real airline schedule data. On-chain settlement. No estimates.
Verified aviation data
Scheduled times come directly from the airline's published schedule. Actual arrival times come from airport runway touchdown records. FlightMarket queries both the departure board and the arrival board independently and cross-references them, so every market contains two real, verified timestamps.
The Full Lifecycle
Flight discovery (every 4 hours)
Every 4 hours, FlightMarket queries a certified aviation data feed simultaneously for all 55 monitored hub airports, pulling both the departure board and the arrival board for the same time window. By cross-referencing the two feeds, we get the real published airline schedule for both departure and arrival times, directly from the source, with no estimates or guesses. A market listing is added only when a flight appears on both boards, meaning both its origin and destination are among our 55 monitored hubs. On production Solana, the smart-contract market is deployed automatically the first time someone places a real USDC bet, so the feed fills immediately without paying chain rent for flights no one trades.
Place Your Bet
Connect your Solana wallet (Phantom, Solflare, or any WalletConnect-compatible wallet) and bet USDC on whether the flight arrives ON TIME or DELAYED. If this flight has not been bet on before, the app runs a one-time on-chain setup, then submits your bet. The market stays open from the moment it appears in the feed (4–10 hours before departure) until 60 minutes before scheduled departure, enforced simultaneously by the backend and the on-chain smart contract. Minimum bet: $0.01 USDC.
Oracle resolves (every 30 minutes)
Every 30 minutes, FlightMarket queries the arrival FIDS at each destination hub to check for landed flights. Once a flight shows actual runway touchdown time (the moment the wheels physically touch the runway), the oracle computes the delay: actual touchdown − original published schedule. If the delay is 15 minutes or more, the flight resolves as DELAYED. The outcome and actual arrival timestamp are written to the Solana smart contract. When the market is still open on-chain, the oracle sends one atomic transaction that runs close_market then resolve_market so bettors can verify both steps in a single explorer entry. If betting was already closed on-chain, only resolution is sent. Resolved markets show a Solscan link on the flight page. Cancelled and diverted flights automatically resolve as DELAYED.
Claim Winnings
Winners claim from the total pool on the Portfolio page. Payouts follow a parimutuel model: what you receive depends on the final pool size and the split between sides. A protocol fee in USDC (percentage + small flat amount) is deducted from gross winnings before payout, and you always see the net estimate in the app. Separately, you pay a small Solana network fee in SOL when you place a bet and when you claim, like any other Solana transaction. The protocol wallet funds market creation on-chain and oracle settlement transactions, not your claims.
Market Timeline
Market window
During each 4h poll, qualifying hub-to-hub flights departing 4–10 hours ahead are inserted into the app. On Solana mainnet, the contract market is created on the first real bet, not at poll time.
Betting closes
No new bets accepted. The backend closer runs every 60 seconds and the Solana contract enforces the same cutoff independently.
Flight departs
Market is closed to bets. For markets that already exist on Solana, the oracle monitors the destination hub arrival data for resolution. Listings that never received a first bet have no on-chain market and are archived without that pass.
Resolution check
Every 30 minutes, FlightMarket checks for the actual runway touchdown time at the destination hub. Resolution happens automatically once data is confirmed.
Claim open
Winners can claim from the Portfolio page. Payouts are settled on-chain via Solana.
Which Flights Are Covered
Markets are created for flights between any two of the 55 busiest international hub airports. Both the origin and the destination must be monitored hubs. This is what allows FlightMarket to collect real arrival data for resolution without any guesswork.
Parimutuel Payout Formula
Odds are not fixed at bet time. The final payout depends on the total pool composition at market close.
If only one side has any stake when the market resolves, there is no counterparty liquidity: everyone gets their principal back and no protocol fee is taken (same on-chain path as when the winning outcome had zero stake).
The fee is never more than your gross payout, so you never owe the protocol on a win.
# Example: 100 USDC on ON TIME, pool is 60/40
total_pot = total_on_time + total_delayed
winning_total = total on the winning side
gross_payout = (your_bet / winning_total) × total_pot
protocol_fee = min(gross_micro, floor(gross_micro × fee_bps / 10_000) + flat_micro)
fee_bps and flat_micro come from the same platform settings as the admin dashboard and bet panel (GET /api/config). Gross is rounded to USDC micro-units before the fee, matching settlement math.
net_payout = gross_payout − protocol_fee
Current fee rule: Loading…
Loading example payout using live fee settings…
Platform Security & Transparency
SECURED- ✓Scheduled departure and arrival times come from two independent FIDS feeds cross-referenced by flight number and date, not from a single source or estimate.
- ✓Resolution uses the airport's actual runway touchdown time, not gate arrival or estimated times.
- ✓The 15-minute delay threshold matches the IATA international punctuality standard, applied consistently to every flight.
- ✓The actual arrival timestamp and delay are submitted on-chain to the Solana smart contract, creating a permanent verifiable record of every resolution.
- ✓The Solana smart contract independently enforces the 60-minute betting cutoff. The backend cannot override it.
Official Domains & Security
For your security and peace of mind, we operate strictly from these verified domains. To ensure a safe experience and protect your wallet, please only sign transactions on these official addresses.
- ✓Check the address bar before you connect a wallet or sign anything. The hostname must be one of:
flightmarket.app,flightmarket.bet(with or withoutwww.). Look-alikes include extra words, hyphens, or different endings (.net,.io, typos, or “flight-market” variants). - ✓Watch for look-alike letters (homoglyphs). Unicode can show letters that look like Latin a-z but are from another alphabet (for example Cyrillic). If anything looks slightly “off” in the hostname, do not proceed; type the address yourself or use a bookmark you created earlier.
- ✓Use HTTPS. Bookmarks should start with
https://. Do not trust links in unsolicited DMs, ads, or search results without verifying the hostname character by character. - ✓We will not ask for your seed phrase or private key on any web page. Admin login uses email + password only for staff; the public app never needs your wallet secret.
- ✓API hosts vs app hosts. Your wallet interacts with the website on the two official domains above. Backend APIs may live on separate subdomains (for example
api.*). That is normal. Do not trust a random site because it claims to “call the same API”; only trust pages whose address bar shows one of the official hostnames for the app you are using. - ✓API and mobile. If you use a third-party client, confirm it talks to infrastructure you trust and that any link back to the product resolves to one of the hostnames above, not a shortened URL hiding the real domain.
FAQ
Which flights get markets?
Only flights where boththe origin and destination are among the 55 monitored hub airports. These are the world's busiest airports, collectively handling the majority of international long-haul traffic. Regional or domestic flights to non-hub airports are not covered because the arrival data needed for resolution is only collected at our 55 monitored hubs.
Where does the flight data come from?
FlightMarket uses a certified aviation data feed that aggregates real-time schedule and movement data directly from airlines and airports. The scheduled departure and arrival times shown in every market come directly from the airline's published schedule, with no estimates or approximations. Actual arrival times used for resolution come from the airport's runway touchdown records.
How often are new markets created?
Every 4 hours the poller adds new flight rows to the database for departures 4–10 hours ahead. On-chain deployment for a given flight happens on the first real USDC bet, so you see full listings immediately without the protocol pre-paying rent for unused routes.
What happens to flights nobody bet on?
If no first bet is placed, no Solana market account is created. After the departure window passes with an empty pool, the listing is marked ended in the app. There is no flight outcome or claim flow for those rows — they were never live on-chain.
What counts as 'on time'?
A flight is ON TIME if it touches down within 15 minutes of its original published scheduled arrival time. This follows the IATA international standard for punctuality measurement.
What happens if a flight is cancelled?
Cancelled and diverted flights automatically resolve as DELAYED. They are treated as the maximum delay case for payout purposes.
Why 60 minutes before departure?
Gate departure information becomes available to airport staff roughly 60 minutes before pushback. Closing betting at this point prevents anyone from betting with information that is not yet publicly available online.
How are odds calculated?
FlightMarket uses a parimutuel model. Odds are not fixed at bet time. Your payout = (your stake ÷ total on your side) × total pool, minus the protocol fee. Odds shift as more bets arrive, similar to horse racing tote pools.
What is the protocol fee?
When you win, a fee is deducted from your gross payout before you claim. It combines a percentage of the gross amount with a small fixed USDC amount, capped so your net payout is never negative. The bet panel shows live net estimates.
Is the oracle trustworthy?
Resolution uses the same verified data source for every flight, with a fixed 15-minute threshold applied consistently. The actual arrival timestamp and delay in minutes are submitted on-chain to the Solana smart contract, creating a permanent verifiable record. All resolution logic is deterministic and auditable. On each resolved market page, open the settlement transaction on Solscan to inspect program logs and instructions yourself.
Which website is the real FlightMarket?
Only flightmarket.app and flightmarket.bet (with or without www.) are official. Check the address bar before connecting a wallet.