Footprint cell

A footprint cell is one row of a footprint candle: a single price level, or a group of ticks, holding the volume traded at the bid and the volume traded at the ask during that bar. Everything else on a footprint chart, from delta to imbalances, is derived from the numbers in its cells.

Senzoukria · Glossary · Updated September 2026


Anatomy of a cell

Take a candle on a footprint chart and pick one price inside it. The cell at that price contains two counts. The left number, in the usual bid × ask layout, is the volume executed at the bid: market sells hitting resting bids. The right number is the volume executed at the ask: market buys lifting resting offers. Their difference, ask minus bid, is the delta of the level. Their sum is the volume of the level, and the number of prints that produced them is the trade count of the level.

What determines a cell's height

  • Cell size in ticks: one tick per row gives the finest picture; grouping several ticks merges rows and their volumes, which is common on instruments with a small tick relative to their daily range.
  • Minimum volume filter: cells below the threshold are hidden so that thin rows do not clutter the bar. The data is still there; only the display is filtered.
  • Tick size of the contract: cells are aligned on the instrument's price grid, so a wrong tick size misaligns every row.

Colouring and highlighting

A cell can be coloured by its delta sign, by its total volume relative to the bar, or by whether it qualifies as an imbalance against its diagonal neighbour. The imbalance colouring compares the ask of a cell with the bid of the cell one level below, and the bid of a cell with the ask one level above, against a ratio; a volume filter and a minimum difference keep tiny cells from qualifying. Cells with a zero on one side can be ignored or treated as an extreme ratio, and the choice changes what is highlighted.

In Senzoukria

Cell rendering is chosen with the Footprint type chip: Bid × Ask, Delta, Centered Delta, Volume, Trades and their combinations. The colours of cell types that have no buyer or seller side (volume, trades, plain numbers) are set under Footprint cell colours, while Bid/Ask and Delta types follow the bid and ask colours. Imbalance colouring of cells is configured in the Cell coloring (global) section of the Stacked Imbalances overlay: Rate (default 200%), Vol filter (default 30), Min diff (default 10) and Ignore zero. Those four settings tint cells across the whole footprint and remain active even when the Stacked Imbalances overlay itself is off; the overlay's own detection uses Ratio and Min levels separately. On the heatmap, the DOM ladder row can show the same bid × ask numbers inside the band when the row is tall enough to keep them readable.

Common mistakes

  • Reading the two numbers as bids and asks resting in the book; they are executed volumes, the book is on the DOM.
  • Comparing a cell's ask with the bid of the same row when the platform's convention is diagonal.
  • Hiding so many cells with the volume filter that absorption at a thin level becomes invisible.
  • Assuming that a missing cell means zero trades rather than missing data for that level.

This page in other languages

Frequently asked questions

Why is the ask on the right and the bid on the left?
It is the convention most footprint platforms share, written bid × ask. Sellers hit the bid, so their volume is on the left; buyers lift the ask, so theirs is on the right. Some platforms allow swapping the sides, which changes nothing in the data.
What happens to the cell when I group several ticks?
The rows inside the group are merged: their bid volumes add up, their ask volumes add up, and the delta is recomputed from the sums. Detail at the individual tick is lost in exchange for a bar that fits on screen. Imbalance detection then runs on the grouped rows.
Can a cell have a bid volume but no ask volume?
Yes, when every trade at that price during the bar executed at the bid. Such a cell has a delta equal to minus its volume. How it is treated in imbalance colouring depends on the Ignore zero setting, because a ratio against zero is undefined.

Keep reading