Kalshi Order Groups: Automatic Cancellation After a Rolling 15-Second Contract Limit

AM

Alex Mercer· Founder, Arbitrage Agent

Published 2026-11-04 · Last updated 2026-11-04

Key takeaway

What Kalshi's documentation says about order groups: a contracts limit over a rolling 15-second window, the Active and Triggered states, and why a group can protect a two-leg arbitrage.

If you quote several resting orders on Kalshi, a fast move can fill more contracts than you meant to hold. Kalshi's documentation describes order groups as a built-in safety valve. This article summarises it. It is not trading advice, and the details can change, so check the current documentation.

How a group works

You create a group with a contracts limit between 1 and 1,000,000, and the server returns the group ID. You then place orders with that group ID, and each order is tracked against the group. As orders execute, filled contracts accumulate within a rolling 15-second window. If the rolling total exceeds the limit, the group is triggered and all resting orders in it are cancelled.

The two states

In the Active state, orders can be placed and rolling volume is tracked against the limit. In the Triggered state, all resting orders are cancelled and new orders are rejected until the group is reset.

What triggers a group

Three things trigger a group: the rolling 15-second volume exceeds the limit; a manual Trigger action, which cancels all orders whether or not the limit was reached; or an Update that sets the limit below the current rolling volume. A Reset clears the triggered state and the volume counter. A Delete removes the group and cancels all resting orders in it.

Why it matters for two legs

A resting order on Kalshi is exactly the case where fills can pile up on one side before the other leg is placed. A group puts a ceiling on how many contracts can fill in a short window, which limits how much one-sided exposure builds up. It does not make the second leg fill, and it only counts fills inside the 15-second window, so it complements rather than replaces the checks in order types for two-leg arbitrage. Combine it with an understanding of the API rate limits and the behaviour of resting orders during pauses.

Where Arbitrage Agent fits

Arbitrage Agent matches markets across Kalshi and Polymarket, checks the resolution rules on both sides, and shows the result in a live feed with a step-by-step guide for both legs. You place the orders yourself, and the final check of the details is still yours. See the plans or start with the Starter plan.

Related articles

Key terms: Two-Leg Execution · Partial Fill