Flat vs percentage brokerage

Updated 16 August 2026 · 10 min read · Written and reviewed by the DematOpen team

The plain answer

Discount brokers publish brokerage as a formula: the lower of a flat fee and a percentage of the order value. At Upstox, delivery costs ₹20 or 0.1% per order, whichever is lower. The percentage applies to small orders, the flat cap to large ones, and the structure guarantees you never pay more than the cap, however big the order.

The formula exists because the two pricing methods each fail on one side. A pure percentage overcharges large orders, where the processing cost is the same as a small one. A pure flat fee overcharges tiny orders, where a percentage would be trivial. Comparing the two per order and charging the smaller solves both at once, and it is the standard design across discount brokers, with small variations in the numbers.

The whichever-is-lower rule

The rule is computed per order, not per day or per holding. For each executed order the broker calculates the percentage of the order value and compares it with the flat cap, then charges the smaller. The crossover order size, where 0.1% of the value equals ₹20, is ₹20,000: below it the percentage wins, above it the cap wins.

Each segment has its own crossover. Intraday at 0.05% against the same ₹20 cap crosses at ₹40,000. Futures at 0.05% cross at ₹40,000 too. The number to remember is that pair: ₹20,000 for delivery and ₹40,000 for intraday and futures at Upstox. Below the crossover, the order pays the percentage; above it, every order pays the same ₹20.

Three details keep the rule honest. Two sell orders of the same share still pay brokerage per order, even though the DP charge consolidates per scrip per day. The comparison uses the order's own value, so a ₹10,000 order split into two ₹5,000 orders pays twice. And the rule applies before GST, which adds 18% on whatever brokerage is charged.

The arithmetic of the crossover

The crossover is a division, not a brochure number: it is the order value at which the percentage equals the cap. Cap divided by rate gives it directly. With a ₹20 cap and a 0.1% delivery rate, ₹20 divided by 0.001 is ₹20,000. With a 0.05% intraday rate, ₹20 divided by 0.0005 is ₹40,000. With Zerodha's 0.03% intraday rate, the same division lands at about ₹66,667, which is why Zerodha's intraday percentage applies to orders that Upstox would already cap.

The formula generalises to any broker and any segment. Take the cap, divide by the published rate, and you have the crossover without looking at a table. Below that number the percentage applies and scales with the order; above it, the cap applies and the fee stops growing. One division replaces every rate-card memory.

The crossover table

Order valueDelivery 0.1%Delivery chargedIntraday 0.05%Intraday charged
₹2,500₹2.50₹2.50₹1.25₹1.25
₹5,000₹5₹5₹2.50₹2.50
₹10,000₹10₹10₹5₹5
₹20,000₹20₹20 (tie at the cap)₹10₹10
₹40,000₹40₹20₹20₹20 (tie at the cap)
₹1,00,000₹100₹20₹50₹20
₹5,00,000₹500₹20₹250₹20

The tie rows behave exactly like the cap rows. At ₹20,000 delivery, the percentage equals ₹20, the broker charges ₹20, and nothing distinguishes the tie from any larger order. Ties are a curiosity of round numbers, not a separate pricing tier.

The crossover for every segment

The crossover table above uses Upstox's delivery and intraday rates. The same division can be run for every segment and broker, and the results make a small map worth keeping:

Segment and brokerRateCapCrossover order size
Upstox delivery0.1%₹20₹20,000
Upstox intraday0.05%₹20₹40,000
Upstox futures0.05%₹20₹40,000
Zerodha intraday and futures0.03%₹20About ₹66,667
Groww intraday0.1%₹20₹20,000
Options at Upstox and ZerodhaFlat only₹20None, always flat

The map collapses the whole rate card into one question per segment: is my order above or below that number? Above it, the fee is ₹20; below it, the fee is the percentage. Options never ask the question at all, because they carry no percentage to compare.

At the margins

The rule's behaviour changes within a few hundred rupees around each crossover, and the exact boundary is worth seeing in numbers. Around the ₹20,000 delivery crossover:

Order value0.1% of valueBrokerage charged
₹19,500₹19.50₹19.50
₹20,000₹20₹20
₹20,500₹20.50₹20 (the cap takes over)

The same kink sits at ₹40,000 on intraday: ₹39,000 pays ₹19.50, ₹40,000 pays ₹20, and ₹41,000 still pays ₹20. The percentage only governs the left side of each crossover; the right side is flat forever. Orders rarely land exactly on the boundary, but the band around it is where a few rupees of order value changes the answer, which is exactly why the rule is computed per order rather than estimated.

Across brokers

Every discount broker runs the same structure with slightly different numbers. The table below shows the published schedules as of 16 August 2026:

BrokerEquity deliveryEquity intradayFutures / optionsMinimum
Upstox₹20 or 0.1%, lower₹20 or 0.05%, lowerFutures ₹20 or 0.05%; options flat ₹20None published
Zerodha₹0₹20 or 0.03%, lowerFutures ₹20 or 0.03%; options flat ₹20None published
Groww₹20 or 0.1%, lower₹20 or 0.1%, lower₹20 or 0.05%, lower₹5
Angel One₹20 or 0.1%, lower₹20 or 0.1%, lowerFlat ₹20 per executed order₹5
ICICI DirectScheme-based, plans from 0.07%₹20 on the NEO plan₹0 futures, ₹20 options and intraday on NEOPlan-based

Two rows stand out. Zerodha charges ₹0 brokerage on equity delivery, which removes the lower-of comparison entirely for long-term investors. And Groww's UPI-mandate funded orders carry 1% brokerage with no cap, a published exception that makes bank-transferred funds the cheaper route there.

Minimums and caps

A minimum brokerage is a floor below which the charged amount cannot fall: Groww charges the lower of ₹20 or 0.1% with a ₹5 minimum, so a ₹3,000 order pays ₹5 rather than ₹3. A cap is a ceiling: the flat ₹20. Minimums matter to small orders; caps matter to large ones. A broker with no minimum (Upstox, Zerodha) lets the percentage run below any floor on tiny orders; a broker with a minimum protects its processing cost.

The floor and the ceiling are two different promises, and it is worth reading a rate card with both in mind. "₹20 or 0.1%, whichever is lower, minimum ₹5" guarantees the fee stays inside the ₹5 to ₹20 band for every order size. "₹20 or 0.1%, whichever is lower" with no minimum means a ₹500 order pays 50 paise. Both are published plainly, and the contract note shows which applied.

Order value0.1% of valueGroww (minimum ₹5)Upstox (no minimum)
₹100₹0.10₹5 (floor applies)₹0.10
₹2,000₹2₹5 (floor applies)₹2
₹5,000₹5₹5 (floor equals rate)₹5
₹20,000₹20₹20 (tie at the cap)₹20
₹1,00,000₹100₹20 (cap applies)₹20

The table shows where the floor actually bites: only on orders under ₹5,000. Above that, the two brokers' delivery pricing is identical on every order size, because the same percentage and the same cap produce the same lower-of result.

Worked orders

Order one: you buy ₹15,000 of a share for delivery at Upstox. 0.1% is ₹15, below the ₹20 cap, so brokerage is ₹15. Order two: you buy ₹1,50,000 of the same share. 0.1% is ₹150, above the cap, so brokerage is ₹20. The second order is ten times larger and costs only ₹5 more, which is the entire argument of the whichever-is-lower design.

Order three: an intraday buy-sell of ₹30,000 at Upstox pays 0.05%, ₹15, below the cap. The same intraday trade at Groww, where the rate is 0.1%, computes ₹30 against the ₹20 cap and pays ₹20. Same trade, different rate table, and the difference is visible in the crossover numbers of each broker.

Two order sizes, full cost

Brokerage never travels alone, and the statutory lines change the picture as orders grow. Here are complete charge breakdowns for two delivery buys at Upstox:

Charge line₹15,000 buy₹1,50,000 buy
Brokerage₹15 (0.1%, under the cap)₹20 (cap applies)
STT₹15₹150
Stamp duty₹2.25₹22.50
Exchange transaction charges₹0.45₹4.46
SEBI fees₹0.02₹0.15
GST₹2.78₹4.43
TotalAbout ₹35.50About ₹201.50

The arithmetic of the table is the point of the whole page. On the small order, brokerage is ₹15 of ₹35.50, about 42% of everything paid. On the large order, brokerage is ₹20 of ₹201.50, about 10%. As order size grows, brokerage flattens while the statutory lines scale, and the broker's fee becomes the smallest part of the bill.

The same division works in the other direction for intraday, where every trade carries both legs and the statutory lines land twice. The principle is constant across segments: brokerage is capped, the statutory lines are not, and the mix between them depends on order size alone.

Where caps are absent

Not every schedule caps, and the exceptions are published just as plainly as the caps. Full-service plans are often percentage-only: ICICI Direct's prepaid plans start at 0.07%, which on a ₹1,00,000 delivery order is ₹70, against ₹20 on a capped discount schedule. That gap is the entire value of the cap, stated in rupees.

Discount brokers publish their own exceptions. Groww's UPI-mandate funded orders carry 1% brokerage with no cap, so a ₹1,00,000 order funded that way costs ₹1,000 in brokerage against ₹20 when funded by bank transfer. And Zerodha prices equity delivery at ₹0, which removes the lower-of question from that segment entirely, while the statutory lines remain unchanged.

The lesson is not about any one broker; it is about reading the full rate card. The whichever-is-lower rule describes the standard structure, and every broker publishes its deviations next to it, segment by segment and funding route by funding route. The crossover map on this page applies where the cap exists; where it does not, the published exception governs.

Brokerage for long-term investors

For someone who buys to hold, brokerage is the most predictable cost on the account. Six delivery buys of ₹20,000 each at Upstox cost 6 × ₹20, ₹120 a year; the same six buys at Zerodha cost nothing on delivery. The difference is small in rupees and easy to state exactly, which is the point: the whichever-is-lower structure makes long-term brokerage a known quantity before the year starts.

Sells add the same ₹20 per order plus the DP charge, so a year of six buys and three sells at Upstox runs to 9 × ₹20 of brokerage, ₹180, with three DP charges on top. No percentage surprises, no size dependence above ₹20,000, no hidden tier. The structure is why a long-term investor can compute a year's brokerage in a single sentence.

How to verify what you were charged

The lower-of rule is fully checkable by hand, and the contract note gives you everything the check needs:

  • Find the brokerage line on the contract note, with its rate column and computed amount.
  • Multiply the order value by the rate for your segment and compare it with the flat cap. The smaller of the two should equal the charged amount.
  • Check the GST on the brokerage line: 18% of the charged brokerage.
  • Compare with the order window estimate you saw before confirming, which uses the same arithmetic.
  • Raise a mismatch with broker support if the line does not match. The note is the evidence, and the rule is published, so the dispute is arithmetic, not opinion.

Statutory lines on the same note are checked the same way, each against its own published rate. The full set of those rates, including STT and stamp duty, lives on the STT page and the charges pages.

Why brokers price this way

Every executed order costs a broker roughly the same to process: exchange connectivity, risk checks, clearing and settlement run per order, not per rupee. A percentage recovers that cost on small orders, where the rupee amounts would otherwise be fractions. The cap stops the same work from being billed at ₹500 on a large order. The whichever-is-lower rule simply charges the fairer of the two without asking the investor to choose.

Where the value base misleads, the percentage disappears entirely. Options trade on their premium, a small number relative to the position, so a percentage would underprice the processing; hence flat ₹20 per options order at Upstox and Zerodha. And the contrast with full-service pricing is the ceiling: a percentage schedule without a cap keeps growing with the order, which is what the flat cap was designed to end.

The minimum plays the mirror role at the other end. Where a cap protects the investor from overpaying on size, a minimum protects the broker from losing money on tiny orders. The two together are the full design: a floor, a ceiling and a sliding percentage in between, with the investor paying the most favourable point on that line on every order.

The investor-level effect is a predictable ceiling. Anyone who knows the segment's crossover knows the maximum brokerage of any single order before placing it, and a year's maximum is simply the number of orders times the cap. Predictability, not just low prices, is what the design delivers, and it is the reason the contract note's brokerage line can always be checked against the published rule.

What people usually get wrong

I pay both the flat fee and the percentage

The rule charges one, the lower. The formula exists precisely to prevent both.

The ₹20 cap covers all charges

Brokerage is one line. GST, STT, stamp duty, exchange charges, SEBI fees and the DP charge are separate lines set by regulation.

Percentage brokerage is always cheaper

Below the crossover it is; above it the cap wins. The crossover size is the only number you need to remember.

Brokerage is the biggest charge on a trade

On delivery orders above ₹20,000, STT at 0.1% of value exceeds the ₹20 brokerage, and on large orders it dwarfs it.

The cap applies to the whole day's trading

It applies per order. Ten executed orders mean ten brokerage computations, each with its own lower-of comparison.

Questions people ask

It depends on order size, which is exactly why the whichever-is-lower structure exists. The percentage wins on small orders, the flat cap wins on large ones. The crossover is where the two are equal, and the table on this page shows it for the standard rates. You never need to decide: the rule charges the lower automatically.

No. Brokerage is the broker's fee only. GST, STT, stamp duty, exchange charges, SEBI fees and the DP charge all apply on top, identically at every broker. The cap of ₹20 never becomes a cap on the total cost of an order.

The minimum protects the broker's economics on tiny orders: computing and settling a ₹500 trade costs nearly the same as a ₹50,000 one. Groww's minimum is ₹5; Upstox and Zerodha publish no minimum, only the cap. On very small orders the minimum decides the amount, not the percentage.

The contract note prints the brokerage line with the computed amount and its rate, so the lower-of rule is verifiable on every note. The order window also shows the estimated charges before you confirm, so the rate is never a surprise after the fact.

Usually not. At Upstox options orders carry a flat ₹20 per order, and Zerodha prices options the same way. The traded value of an option is its premium, which is small, so a percentage of it would underprice the processing. Flat pricing is the standard design for options.

Scheme-based percentage plans, often without a cap. ICICI Direct publishes prepaid brokerage plans starting at 0.07%. The difference that matters is the ceiling: a percentage with no cap keeps growing with the order, while the whichever-is-lower rule stops at the flat fee.

Where to go next

Sources