Personally I user containers near sources to save energy while carriers move that energy where it needs to go. This doesn't save a lot of energy, but some. And it's enough to be important. I also usually have a container very near to the spawn and when I decommission creeps, they go there to die (to reuse their energy) Storage on the other hand, I usually stick by the controller and it serves 4 jobs. 1. When I have no place to put energy it goes there. Creating a buffer that can be used to spawn larger creeps, or a large number of creeps. 2. When I ave amassed more then 10,000 energy I spawn a "mass-upgrader" that basically dumps all the energy in to the controller. This helps creat a burst of GCL/RCL which I prefer. It lets me normally only apply say 5/tick to RCL but make a huge burst. It help me keep my econ stable. Although this is taste, a room can only put out 20/tick So I like to dedicate parts of that as a baseline for normal stuff. 2/tick for upgrading walls, 2/tick for repairs, 8/tick for new spawns etc etc (these numbers are fake) The extra goes to the   buffer and creates the RCL/GCL bursts. I can also supress a burst if I think I will need the energy for defending or attacking. 3. Storing minerals till I get all the right parts.  I feel it's better to store unused minerals and then sell them, then it is to directly try and sell them.  4. Storing partial mineral chains. Like #3  I prefer to store, and have a buffer then to just sell. For example lets Say I made a bunch of UO. I may not need it. I only have two miner creeps. So instead I store it, sell some of the access. That way should something happen to the U or the O parts I still have some left over.