Holy crap, $500 ?!?!
since obviously the Arduino doesn't have enough horsepower to store, let alone deal with the data its collecting.
I'm thinking once a second, maybe more... If its just collecting data and sending it to an API, it probably needs to buffer up (average) a minute worth, maybe more, and send it to the API only that often. By "API", I'm thinking Google Power Meter, or a PHP/MySQL application hosted elsewhere.
If you have to have a computer store it locally 24/7 - it's just going to burn up more energy, defeating the purpose of the project.