Formualizer Docs
Core Concepts

Spill Behavior

Learn how array-like results expand across cells and when spill conflicts occur.

Some formulas return multi-cell outputs. Formualizer treats these as spill ranges rooted at an anchor cell.

Core ideas

  • The anchor cell owns the formula and spill metadata.
  • Neighbor cells inside the spill range expose derived values.
  • Blocking content in the target range produces spill errors.

Short example

B2 = SEQUENCE(2, 3)
Spill target: B2:D3

If C2 already has a literal value, B2 evaluates to a spill-related error.

Practical guidance

  • Clear target ranges before writing dynamic array formulas.
  • Recompute spill bounds when inputs change shape.
  • Keep spill diagnostics explicit so users can fix conflicts quickly.

Conflict resolution

When a spill range overlaps existing content, the anchor cell receives a #SPILL! error instead of writing partial results. The engine does not overwrite or shift existing data. Clear the blocking cells or move the formula to resolve the conflict.

Resize and shrink behavior

If a formula's result array changes dimensions (e.g., FILTER returns fewer rows after an input change), the spill range shrinks. Previously occupied cells outside the new bounds are cleared automatically. When the result grows, the engine checks the expanded target for conflicts before writing.

On this page