From the documentation https://kite.trade/docs/connect/v3/websocket/#quote-packet-structure, the LTT (Last Traded Timestamp) & ExchangeTimestamp that we receive is int32 (4 bytes) and cannot accommodate epoch in millisecond granularity. Once we receive multiple ticks for the same second, it becomes difficult to identify which tick got executed first (not able to determine order in the payload, i.e., is in sequence or jumbled). It becomes easy if we get the same in millisecond granularity.