You might be looking at the title of this blog and thinking:
Is this greenwashing? The answer is, no. I’m not here to tell you that batching location updates is going to save the polar bears and reverse the effects of climate change. I’m not going to lie about the environmental impact of our products either. I wish I had the smoking gun for tackling climate change and environmental conservation but the reality is I don’t, yet. What I want to show in this blog is how location update batching for mobile devices can help in cost savings, and bandwidth optimization, and how this has an environmental impact. Don’t believe me? Well, then:
But actually don’t, and hear me out.
Understanding Location Updates
Before we get into the meat and potatoes, let’s discuss the basics of geolocation services and how they use location updates. For that, I’ll go into the difference between real-time and batch location updates. Real-time location updates are the continuous and instantaneous tracking of the geolocation of a person, object, or vehicle, with the updates being transmitted and displayed in real-time to a remote device or application. The way we do it at Roam is by collecting raw location data through filters, sensor fusions, and IMUs. That last bit was for the developers, the rest of you, just roll with it and remember, real-time location updates = “live from New York, it’s Saturday Night Location Updates!”.
Not funny or helpful? That’s fair, let me get into batch location updates and then talk about the difference between the two because that will be helpful.
Batch location updates involve collecting and transmitting location data for multiple instances over a period of time and then sending the data as a batch to a server or remote device. The key difference between real-time and batch is the timing of the updates. Real-time location updates provide instantaneous and continuous location data, whereas batch location updates provide location data at specific intervals or after a predefined amount of time has passed. Batch location updates are ideal for when real-time tracking is not critical, or when the device or object being tracked has limited battery life, or for offline location tracking too.
Benefits of Batching Location Updates
1. Optimizing Bandwidth
To start off, I should define bandwidth before elaborating on this point.
Bandwidth refers to the maximum amount of data that can be transmitted over a network or communication channel in a given amount of time. It’s measured in bits per second (bps) or bytes per second (Bps). It represents the capacity of a network to transmit data and is influenced by factors such as the network infrastructure, the type of transmission medium, and the amount of traffic on the network. If you have a higher bandwidth, that indicates that more data can be transmitted in a shorter period of time, while having lower bandwidth can result in slower data transfer rates and longer transmission times.
Batching location updates can reduce the number of data transfers, thus saving bandwidth. Here’s why:
Real-time location updates demand greater data usage and bandwidth. Every year, the average data used per smartphone per month worldwide is increasing. In 2021 that average number was 11.4 gigabytes (GB) per month. By 2027, that number is expected to increase almost four times reaching 41 GB per smartphone per month globally. Currently, a lot of apps use location updates and that number will grow alongside the average data used per smartphone per month globally. The more apps that use real-time location, the greater the data usage and bandwidth will be. Batching location updates can reduce the frequency of data transfers, leading to significant savings in terms of data usage and bandwidth. That's why we call it bandwidth optimization.
2. Saving Costs
And then there are saving costs. Whilst busy watching jets shoot down balloons, Americans spend a lot of money on mobile data. According to some blogs and reports, in 2020 the average monthly mobile phone bill in the U.S. was $127.37. In 2012, it was $71. Despite the whole end-of-the-world thing, 2012 was a simpler time, but a major reason for the increase in cost is that unlimited data plans have become popular. Those unlimited data plans are not only expensive for the users but require a lot more work on the mobile network side who are dealing with a lot more data requests. Batching location updates can save costs in several ways:
- Reducing data usage: Batching location updates reduces the frequency of data transfers, leading to significant savings in terms of data usage and bandwidth. Fewer data being transmitted means a reduced cost of mobile data usage.
- Improved battery life: Yep, given the chance we'll always talk about battery efficiency. Batching location updates helps to conserve battery life on mobile devices. Reducing the frequency of location updates gives the device’s GPS sensor some rest, leading to less battery drain.
- Increased network efficiency: Batching location updates reduces the number of network requests, allowing the network to handle its other tasks more efficiently. The result is improved network performance and reduced costs for mobile network operators.
Overall, batching location updates helps reduce costs for both individuals and businesses by reducing data usage, improving battery efficiency, and increasing network efficiency.
3. User Adoption and Satisfaction
Batching location updates can provide users with a more efficient and reliable experience, potentially leading to increased user adoption and satisfaction. The two key areas of user experience that are important for location-based apps are battery efficiency and location accuracy. In some cases, real-time location updates drain a mobile device's battery, which isn’t ideal. By batching location updates, the device can conserve battery life and provide a longer-lasting user experience. Added to that, real-time location updates can cause location data to be less accurate due to factors such as GPS drift or interference. By batching location updates, the device can improve location accuracy by aggregating data over a longer period of time. If we track back to bandwidth, with real-time location updates needing a significant amount of network bandwidth, some users might experience a slowdown in other app activities, including freezes and crashes.
4. Environmental Conservation
Alright, now to the final point, environmental conservation. Batching location updates can contribute to reducing carbon emissions and helping the environment.
Let’s get straight to the facts:
According to a report by the IEA, data centers and data transmission networks account for about 1-1.5% of global electricity and use 0.9% of energy-related greenhouse gas emissions. Added to that, the digital industry as a whole emits about 4% of the world's greenhouse gasses, and its energy consumption is increasing by nearly 6% per year. Whilst in the grand scheme of things the impact of data centers and data transmission networks may not look shocking or concerning, it's larger than what was previously thought or expected. That mainly has to do with an increase in data usage through video streaming, cloud gaming, and of course, mobile devices. However you want to spin it, data transfers cost energy, and most of the time it’s not environmentally friendly renewable energy either. By reducing the frequency of data transfers, batching location updates can help reduce the energy consumption of data centers and minimize their environmental impact.
Implementing Batching Location Updates
So, how would one go about implementing batch location updates for their mobile app? I suggest that a good place to start is to read our Roam.ai docs pages. With our batch configuration for both Android and iOS, you have control over the number of location data updates being received in the location listener with the desired frequency and window. AKA, customizable batch configuration. Through our dashboard, we offer you the chance to implement batch location updates for your mobile app so you can start using batch location updates today.
Real-life Applications of Batching Location Updates
Before I conclude this blog, here are some real-life applications of batching location updates:
- Ride-hailing apps: a ride-hailing app can use batch location updates to track the location of their drivers and riders, helping optimize routes and estimate times more accurately.
- Fitness apps: Tracking any outdoor activity such as running or cycling with batch location updates allows users to record their routes, and minimize the battery drain whilst doing so. That’s because, rather than sending the location updates during the run continuously, batching the location data and sending them after the activity requires less battery usage.
- Delivery: Including last-mile delivery specifically, delivery services can similarly use batch location updates as it would be used for ride-hailing apps: to track the location of their delivery personnel, and provide more accurate delivery estimates to customers.
- Asset tracking (Logistics): Companies that need to track the location of their assets, such as shipping containers, can use batch location updates to monitor their location without draining battery life or using excessive data. Think about a delivery vehicle that is traveling over large distances. You wouldn’t need to know the real-time location of a delivery vehicle when it has to travel over 200km + on a highway. It would be an excessive way to track the location of the asset being transported, as it would be a costly and inefficient use of data. Therefore, only collecting the locations in batches to ensure the asset is traveling on the expected route is much more efficient.
To batch things up, batch location updates have many advantages. It can optimize bandwidth, maximize cost savings, contribute to reducing carbon emissions and help the environment. It has utility in various sectors and industries, ranging from fitness apps to asset tracking. Am I saying it’s the best thing since sliced bread? No, that’s such a helpful way to make sandwiches, and I love sandwiches.
Want to know what we do at Roam?
Thank you for reading! If you’re interested in developing a mobile app with location services and want to power it with reliable and accurate location tracking, check out our location SDK. It offers customizable tracking modes, always-on tracking, offline location tracking, and mock location prevention. With low battery drain, your app can offer top-notch location tracking without draining battery life. Check out our location SDK page to find out more.