In Unreal, Custom Events are useful to contain a piece of the network, with all the bunch of nodes and connections that otherwise would fill the Event Graph space.
They’re not functions, nor macros. They’re special.
Think of them as the "junk drawer": if you don't have enough space to place that 50-node sequence, just wrap it in a Custom Event, name it "DoTheMagic", and tell yourself you’re "refactoring." It’s not a mess if it’s tucked away in a corner, right?