The eGauge stores all data locally on the device itself, meaning it does not need to be connected to the internet and the proxy server for functionality. Because of this, data is only transferred when someone visits the device interface, or if data sharing is enabled to push data to a third-party server.


In most cases, any high-speed internet internet such as DSL, satellite, or cable are sufficient for networking multiple eGauge devices without any detriment on the rest of network traffic. Concerns may be raised on networks with limited data, such as cellular. In cases like this, if a browser window with the eGauge interface is left open, small amounts of data will be transferred indefinitely until the browser window is closed, and if data caps are exceeded, service may be disabled or overages charged. 


Main device interface
The eGauge will use internet bandwidth when the eGauge main graph interface is viewed through our proxy server (ie, http://devname.d.egauge.net/ or http://devname.egaug.es/). If the eGauge is viewed locally (ie, http://devname/ on Windows, http://devname.local/ on Mac or Linux, or the local IP address), this will only use internal network bandwidth, not external internet bandwidth. On limited bandwidth internet connections such as cellular, accessing locally will reduce data usage. 


When the main graph page of the eGauge is requested, it may load between 200 to 250 KB of data. Depending on how many registers are being loaded and the time period displayed in the graph, the eGauge may load an additional 10KB to several hundred KB. After the initial load, the eGauge will need to send instantaneous (second by second) data which may range from 0.5KB to 10KB per request. These numbers represent one browser window viewing the main graph page; additional browsers viewing the graph will each use this amount of data. 


Pushed data
The eGauge has the ability to push stored data to a third party service. Push data usage is influenced by the number of registers, push interval, and any push options (such as totals or compression). As a rule, the smaller the interval, the more data is used. Depending on the configuration, push data usage can vary from a few megabytes to over a gigabyte per month. Beginning with firmware v2.03, push options gzip and deflate are available to compress the pushed data. This can significantly reduce the amount of data usage required for pushing data. 


Testing/tracking data usage
Data usage varies widely based on a number of factors, each eGauge will use different amounts of data. Also, data usage will not necessarily remain constant from month to month. To see data usage on the main interface, you can use a browser such as Google Chrome, open the developer console (usually CTRL+SHIFT+J or F12), click the "Network" tab, and open a device interface. Every page request and its size will be visible in the Network tab. 


You can get an idea of how much data will be used by uncompressed pushes (or polls) by making CGI calls to egauge-show, specifying different options such as interval. For example,

http://dev-name/cgi-bin/egauge-show?m&n=360

will represent a single push from a device set to push every 6 hours with no options. Similarly, 

http://dev-name/cgi-bin/egauge-show?m&n=15&a

will represent one data push from an eGauge set to push every 15 minutes with totals as an option. For full details and parameters available, please see the eGauge XML API document.