How is infinifactory's footprint calculated?

Assuming a z-up co-ordinate system, the footprint is increased by 1 when a block enters the z-column of an x-y co-ordinate for the first time. Any z-column in which you placed a factory component while editing your solution will be included in the footprint when you start it running, and the footprint will increase when blocks move into never occupied columns.

Removing conveyor belts and pushing parts along the ground will reduce the block count, but that solution metric didn't exist until the most recent update; it won't reduce the footprint.

These rules can work in your favour. For example you can use one conveyor belt above another to transport two streams of blocks with half the footprint of transporting them side by side. Also in puzzles where the initial direction of an input is away from the output in either the x or the y dimension, you can save a few footprint points with the technique of doubling back either above or below the fixed input conveyor.

Or they can work against you. When your input rate is too fast for your factory to handle, spillage at a conveyor belt corner will be included in the footprint.