I suppose some of that decision depends on the type of automation you'd like to use. If you want to be able to access the system remotely, through an app, your network, or the web; I would go with GHL. They've been around for at least a decade, plenty of time to optimize and debug their products. By comparison, the Apex system has only been out for a few years. I'm not very familiar with Coralvue's offering but that seems like a fairly new product too.
You don't want to be beta testing the life support unit of your tank is not ideal. Nor do you want to buy a product that may be abandoned. As a former Digital Aquatics (DA) controller owner, having orphaned products sucks.
If you want a non-networked controller with fewer advanced capabilities. buy a used Apex (the older black version) but get new power bars. That's ultimelty what I did when I replaced my DA controller. I considered getting a Profilux, but its capabilities far exceeded my needs. The older Apex's are very reliable; though programming them is a little convoluted. That's also the most economical option.
I specifically did not want to have my system networked but that's certainly possible with an older Apex controller. Getting it to work requires a fair bit of tech savy.
Given the vagaries of network connections and poorly written software, being able to physically interact with the controller is essential.