Public vs moomoo vs tastytrade: Kalshi's contracts inside a stock brokerage

Three brokerages in front of one KalshiEX book, all on flat cents. What separates them is the market list, the account, the API, and a promotion.

One book, three brokerages, and the reason to read this page at all

Nobody opens a brokerage account to trade event contracts. The reader this page is for already holds an account at one of these three, or is choosing between two, and wants to know whether the Kalshi contracts inside it are worth using or whether to open an account at Kalshi itself. The second question has its own page: Kalshi direct or through a broker covers the account, the identity check and the fee layer a futures commission merchant adds, and none of it is repeated here. This page is the three brokerages against each other.

The contract is not what differs. On all three cards resolution_source reads "None of its own":

  • Public is two FCMs deep. Open to the Public Investing, Inc. takes the order, Apex Clearing Corporation routes it to KalshiEX and clears it through Kalshi Klear.
  • moomoo names one. Moomoo Financial Inc., the same company that holds moomoo customers' securities, is the FCM in front of Kalshi.
  • tastytrade runs on the same Apex route as Public: tastytrade, Inc. is the broker and Apex Clearing the FCM. Its prediction markets page does not name the exchange; its enablement guide does, with a button labelled "Enable Kalshi Event Contracts".

A dispute about an outcome ends at Kalshi's markets team on every one of these routes. What the three brokerages decide is the price of the door, which part of Kalshi's catalogue is behind it, which account it hangs on, and whether a program can open it.

All three cards were read on 23 October 2026. The documents behind them are older: tastytrade's fee schedule is dated 30 July 2026, moomoo's 1 October and Public's 13 October. The Kalshi card's fees were read on 20 September from a schedule dated 7 July 2026.

The fee: three flat cents and a curve

The catalogue's fee fields hold the effective fee at fifty cents, as a percent of the $1 payout. On these three cards:

  • Public: 2 taker, 2 maker. A transaction fee of a cent a contract to Public Investing, plus a cent its schedule calls an exchange fee "set by KalshiEx LLC". Public blocks buy orders at 99 cents, because with the fee they would cost $1.01.
  • moomoo: 1 and 1, for now. No commission "during introductory period" and a cent of exchange fee per side. The period has no end date and ends on "prior notice"; after it, the commission is a cent per side and both fields become 2. The fee is charged on whole contracts, so a fractional quantity such as moomoo's own 0.07-contract example pays the full cent, and a combo pays as one contract however many legs it has.
  • tastytrade: 2 and 2. No commission, then a clearing fee of a cent and "regulatory and exchange fees" of a cent.

Public and tastytrade charge the same two cents on the same Apex route, and label the first cent differently. At Public it is a transaction fee charged by Public Investing as FCM; at tastytrade it is a clearing fee. The second cent is an exchange fee on Public's schedule and "regulatory and exchange fees" on tastytrade's. A reader comparing line items will find two different fee names and one total.

All three are flat, at every price, on both sides of the book, and each trade pays. Held to settlement, a contract pays the fee once; sold before, it pays again. That has two consequences the cards state separately and nowhere together:

  • The fee is heaviest on cheap contracts. On a 10-cent contract two cents is a fifth of the price on Public and tastytrade, and a tenth on moomoo today.
  • A resting order pays the same as one that takes. None of the three publishes a maker rate.

Against Kalshi direct, whose taker fee is 0.07 × price × (1 − price) a contract rounded up to a hundredth of a cent for an account opened at Kalshi, and whose card records no maker fee on most series:

  • Two cents is never below Kalshi's taker fee. Kalshi peaks at 1.75 cents at 50 cents, so Public and tastytrade cost a quarter of a cent more there and more away from it — at 10 cents Kalshi charges 0.63 cents.
  • moomoo's one cent undercuts a Kalshi taker between about 18 and 82 cents, the band where Kalshi's curve is above a cent, by up to three quarters of a cent at 50. Outside that band Kalshi's curve is the cheaper one at any size: Kalshi's schedule prints a worked table rounded to the whole cent, but its API documentation's "Fee Rounding" page says that precision is for members who come through a broker, and keeps a direct member's balance to $0.0001.
  • For a resting order Kalshi direct is cheapest everywhere: nothing on most series, against one cent on moomoo and two on the others.

Every broker in this category that prints a Kalshi exchange fee at all prints it as a cent. Webull, Robinhood's Kalshi route and Phantom's US route do the same on their own cards; PrizePicks quotes no exchange-fee line, Underdog's Kalshi route passes one through without a figure, and Coinbase publishes no schedule. Kalshi's schedule as read publishes a curve for its direct customers, and its one sentence on the subject is that customers coming through an FCM may be charged different fees by that FCM. None of these documents says how the flat cent relates to the curve, so the cards record what each broker says its customer pays, and this page does the same. The fee calculator prices Kalshi's curve at your own price and size.

Which part of Kalshi each one carries

This is the largest difference between the three, and it is not about cost.

  • moomoo carries the widest list: the categories Kalshi lists, sports and politics included, with an asterisk on those two — "Election and sports contracts are only available for trading in eligible US states" — and no list of the states.
  • Public carries politics and no sports, by policy: its help centre says it focuses on events that can move financial markets. Elections, economics, companies, crypto, commodities, science, health and transport, among others.
  • tastytrade carries neither sports nor politics nor culture. Commodities, crypto, US and international economic releases, central-bank decisions, and index closes, Treasury yields, the VIX and the dollar index.

So the market decides before the fee does. A sports contract is on moomoo alone of the three, and only in a state moomoo does not name. An election contract is on Public, or on moomoo where moomoo allows it. A CPI print or a Fed decision is on all three. Whatever Kalshi itself cannot offer in a state, no broker in front of it can route there, and none of the three publishes a state list of its own; the app is where the refusal appears.

The account each one hangs it on

All three sell the product only to an existing brokerage customer, and each attaches it to an account of a particular kind:

  • moomoo requires a margin account. Its help centre says cash accounts do not support event contracts, so a cash-account customer opens a margin account and moves money across.
  • tastytrade takes an individual margin or individual cash account, after a trading-objective question, an industry-affiliation disclosure and an agreement. IRAs are excluded.
  • Public takes a standard Public account after an onboarding flow of experience questions, a profile review and the terms, and may ask for identity documents again when it is enabled.

Public's and tastytrade's disclosures say event contract accounts are not SIPC-protected. The moomoo card records nothing either way for event contracts. Only Public's card records a promised year-end form, a Form 1099-MISC for event contract transactions; the other two cards found no page that promises one. Who sends you a tax form covers what the other routes in the category send.

Orders, screens and code

  • Order types. moomoo takes limit orders only, with day, good-til-cancelled (90 days), good-til-date and immediate-or-cancel. Public takes limit and market orders and may restrict a thin contract to limits. tastytrade takes market, dollar-amount and limit orders.
  • Screens. tastytrade trades event contracts on the web platform and in its apps; its desktop platform hands them off to the web. Public's and moomoo's cards describe trading in the mobile app, and neither card claims trading on the web.
  • Code. Public is the one with the most: the Public API with an event-contracts section, a Python SDK, a hosted MCP server and AI agents that turn a plain-English rule into a workflow you approve before it runs. moomoo's OpenAPI lists live event-contract trading for Moomoo US accounts through its OpenD gateway, with SDKs in Python and four other languages, and no paper trading. tastytrade has none for event contracts, although it has an API and an MCP server for the rest of the brokerage.

Which to use, and when to switch

Use the brokerage you already hold, unless the contract you want is not in it. The book, the rules and the resolution are the same behind all three, and the fee gap between them is at most a cent. Opening a second brokerage account to save that cent costs more effort than it saves, and opening one only for event contracts is the case for Kalshi direct rather than for any of these.

Within that:

  • moomoo, while its commission is zero, if you hold a margin account there. It is the cheapest door on this page and, between about 18 and 82 cents, cheaper than a taker order on Kalshi itself. It is also the only one of the three with sports.
  • Public if you trade politics or want to reach contracts from code or an assistant, and accept a flat two cents that is a fifth of the price of a 10-cent contract.
  • tastytrade if you already hold the account, trade only macro, index and commodity outcomes, and want them on the web platform. It has the narrowest list and no API for these contracts.

Switch the moment moomoo's introductory period ends, because all three then cost two cents and the choice is only the market list and the API: Public for politics and code, tastytrade for macro on the web, moomoo for sports. And switch to Kalshi direct, on any of the three, the moment you want an order to rest, trade near the ends of the price range, or want a market your brokerage does not carry: on each of those Kalshi's own account is cheaper or the only door.

FAQ

Is a contract bought through Public, moomoo or tastytrade the same contract as one bought on Kalshi?

Yes. All three send the order to KalshiEX and the position clears at Kalshi Klear, so the rules, the settlement source and the resolution are Kalshi's on every route. None of the three resolves anything itself, and Public's risk disclosure and the Apex disclosure tastytrade links both say a position cannot be moved to another exchange.

Which of the three is cheapest?

moomoo, for now. Its schedule of 1 October 2026 charges no commission during an introductory period with no end date, so a contract costs the one-cent exchange fee each way. Public and tastytrade both charge two cents a contract each way. When moomoo's introductory period ends its commission becomes a cent per side and all three cost the same two cents.

Which of them lists sports or election contracts?

Only moomoo lists sports, and its sports and election contracts are offered only in eligible US states that it does not name. Public lists elections and politics and no sports, by policy. tastytrade lists neither, only commodities, crypto, economic releases, central-bank decisions and financial indicators.

Can I trade these contracts from code?

On two of the three. Public's API, Python SDK and hosted MCP server reach event contracts, and so do its AI agents, which run only after you approve them. moomoo's OpenAPI lists live event-contract trading for Moomoo US accounts, through its OpenD gateway. tastytrade has an API for its brokerage, but its developer documentation had no event-contract endpoints on 23 October 2026.

Why do all three print Kalshi's exchange fee as a flat cent when Kalshi publishes a curve?

None of them says. Public's schedule calls its cent an exchange fee set by KalshiEx, moomoo's passes a cent per side through, and tastytrade's cent covers regulatory and exchange fees together. Kalshi's own schedule, dated 7 July 2026, charges its direct customers a taker curve that peaks at 1.75 cents and adds that customers coming through an FCM may be charged different fees by that FCM. The catalogue records what each broker says its customer pays.

Report an error on this page

Quote the line and say what it should be.

The vendor’s page, filing or documentation that says otherwise.

Only if you want to hear back. Never published.

Read by a person. It fixes a fact and moves nothing else.

Anything else — a question this page leaves open, a tool it should be compared with? Write to feedback@predictionmarkets.tools.