xx= rand(500,500); h=whos('xx');
h.bytes is what you want then. This is an estimate, as there might be some compressions in place during the usage of the variable. Note that, as different variable may have different types (int, double, ...), whos is a good option as it considers the real size and not sensitive to the type. For example, xx=int8(randi(100,500));h=whos('xx');h.bytes gives you 250,000 while the previous example gives you 2,000,000. So you dont need to know how many bytes are considered for each type in Matlab.