GTT states on Kite: disabled, cancelled, and expired
A GTT (Good Till Triggered) order on Kite , Zerodha’s platform, moves through a defined set of states: active while it waits, triggered when its price condition is met, deleted when you remove it yourself, cancelled when the system removes it, expired when its validity lapses, and disabled when a corporate action switches it off. A GTT is auto-disabled on a bonus or stock split, and cancelled on a delisting, a suspension, or a corporate action such as an extraordinary dividend, a rights issue, or a consolidation.
The states matter because they are not interchangeable, and the cause behind each one tells you whether the GTT failed on your side or the system’s. A deleted GTT is your own action. A disabled or cancelled GTT is the system acting on a change to the underlying instrument, usually a corporate action that would otherwise fire the trigger at a price that no longer means what you intended. An expired GTT simply ran out its one-year clock. None of the system-driven states can be undone; a fresh GTT is the only route forward, and in most cases the meaningful trigger price has moved, so the fresh GTT should be set at a recalculated level rather than the old one.
This article defines each GTT state, sets out exactly why a GTT is auto-disabled (the bonus-and-split case and the trigger-too-close-to-LTP case), why a GTT is cancelled (delisting, suspension, series change, and the corporate-action list), and why a GTT expires (the one-year validity and derivative contract expiry), then covers how to recover from each.
Conflict-of-interest disclosure. This guide is published by the WebNotes Editorial Team for informational purposes and is written independently. WebNotes operates a Zerodha account-opening referral programme, disclosed on the pages that carry the referral link; this guide does not carry it and earns no referral commission from the procedure described here.
The GTT states and what each one means
A GTT in the Kite GTT list carries one state at a time. The states fall into three groups by who or what set them.
The states you and the normal lifecycle produce are active, triggered, and deleted. Active is the resting state: the GTT is stored on Zerodha’s servers and monitoring the last traded price during market hours, waiting for its condition. Triggered is the terminal success state: the condition was met and Zerodha placed the resulting limit order to the exchange. Once triggered, a GTT does not return to active; whether that limit order filled or rested unfilled is a separate question covered in why a GTT triggered but did not execute . Deleted is your own removal: you opened the GTT and deleted it, so it never fires.
The states the system produces are cancelled, expired, and disabled. Cancelled means the system removed the GTT, usually because the underlying instrument changed in a way that invalidates the order. Expired means the GTT’s validity ran out. Disabled means the GTT was switched off, typically after a corporate action, but left in your list as a record. The distinction between deleted (your action) and cancelled (the system’s action) is the one most worth keeping straight, because a GTT you did not touch showing as cancelled is a signal that something happened to the instrument, not to your order.
Why a GTT is auto-disabled
A GTT is auto-disabled in two situations, and both trace to a price reference becoming meaningless.
The first is a corporate action that changes the share count without changing what you own: a bonus issue or a stock split. Zerodha’s wording is that the GTT is disabled if the stock has a bonus or a stock split. The reason is mechanical. A 1:1 bonus or a 2-for-1 split roughly halves the quoted price overnight while doubling the shares. A sell GTT set at Rs 200 on a stock that splits to a Rs 100 quote would fire at Rs 200, which is now an unreachable level, or a buy GTT set at Rs 180 would fire instantly on the post-split Rs 100 quote, an entry you never intended. Rather than let the trigger fire against a price that no longer maps to your plan, the system disables the GTT. The corporate-action adjustment is not applied to the GTT trigger; the GTT is simply switched off and left for you to reset against the new price.
The second is a validation outcome on the trigger distance. A GTT is disabled if, after a validation check, the trigger is placed less than 0.25 per cent from the LTP. This is the same minimum-distance rule that blocks a GTT at creation: the trigger must sit at least 0.25 per cent from the last traded price for a stock above Rs 50, and at least 9 paise for a stock at or below Rs 50. Where a re-validation finds a live GTT now sitting inside that band, the GTT is disabled rather than allowed to fire on a near-instant condition. The creation-time form of this rule, and the related rejection path, are in why a buy GTT is rejected .
A disabled GTT cannot be re-enabled. Zerodha’s instruction is to place a fresh GTT order if your GTT has been disabled. After a bonus or split, recalculate the trigger against the new ex-action price before you set the fresh GTT, because the old number no longer points at the level you wanted.
Why a GTT is cancelled or rejected
A GTT is cancelled or rejected by the system when the underlying instrument changes status or undergoes a corporate action that would distort the trigger. The triggers for cancellation fall into two clusters.
The first cluster is a change to the instrument’s tradeable status: the shares are delisted or suspended, or there is a category or series change. A delisted or suspended scrip cannot trade, so a resting GTT on it has nothing to fire against and is removed. A series change, for example a stock moving between trade-to-trade and rolling settlement, alters the order rules the GTT’s limit order would face, so the GTT is cancelled rather than fired into an incompatible series. The trade-to-trade segment and its order constraints are their own topic; a GTT cannot ride a scrip across that boundary.
The second cluster is corporate actions that move the price for reasons unrelated to your view: an extraordinary dividend, meaning a dividend above 2 per cent of the price, a rights issue, a consolidation (reverse split), a spin-off, and a reduction in capital. Each of these drops or restructures the quoted price on the ex-date. An extraordinary dividend above the 2 per cent threshold creates an ex-dividend price fall large enough that a sell GTT could fire on the mechanical drop rather than on any real move; Zerodha cancels the GTT to prevent that. Ordinary small dividends below the threshold do not cancel a GTT, because the ex-date drop is too small to matter. A rights issue, a consolidation, a spin-off, or a capital reduction each restructure the share base in a way the GTT cannot adjust to, so the GTT is cancelled.
The common thread is that Zerodha does not re-price a GTT trigger for a corporate action. It removes the GTT and leaves the new level to you. A cancelled GTT, like a disabled one, has to be replaced with a fresh GTT set against the post-action price.
Why a GTT expires
A GTT expires when its validity runs out, and there are two distinct clocks.
For a stock GTT, the GTT is valid for one year from creation. If it fails to trigger within that year, it expires automatically. This is the GTT validity rule : a year is the maximum life, and an untriggered GTT lapses at the end of it. A long-term accumulation GTT set at a deep discount that the market never reaches will quietly expire after twelve months, which is why the validity has to be tracked. Zerodha sends notifications as the expiry approaches; the GTT notification flow covers what those alerts look like.
For a derivative GTT, the clock is the contract, not a year. If the derivative contract has expired, the contract is no longer valid, and the GTT on it expires with it. A GTT on a monthly option or futures contract cannot outlive that contract’s expiry date, so the effective validity of an F&O GTT is the shorter of one year and the contract’s own expiry. A GTT set on a near-month contract expires at that contract’s expiry regardless of how much of the one-year window remains.
An expired GTT, like a disabled or cancelled one, cannot be revived. The recovery is the same: place a fresh GTT, and for a derivative, set it on a current, non-expired contract.
How the states differ and how to recover
The recovery depends on which state you are looking at, and the table below maps each system-driven state to its cause and the action it needs.
| State | Set by | Typical cause | Can it be revived? | Action |
|---|---|---|---|---|
| Active | System | GTT waiting for its trigger | Not applicable | None; it is live |
| Triggered | System | Condition met, limit order placed | No | Check the order book for fill or rest |
| Deleted | You | You removed the GTT | No | Re-create if still wanted |
| Disabled | System | Bonus or split; trigger too close to LTP | No | Place a fresh GTT at the new price |
| Cancelled | System | Delisting, suspension, series change, corporate action | No | Place a fresh GTT once the scrip is tradeable |
| Expired | System | One-year validity lapsed, or contract expiry | No | Place a fresh GTT on a current contract |
The practical discipline is to read the GTT list periodically rather than assume a GTT set months ago is still active. A GTT that shows disabled or cancelled without your having touched it is telling you a corporate action or a status change happened to the underlying, and the old trigger price is almost certainly stale. Recalculate before you replace. For the rejection that happens at trigger rather than the cancellation that happens before it, see why a buy GTT is rejected ; for the broader set of GTT constraints, see GTT order limitations and rejection .
See also
- GTT (Good Till Triggered) order on Zerodha
- How to place a GTT order on Kite
- GTT validity rules on Kite
- Why a buy GTT is rejected
- Why a GTT triggered but did not execute
- GTT notification flow
- GTT order limitations and rejection
- How to fix an RMS rejection on Zerodha
- How to fix a price band rejection on Zerodha
- Circuit limits and price bands
- Trigger price versus limit price
- Limit order on Kite
- SL-M order on Kite
- CNC product code
- MIS product code
- Order validity types
- Iceberg order on Kite
- Kite by Zerodha
- Zerodha
- National Stock Exchange
- Bombay Stock Exchange
- SEBI
- Kite alerts
- How to add and customise alerts on Kite
External references
- Zerodha support: Why are GTTs disabled, cancelled, expired, or rejected?
- Zerodha support: How to use GTT orders on Zerodha Kite?
- Zerodha support: Why was my GTT order triggered but not executed?
- Zerodha GTT terms and conditions
- Zerodha Z-Connect: Introducing GTT, Good Till Triggered orders
References
- Zerodha support, Why are GTTs disabled, cancelled, expired, or rejected? (as of 21 June 2026): a GTT is disabled on a bonus or stock split or if placed less than 0.25 per cent from the LTP after validation; cancelled or rejected on delisting, suspension, a category or series change, or corporate actions including extraordinary dividends above 2 per cent, rights, consolidation, spin-off, and reduction in capital; a fresh GTT must be placed.
- Zerodha support, GTT validity: a stock GTT is valid for one year; a GTT on an expired derivative contract is no longer valid (as of 21 June 2026).
- Zerodha GTT terms and conditions, zerodha.com/tos/gtt: GTTs may be cancelled at Zerodha and RMS discretion on insufficient cash or holdings (as of 21 June 2026).
- SEBI and exchange corporate-action frameworks governing bonus, split, rights, consolidation, spin-off, and capital-reduction adjustments.
- NSE and BSE circulars on series and category changes (trade-to-trade and surveillance reclassification).