This largely depends on what you want to use your kernel for. For example, compiling a feature as a built-in will make sure that it will immediately load once the kernel is loaded into memory. However, doing it this way will increase the overall size of the final kernel.
Meanwhile, compiling a feature as a module will remove it from the base kernel. Instead, this module then loads once the kernel is already in memory. This reduces the file size of the final kernel which, in turn, makes it fast and secure.
Knowing that, it is good practice to compile kernel features as a built-in as it reduces the chances of any issues with compatibility in your system. However, you should also be wary on including too much features as doing it will significantly increase your kernel's overall size.