“Unlimited” data plans are a thing of past. For both prepaid and post-paid, most everyone is now on a data plan with a quota (hard cap quota, such as AT&T’s 2 GB a month with overage charges, or soft cap such as T-Mobile’s 2 GB a month but no overage charges only speed throttling). Combine this with the fact that we are consuming more network/wireless data than ever before and there arises a need to be able to monitor your network data usage so we can ensure we avoid those pesky overage charges or speed throttling. This article lists the best free network data usage monitors – also called network monitors, bandwidth monitors, network data monitors, or data monitors – available on Android. You can use these any of the following tools to make sure you (almost) never pass your data quota limit.
Before we take a look at the list of best free network data usage monitors there is something I would like to point out. All network data usage monitors are “always on” apps; therefore they *will* have some sort of negative effect on your phone’s battery life. How big of an effect varies from app-to-app. For what it is worth, I have been running multiple monitors concurrently most of the day and the effect on my Nexus S battery life has been so small it might even be considered negligible. (If you are using a task killer , make sure to add the network data usage app you use to the ignore list!)
(Note: Although these network data usage monitors are fairly accurate, they are not a replacement for your service provider’s billing system. You can try to argue all you want with your cell phone company, but you are unlikely to convince them the amount of data the app says you used is more accurate than what their billing system says you used. How you are billed also depends on the billing scheme that your cell phone company uses, such as the size of data blocks they bill by. So, small discrepancies between what you think you should have been billed – based on the data your monitor says you used – and what you are actually billed are to be expected. Huge discrepancies, however, are significant and it could mean either your cell phone company is cheating you or the network data usage monitor you are using is very inaccurate.)
Table of Contents
App Name: 3G Watchdog  
Developer: Richard Gruet
Download Size: 618 KB
Version Reviewed: v0.28.0
Requires: Android 1.5 and up
- Monitors all types of network data usage: 2G, 3G, and 4G.
- Allows users to set a daily, weekly, or monthly data quota and provides users with a warning notification when that quota is being reached and when the quota has been reached.
- Breaks network data usage into in/out and quota/today/week/month segments.
- Allows users to pick if they want to show the 3G Watchdog icon in the notification bar or if they want to turn it off or if they only want to show it when network data connection is enabled.
- Has the ability to disable 3G when X% (you select what percentage) of the data quota has been reached.
- Allows users to manually modify the quota/today/week/month data counts.
- Allows users to control the refresh interval of updating/polling for data usage information.
- Supports widgets.
- Very accurate.
- Does not provide users with warning notifications if the 3G Watchdog notification bar icon has been disabled.
- Does not have any sort of billing counter (i.e. won’t predicate how much you will be billed based on billing information that you input – only shows network data usage, which you can use to manually figure out how much you may be billed). [3G Watchdog Pro has billing counter features.]
- Widgets only show quota data – no way to make widgets show daily/weekly/monthly data. [3G Watchdog Pro supports more types of widgets.]
- Can automatically turn off network data when X% of the quota is used, but requires a third party app (APNdroid or Juice Defender) to be installed to do this.
- Does not monitor WiFi data usage.
- Cannot be installed or moved to SD card.
Despite what its name may suggest, 3G Watchdog is a network data usage monitor that monitors all types of network data – 2G, 3G, 4G and everything in between. 3G Watchdog allows users to setup a daily, weekly, or monthly data quota and provides users with one warning notification when X% of the data quota has been reached (users set what the percentage is) and one warning notification when the data quota has been fully used/finished. (3G Watchdog actually *forces* users to setup a data quota. There is no way to tell 3G Watchdog that you don’t want to setup a data quota. Most people will use 3G Watchdog because they are on a data quota and want to make sure they don’t pass it, so being forced to use a data quota is a non-issue for them. There will, however, be a small minority that don’t necessarily want to monitor data usage for a quota, but rather want to monitor data usage for other reasons. If you are within this small minority, not being able to disable the data quota feature will annoy you. See DroidStats  or Data counter widget  if you are one of these people.)
3G Watchdog breaks down network data usage into received/sent (in/out) and quota/daily/weekly/monthly segments. It displays the data usage information in three places: The main app window, where it has a nice organized table; the Android notification bar, where it places an icon and a clickable entry in the notification pull-down menu; and a widget.
For users that prefer not to have the 3G Watchdog icon/entry in the notification bar/menu, 3G Watchdog allows users to turn off the icon/entry or to only display the icon/entry when network data connection is enabled. Do note, however, if you disable the 3G Watchdog icon/entry you will not get the warning notifications mentioned earlier. (In my opinion, this is poor programming on the developer’s part. Warning notifications should be displayed regardless of if the notification bar icon/entry has been enabled or not. If the developer does not want to enable this feature as an app-wide default, at the very least users should have the option if they want to receive warning notifications the notification bar icon/entry being disabled or not.)
In regards to the widgets, 3G Watchdog provides two widgets: A 1×1 widget (takes up only one icon spot) and a 2×2 widget (takes up four icon spots). Both widgets display the same thing: Information regarding how much of the quota has been used. The widgets display a bar which changes color depending on the quota usage status (it is green if you have not passed your warning notification X%, orange if you have passed it, and red if you have used more data than your quota); and users have the option to show how much of the quota has been used in terms of MB and percentage. (Both the MB and percentage displays are enabled by default, and users who don’t want them need to manually turn them off.) Unfortunately, the free version of 3G Watchdog only supports widgets that show quota data. If you want more types of widgets – like widgets that show daily, weekly, and monthly data usage information – you will need to purchase 3G Watchdog Pro (about $3.25 USD). While I do think 3G Watchdog Pro is overpriced (it shouldn’t be more than $2 USD), I can’t really complain too much about the price because 3G Watchdog – the free version – is a brilliant app, despite its limitations.
Before I go onto other aspects of 3G Watchdog, I would like to make a quick comment about the 2×2 widget. The widget takes up a 2×2 – i.e 4 icons worth – spot; but the widget itself actually isn’t large enough to justify such a big spot. In other words, the widget doesn’t fill in the whole 2×2 area. The widget is larger than a simple 1×1, yes, but it isn’t large enough to fill a whole 2×2 yet it still uses all that area for itself. It is sort of akin to someone parking a car in the middle of two parking spots. The car isn’t large enough to fill both parking spots, but it uses up two parking spots anyway. If the developer insists on providing this “big” 2×2 widget, they should at least make it large enough to fill in the whole area it claims for itself.
In regards to information accuracy, 3G Watchdog is as accurate as it can get. 3G Watchdog itself does not monitor network data usage; it pulls data from Android. Since 3G Watchdog uses data provided by Android, it cannot get any more accurate than it is already. (After all, if the Android operating system is providing inaccurate data, a third party app like 3G Watchdog cannot be expected to show accurate data.) Plus, during my tests 3G Watchdog was showing the exact same data usage as most other apps (only one app was showing a different amount, and that app is the one that is inaccurate) which, by reasonable assumption, must mean 3G Watchdog is monitoring and recording network data usage properly.
Furthermore, 3G Watchdog has an option that allows users to control the “refresh frequency” of when 3G Watchdog polls Android for network data usage information and updates its meters. By default this refresh frequency is set to every one minute, but users have the option to change it to every 30 seconds, every 5 minutes, every 15 minutes, every 30 minutes, or every one hour. The lower the interval/frequency, the more battery 3G Watchdog will consume (i.e. a refresh frequency of 30 seconds will consumer more battery than a refresh frequency of every one hour because 3G Watchdog will be polling more often during the day). However, take note that a lower frequency does not necessarily mean more “accurate” data*.
As I already said, 3G Watchdog does not monitor network data usage itself – it imports data from Android, so the “accuracy” of the information will be the exact same if 3G Watchdog polls Android 60 times in an hour or once per hour. Rather, a lower frequency means more timely information. To show you what I mean, let’s take two scenarios: In one scenario you set the refresh frequency to every minute. In the other scenario, you set it at every hour. In both scenarios you use a total of 100 MB of network data.
In scenario A, the one with the refresh frequency of one minute, you will get 60 updates about your data usage; you will be told at minute 1 how much data you have used so far, at minute 2 how data you have used so far, etc. At minute 60 you will be told you have used a total of 100 MB. In scenario B, the one with the refresh frequency of one hour, you will get 1 update about your data usage; at the end of the hour (i.e. minute 60) you will be told you used 100 MB of data. In both scenarios at the end of the hour you will be told you used 100 MB of data. However, in the first scenario you will be given intermediate reports – you will know exactly how much data you have used after 15 minutes, after 36 minutes, after 43 minutes, etc. – whereas in scenario two you will be given one report at the end of the hour.
For the most part, having these intermediate reports or not having these intermediate reports is not a big deal. If you have a data quota of 1,000 MB and you have only used 50 MB so far, being told after an hour that you used another 100 MB of data or being told every minute how much data you are using doesn’t really matter because at the end of the hour you have used 100 MB regardless of your refresh frequency and at the end of the hour you are still under your data quota limit. However, now let’s say you have used 960 MB thus far instead of 50 MB. If you have the refresh frequency set at an hour, at the end of the hour you will be told you have used 100 MB of data, making your total data usage 1,060 MB; this is 60 MB over your data quota. Because of you had the refresh frequency set at one hour, there was no way to knowing (aside from manually refreshing 3G Watchdog) that you were going over your data quota until the end of the hour. On the other hand, if the refresh frequency was every minute, you would have been told a lot earlier that you have used up your whole data quota (i.e. lets say after 32 minutes you used 40 MB and have reached your limit; you would have known this fact before the 33rd minute finished). Now this doesn’t mean lower frequencies will make you totally avoid data overage. You may still go over your data quota with lower refresh frequencies. For example, lets say at minute 22 you have used 39.5 MB. In between minute 22 and minute 23 you use another 1 MB of data. This makes your usage so far 40.5 MB, and therefore your total quota usage to 1,000.5 MB, which means you went over your quota by .5 MB. As you can see, even with a 1 minute refresh frequency you went over your quota; a lower frequency will help you, however, in avoiding larger data overages.
(*There is one exception to what I stated above. When your phone shutdowns, Android erases its network data usage logs. 3G Watchdog tries to intelligently work around this fact and still provide you with accurate information, but having a lower refresh frequency helps 3G Watchdog. For the most part, though, you shouldn’t worry too terribly about having the lowest frequency to avoid data loss when your phone shuts down or restarts. The decision of what to set the refresh frequency at is more dependent on other factors that “what happens when I shutdown or restart my phone”.)
In the end, the choice of which refresh frequency to use depends on what you value more: Battery usage or avoiding data overage penalties/charges. For what it is worth, at the one minute refresh frequency (the default setting), 3G Watchdog doesn’t drain battery very much. The developer claims 3G Watchdog uses no more than 10 seconds of CPU during the day for monitoring and recording your data usage; while I cannot confirm or deny this claim, I can say 3G Watchdog had pretty much a negligible effect on the battery life of my Nexus S at default settings (i.e. one minute refresh frequency). If you cannot decide what refresh frequency to use, just leave it at the default one minute setting.
Last but not least, I would just like to mention 3G Watchdog does not monitor WiFi data usage. It only monitors network data usage. Now, of course, this article is about network data usage monitors – not WiFi data usage monitors – and many people won’t care about WiFi data usage. However, there are some people that will care about WiFi data usage (people that use bandwidth limited WiFi connections, people that use pay-as-you-go WiFi connections, etc.). People that want to monitor WiFi data usage obviously cannot use 3G Watchdog since it doesn’t do it. (See DroidStats  or Data counter widget  if you are one of these people.) The developer may want to consider adding in this feature.
To conclude this epically long discussion about 3G Watchdog: 3G Watchdog has its drawbacks; even the best apps have drawbacks. However, compared to the competition, 3G Watchdog is the best free network data usage monitor.
App Name: DroidStats  
Developer: Michael Ludwig
Download Size: 1.0 MB
Version Reviewed: v3.3.3
Requires: Android 1.6 and up
DroidStats is a brilliant app. Like 3G Watchdog, DroidStats monitors network data usage (2G/3G/4G). However, in addition to monitoring network data usage, DroidStats monitors WiFi data usage, SMS/MMS (text/picture messages) usage, and call minutes usage. Furthermore, like 3G Watchdog, DroidStats has widgets and a notification system when users reach X% of their data quota and when they exceed the data quota. (DroidStats does not force users to setup a data quota – it is optional.) However, DroidStats also has widgets and a notification system for SMS/MMS and minutes; and it has a notification based on “cost limits”. (It has many other useful features too, such as a feature that allows users to exclude phone numbers from being counted towards minutes, a feature that allows users to exclude a time period in which calls are not counted towards minutes, etc.) Lastly, while 3G Watchdog makes users buy the Pro version to get a billing counter/system, DroidStats – the free version – has a fairly extensive billing counter/system built-in that allows users to estimate how much they will be charged based off their usage.
In regards to data accuracy, I don’t now how DroidStats works exactly (I suspect it works the same way as 3G Watchdog, i.e. it pulls information from Android)l but I do know it is exactly as accurate as 3G Watchdog. (During my tests they both displayed the same amount of data usage.)
In regards to battery life, it is hard to say which one – 3G Watchdog or DroidStats – has better battery life because the effect of both apps on battery life was very little during my tests. In other words, like 3G Watchdog, DroidStats shouldn’t drain your battery too much.
So, with all the positives of DroidStats, why is it ranked second to 3G Watchdog? If this article was discussing SMS/MMS and minutes monitoring, DroidStats would probably be one of the best available. However, this article is focusing on network data usage. There are three main shortcomings in the network data usage monitoring area that contributed to me concluding 3G Watchdog is better for network data usage monitoring than DroidStats:
- Like 3G Watchdog, DroidStats allows users to modify the refresh frequency (called “Update Interval Data Usage” in DroidStats). I find the selections for refresh frequency in DroidStats to be to0 restrictive. DroidStats allows users to pick 15 minutes, 30 minutes, and 60 minutes for the data refresh frequency. (3o minutes by default.) I feel there needs to be more intervals available to users, such as how 3G Watchdog allows users to select 30 seconds, one minute, and five minute intervals in addition to the 15/30/60 minute intervals.
- 3G Watchdog allows users to pick from two widgets. DroidStats allows users to pick from three widgets (1×1, 1×2, 1×3 – there is also a 1×4 available but can only be used by users who purchase the “donate” version). The problem with the widgets is the 1×1 and 1×2 widgets show SMS/MMS and minute usage information only. If users want to have a widget that shows network data usage, they need to use the 1×3 widget. For users that want to monitor SMS/MMS, minutes, and network data usage, using the 1×3 widget is no big deal because they are making use of all three features. However, for users that only want to monitor network data usage, being forced to use a 1×3 widget results in wasting two icon spots. Lame.
- Users that purchase DroidStats’ “donate” version (about $3.60) can customize widgets so the 1×1 and 1×2 show network data usage. Users of DroidStats’ free version don’t have this option.
- DroidStats lacks the ability to manually refresh. I find this to be very annoying. (3G Watchdog has a manual refresh button.) As a temporary – but annoying – way to manually refresh, you can go into Settings ->Application Settings -> Update Interval Data Usage, change the interval, hit Cancel, change it back to what you had it, and exit settings; DroidStats will refresh at that point.
Furthermore, although the following three points aren’t “this is why 3G Watchdog is better”, there are three things I would like to see changed in DroidStats:
- For the billing system, DroidStats gives users the ability to set the price per MB of network data. The problem is many cell phone companies don’t bill per MB; they bill per different blocks (each have their own standard). If someone uses DroidStats’ billing predictor and their cell phone company does not bill based on 1 MB blocks, DroidStats’ cost prediction will be different than what the phone company says. Of course that doesn’t mean DroidStats’ prediction will be 100% accurate for companies that do bill based on 1 MB blocks; but it does mean if DroidStats can properly mimics the block size, it has a better chance of getting an accurate cost prediction. The developer should allow users to select data block size.
or its billing system, DroidStats uses dollar signs ($). In terms of calculations, it is irrelevant whether a dollar sign is used or some other currency symbol is shown. As long as you realize the costs predication DroidStats is showing you are not in dollars but rather in the currency you based the input data on, it doesn’t matter what currency symbol DroidStats shows. However, it is a bit annoying and confusing to show a dollar sign when not everyone uses dollars. DroidStats should, ideally, give users the options to select currency.
- Update: DroidStats automatically changes the currency sign based on the locale you set. Look for an option to change the locale in DroidStats’ settings.
- DroidStats can monitor WiFi data usage, but it only allows for data quota and notification for network data usage. There should be a quota/notification system for WiFi data usage also.
All six points I pointed out above do not mean DroidStats “sucks”. DroidStats does not suck. It is a very, very good app. However, for the purposes of network data usage monitoring, I find 3G Watchdog to be slightly better. Nonetheless, if someone opts to get DroidStats over 3G Watchdog, I will not protest.
(Like 3G Watchdog, DroidStats is ads-free and cannot be installed in/moved to the SD card.)
App Name: Data counter widget  
Developer: Roy Solberg
Download Size: 264 KB
Version Reviewed: v1.5.5
Requires: Android 1.5 and up
Like 3G Watchdog, Data counter widget is a network data usage monitor that can monitor 2G/3G/4G data. Unlike 3G Watchdog, Data counter widget also monitors WiFi data usage. However, Data counter widget is simply a monitor/counter – it does not allow users to setup data quotas and thus does not provide any notifications when a quota is reached either.
The main attraction to Data counter widget over 3G Watchdog is the widget. Data counter widget – which also has a main app interface that displays usage data, despite what the app name may suggest – has two widgets: 1×1 and 2×1. Both these widgets show the same information, the amount of network data and WiFi data used so far in the month. What sets these widgets apart from other apps is the widgets can be customized in color (background color: black, transparent, gray, white, or “the old look”; font color: white, light grey, block, or grey). If you want more color choices, you need to purchase Data counter pro (about $2.80 USD).
(Like 3G Watchdog, Data counter widget is ads-free and cannot be installed in/moved to the SD card.)