One of the key things to understand when trying to tune a Qlik app for performance is understanding the innerworkings. If you haven’t done so already, I very strongly suggest you read Henric’s blog Symbol Tables and Bit-Stuffed Pointers which goes into detail on how Qlik stores data.
After grasping that, it starts to makes sense why cardinality has such an impact on application size. So keep in mind, before trying to minimize data size, try and minimize the number of distinct values. It can play a huge role in cutting down size, without limiting functionality. Which is always a easier sell to your users.
*PS. Take some time and read through all of Henric’s blogs. He is one of the best Qlik blog writers out