Calculating Monthly Data Traffic for the IAMMETER Energy Meter
This article provides an overview of how to calculate the data traffic generated by IAMMETER energy meters.
This guide is inspired by frequent customer inquiries, both via email and forum threads, on this topic.
The data traffic depends on several factors:
Payload size
Upload method (HTTP, MQTT, etc.)
Upload interval
Data Traffic Calculation
The data traffic can be calculated using the following formula:
Monthly Data Traffic = (One-time Upload Data Traffic) × (Upload Times per Month)
One-time Upload Data Traffic = Payload Length + Network Protocol Overhead
Upload Times per Month = (Time Length) / (Upload Interval)
For users of IAMMETER Cloud, the upload interval is fixed at 1 minute. The standard upload method is HTTP, where the maximum data traffic for a single upload is approximately 550 bytes (for a 3-phase meter with reactive measurement or NEM mode enabled).
Key Parameters for Data Traffic Calculation
Payload Size (in bytes)
Meter Type NEM or Reactive Enabled Payload Length (bytes) 3-phase meter No 235 3-phase meter Yes 350 1-phase meter No 165 Upload Interval (for IAMMETER Cloud)
Upload Interval Monthly Upload Count 1 minute 43,200 Protocol Overhead (varies by protocol)
Protocol Overhead (bytes) Remarks HTTP 200 Default upload method for IAMMETER Cloud MQTT 20 Provided for testing, not a standard IAMMETER service
Example Calculation
For a 3-phase meter with NEM or reactive measurement enabled, using the standard HTTP method on IAMMETER Cloud, the total monthly data traffic is:
(Payload + Protocol Overhead) × Monthly Upload Count = (350 + 200) × 43,200 = 23,760,000 bytes, or 23.76 MB.
Data Traffic Estimates by Configuration
The following table provides potential data traffic for various configurations:
Option | Model | NEM or Reactive | HTTP | MQTT | Payload | Protocol Overhead | One-time Upload (bytes) | Monthly Data Traffic (bytes) | Data Traffic (MB) |
---|---|---|---|---|---|---|---|---|---|
1 | 3-phase meter | Yes | Yes | No | 350 | 200 | 550 | 23,760,000 | 23.76 |
2 | 3-phase meter | No | Yes | No | 235 | 200 | 435 | 18,792,000 | 18.79 |
3 | 3-phase meter | No | No | Yes | 235 | 20 | 255 | 11,016,000 | 11.02 |
4 | 1-phase meter | No | Yes | No | 165 | 200 | 365 | 15,768,000 | 15.77 |
5 | 1-phase meter | No | No | Yes | 165 | 20 | 185 | 7,992,000 | 7.99 |
Detailed Explanation
Payload
For a 3-phase energy meter, the payload data mirrors the API return from monitorjson
, as shown in the example below:
{"method":"uploadsn","mac":"B0F8933C4F94","version":"i.75.97.9","server":"em","SN":"3E0BAF87","Datas":[[220.0,9.99,2198,11.337,11.201,49.99,1.00],[222.5,9.99,1100,11.039,10.908,49.99,0.50],[263.5,9.99,1213,10.975,10.846,49.99,0.55]]}
This example is 235 bytes long. When NEM or reactive measurements are enabled, the payload increases to around 350 bytes. For a 1-phase meter, the payload is shorter, around 165 bytes, as shown here:
{"method": "uploadsn","mac": "B0F8932A295C","version": "i.75.98.71y","server": "em","SN": "D1234567","Data": [229.35,1.58,273,17173.79,0]}
Upload Method
On IAMMETER Cloud, the default upload method is HTTP, with an overhead of around 200 bytes. For MQTT, the protocol overhead is about 20 bytes. While IAMMETER provides an MQTT broker for testing, it is not a standard service on IAMMETER Cloud.
Upload Interval
The upload interval can be defined using the upload interval API. On IAMMETER Cloud, this is fixed at 1 minute, whereas for third-party servers, the minimum upload interval is 6 seconds.