The units with strange or unique abilities/roles like super-artillery or cloaking fields or missile defence are fine. But the generic megabot that's just big and tough and covered in guns is problematic. Lovely idea. Giant stompy robot crushing lesser vehicles under foot. Spectacular. The questions is what function do they serve that an equivalent amount of regular units doesn't? Why build them?
The thor in Starcraft 2 is a lovely example of this problem. A large, impressive super-heavy mech. Like most megabots its primary function is looking impressive. The thor was big, tough and dealt high damage to ground and air targets. But they didn't do much that a bunch of marines couldn't do just as well.
In Supreme Commander 1&2, gameplay niche matters much less. But in general, the megabot units are a more concentrated way to deploy your resources. The megabots are so big and so powerful that an equivalent army of basic units can't be concentrated in a small enough area to be effective.
In the vanilla RTS paradigm units don't perform worse when damaged, so a megabot at 50% health is much stronger than an army with 50% of its units gone. And conversely, you can attack or defend with half an army of tanks, while a megabot that's only 50% constructed is worthless. (Supcom2's "launch half-baked" option excepted). But these differences aren't exactly tactically rich.
So I was thinking about this and I had a weird idea. What if megabots were cheaper than an equivalent army of tanks? Costing maybe half as much as the amount of tanks it would take to kill them.
But taking much longer to build. Really long. That way the megabot's strategic importance isn't what it can do in combat, it's what it requires economically. It requires a different resource to regular units - time rather than money.
So a megabot is an investment, or maybe a gamble. You're accepting a loss of resources with the promise of a massive payoff if you can survive. If other players can scout the in-progress megabot, then it becomes a strategic objective with a tim-limit.