Cross-Object Formulas That Actually Perform Well

Cross-object formulas can be elegant—or they can become performance bottlenecks. The difference is in how you build them.

I’ve learned to keep them lean:

  • Limit how many relationships you traverse (e.g. Parent.Parent__r.Contact__r.Email)

  • Use text outputs instead of nested IF statements when possible

  • Avoid unnecessary references to formula fields within formula fields

If I need complex logic, I’ll often move it to a scheduled Flow or a denormalized text field populated via automation. That way, reports run fast and UI load time stays smooth.

Formulas are powerful—but like any power tool, they need restraint.