That’s a great workaround for very simple use cases. However, there are more complex use cases where we would need to use a CTA instead of an image. For example, if you’re using SMART rules in a CTA and want to track clicks, your solution doesn’t work.
Our client has multiple websites based on geolocale and we need to link to different service pages. In our case, we have a personalization token that’s a base URL. The SMART CTAs are set up to assign the page path to different services pages. If we could set this up one time by using a personalization token in our SMART CTAs, it would cut down hours of work. Instead, we are using the manual workaround you’ve proposed and create SMART modules for every button in every email we send.