As a way of changing my previous unhealthy lifestyle into one that was healthy and maintainable, I vastly improved my cooking skills a few years back. Now I know how to make a fair number of complex dishes that are both healthy and tasty at the same time.

This new found/upgraded skill has an added benefit…it saves money.  By buying all of the ingredients and using my “own” labour to do the preparation, the cost per serving of food is much lower than if I were to buy a similar dish that was ready-made.  So, I eat healthy and save's a good combination. 

But, what if I didn’t have the skills or time to do all of the legwork? In that case, it may actually make sense to buy the meals.  However, this savings of time does come at a cost….there is often a premium (and maybe even a substantial one) to the cost of meals this way.  Consider it a “convenience tax”. 

So, how does this relate to the world of IoT?  

One of the most common features that is used in the world of IT in general is remote updates, especially large-scale ones.  If you were managing 10,000 smartphones, I can imagine that one does not have to think too hard to come up with a great ROI for using some sort of Over-The-Air (OTA) management tool to push out new rules and software upgrades as the sheer logistics involved to do a SINGLE upgrade would be mind-boggling.  Plus, the average smartphone user usually has a pretty large data plan, so there is likely little, if any, extra data charges. 

However, what if you were supporting devices that had a much lower data plan assigned to it? 

One of the benefits to IoT is that since you often just pay for the data that you use, the actual monthly data cost per device is typically small…sometimes even less than a dollar.  This is one of the reasons why the ROI is so compelling.  However, with the updates for firmware being fairly large files, one might find that a single update can eat up more than what the device is supposed to use in a single month, potentially forcing the device into expensive overages. 

But, you may ask…aren’t device updates pretty rare?  Well, they can be, but there is another kind of unexpected source of data traffic that many people may not even think of in their planning phase...the “Keep-Alive”. 

Cost/Benefit Breakdown of a Keep-Alive

With IoT being used in some pretty vital applications, often those where public safety and health can be a concern, it makes sense that companies want to know that their devices are online at all times.  One way to do this is to send a small packet of information to/from the device to let it know that it is awake.  Think of it as calling home to tell Mom and Dad that you made it home safely. 

While this activity is definitely vital, it does come with a cost.  Depending on how often messages are sent (and how large each message is), this can result in Megabytes of extra traffic each month.  Now, if you are using the connection for an application that uses Gigabytes of traffic monthly, it is not likely that you would notice the difference in terms of cost.  However, if you had budgeted 1 MB or less of data, this may throw your entire cost structure out of whack. 

The Bottom Line

Keep-Alive and OTA updates are a great way to maintain a strong level of uptime for your solution while also greatly reducing the day to day activities involved in managing many devices.  However, it is important to understand your cost vs. benefits analysis and whether it makes sense for you to deploy these strategies for your fleet of devices.  Think of it as buying a seafood lasagna vs. making one...both make sense, depending on the situation.