What to combine or separate is basically all about flexibility and convenance for me.
Objects can have different local orientations, modifier values, pivot points, animations, etc. If it’s helpful for any of those to be different, or if it’s just easier to select and edit the mesh without the other parts getting in the way, then I’ll keep things separate. If the objects can all share those properties, then it may be faster to join them so I can update them (like changing a bevel width) all at once.
Beyond that, unless there are specific needs for rigging or exporting, it really doesn’t matter beyond just keeping things organized in a way that makes sense to you. Hope that helps!