EXPLAIN naming an index does not mean all of it was used, and the column that says how much is the one nobody reads.
CREATE INDEX idx ON orders (status, customer_id, placed_at);
EXPLAIN SELECT * FROM orders
WHERE status = 'paid' AND placed_at > '2020-01-01';
-- key: idx key_len: 62 ← one column
EXPLAIN SELECT * FROM orders
WHERE status = 'paid' AND customer_id = 12;
-- key: idx key_len: 70 ← two
The number is bytes, so working out which columns it covers means adding up their storage sizes — tedious, and it settles the argument about whether an index is actually helping. A range condition stops the index being usable for anything after it, which is why the first query only uses the leading column despite naming two. Ordering a composite index with equalities first and the range last is what follows from that.