Back to search
PatternGold tierArchitecture

Blueprint function vs custom event vs macro: when to use each

Updated 3mo ago1 look-ups
UE 5.3UE 5.4UE 5.5UE 5.6UE 5.7#function#event#macro#difference#when#use#blueprint

Reference

BLUEPRINT FUNCTION: - Has its own execution context, can have inputs/outputs/return value. - Cannot have Delay, Timeline, or latent nodes inside. - Best for: pure logic, calculations, data transformation. - Can be overridden in child BPs (if not pure).

CUSTOM EVENT: - Lives in event graph, can be called like a function. - CAN have Delay, Timeline, latent nodes. - Can be Replicated (Server/Client/Multicast). - No return value. Best for: triggered behavior, RPC calls.

MACRO: - Inlined at call site — like a code template. - CAN have multiple exec inputs AND outputs. - CAN contain latent nodes. - Best for: reusable flow patterns (e.g. 'IsValidAndCast' check-and-cast pattern).

PURE FUNCTION: checked 'Pure' — no exec pins, evaluated on demand. Best for getters.