The Best Android Mobile Benchmarks

Although there is strong evidence that higher benchmark scores do not always translate into real-world performance gains, the best benchmarks do serve a purpose.  They are not subjective and can expose differences in hardware performance. Unfortunately, there are over fifty different mobile benchmarks to choose from, and picking the best ones is not easy. There are several reasons for this. Some benchmarks have serious problems and do not produce meaningful results. Other benchmarks haven’t been updated in years and should be taken down. A few benchmarks are bankrolled by companies with a long history of cheating. In the end, my research showed there are 4 or 5 benchmarks that really stand out and deserve a “Best” rating. A few others are very good, but not quite as good as the those with a “Best” rating. I found quite a few benchmarks that are good for certain things, so I placed them in their own category. Lastly, I found more than a few apps that have serious flaws and shouldn’t be used. Here are rankings of mobile benchmarks that will help you determine which to use, and which to avoid. This article is focused on Android benchmarks, but quite a few of these are available for iOS as well.

Capture1

Best

  • 3DMark (Sling Shot) One of the best GPU benchmarks. It incorporates volumetric lighting and particle illumination, as well as depth of field and bloom post-processing effects. Expect really low frame rates on the graphic tests. Although Sling Shot includes several good tests where physics including simulated worlds and particle systems are computed on the CPU, it isn’t the best benchmark for overall CPU performance. A useful graph is displayed after the test is complete, which plots the CPU frequency, temperature, frame rate for each of the tests. Scores vary depending on which of the modules you run. Even though the tests appear similar, scores from ES 3.1 mode should not be compared to scores from ES 3.0 mode. Requires Android 5.0 (or later).
  • GFXBench (formerly GL Benchmark) – This suite of 14 different tests is one of the best GPU benchmarks. Its “Car Chase” test was the first to test devices with hardware tessellation support. It also includes HDR tone mapping bloom, lens flares, particles, motion blur and more. Issue: Temperature and clock speed are not reported on devices like the Nexus 6.
  • PCMark for Android – This benchmark measures the performance and battery life of an Android device browsing the web, editing photos, watching videos and working with documents. Real applications are used, so the results are supposed to reflect real-world performance. The “Work battery life” test measures the time required to drain the battery in a device from full charge to 20%. This benchmark is useful, but isn’t a true test of processor efficiency, because the end result has a lot to do with the capacity of the battery in the device. Still, it’s one of the best battery tests.
  • Vellamo – One of the best mobile web benchmarks. Although it’s known for its HTML5 and Javascript browser performance tests, the Browser Chapter also includes SunSpider and Google’s Octane benchmark, as well as page load, text reflo, scrolling and crypto tests. Vellamo also has a good collection of multi-core benchmarks (Multicore chapter) which include Linpack, Sysbench and Threadbench. Lastly, Vellamo’s Metal chapter includes the Dhrystone and Linpack benchmarks, as well as storage and RAM memory tests. It should be mentioned that the person who created and maintains Vellamo is an employee of Qualcomm, although I’ve never seen any evidence Vellamo’s browser tests favor Snapdragon processors.

 Capture3

Very Good

  • Androbench – A good way to measure the storage performance on an Android device. Measures sequential reads/writes and random reads/writes.
  • Geekbench 4 – One of the better single-core CPU benchmarks. Geekbench also tests memory and multi-core performance. Geekbench 4 also includes new GPU compute tests, although it’s too soon to say how good these tests are. Requires Android 5.0 or later.
  • JetStream A relatively new JavaScript benchmark that is similar to Vellamo and PCMark’s Web Browsing test. Effectively replaces SunSpider and Octane because it includes SunSpider 1. 0.2 and Octane 2. Its makers claim it is better because “each benchmark measures a distinct workload, and no single optimization technique is sufficient to speed up all benchmarks.” Latency tests confirm that a web application can start quickly, ramp up to peak performance, and run smoothly without interruptions. Throughput tests measure the sustained peak performance of a web application. It’s supposed to be less easy to game because aggressive optimizations for one benchmark could make another benchmark slower.

Useful in Some Cases

  • 4GMark – A speed and quality of service benchmark for 2G/3G/4G cellular and Wi-Fi networks. After testing, you can compare your results against other users in your country, area, or the same device.
  • AndEBench-Pro 2015 – A suite of tests measuring CPU, GPU, memory and storage performance. It also gauges XML parsing, GUI rendering, image manipulation, data compression and cryptography tasks embedded in actual workloads. This benchmark is a product of EEMBC, which is led by Intel. This apps is based on AndEBench, which gets only 3 stars in Google Play. It was last updated in 2015 for Lollipop and is overdue for an update.
  • AnTuTu 6.0 – Better as a CPU test than a GPU test. AnTuTu is also not a good indicator of performance changes over time because its scores sometimes change dramatically as new versions are released. For example, bloggers benchmarking the Snapdragon 820 with AnTuTu 6.0 saw scores over 130,000. At the same event, on the same hardware, AnTuTu 5.7 reported scores around 70,000. That’s almost a 2x increase, which makes this benchmark very misleading. Although some of the best tech bloggers (e.g. AnandTech, Engadget and Ars Technica) no longer use AnTuTu, it’s still one the most popular Android benchmarks and the one that handset manufacturers like Samsung value the most. It also has more users than any other benchmark. For these reasons, I’m not moving it to the ‘Not Recommended’ section of this article – even though it probably deserves to be there.
  • Basemark ES 3.1 – Measures the OpenGL ES 3.1 graphics performance of your device. Also provides four results: Lighting, Compute, Instancing and Post-Processing. It’s part of their Basemark GPU Mobile test suite , which has a Pro version that reports FPS and other stats. I considered moving this to the “Good” section of this article, but after reading its mixed reviews and seeing that it doesn’t run on most mobile devices, I’m leaving it here for now.
  • DiscoMark – This little-known benchmark measures the launch-times of applications that you select. On the plus side, this test reflects the real-world performance of your phone. On the negative side, comparisons are meaningless, unless the same apps are selected.
  • Basemark GUI Free – Performs vertex streaming and blending performance measurements. Its vertex test is good, although the blend test is not great. It also hasn’t been updated since 2014.
  • Basemark X – A decent cross-platform graphics benchmark based on the Unity 4.2 game engine. This used to be one of the more demanding graphic benchmarks, but it hasn’t been updated since 2014, so it’s showing signs of age. Its off-screen test is also not completely resolution independent.
  • CF-Bench – A CPU and memory benchmark designed for multi-core devices. Although it produces a “final” score, its creators say you should take those with a grain of salt. Hasn’t been updated since 2013.
  • CompuBench RS – A RenderScript benchmark that tests compute performance of Android mobile devices. Still being updated, but not very popular.
  • Dhrystone– An older synthetic computing benchmark program which provides an indication of CPU “integer” performance. This benchmark isn’t a good indicator of performance but is still used by some chip manufacturers as a load to determine peak power consumption. Dhystone 2.1 is part of Vellamo’s Metal Chapter.
  • Epic Citadel isn’t a traditional benchmark, but it does have a “benchmark mode,” which reports an average frame rate after a game loop runs. I feel this app is useful because its graphics are representative of the real world games.
  • GameBench – GameBench is one of the more popular FPS testing apps. However it must run for for 10-15 minutes in order to get a frame rate reading, and there is evidence the results are not always accurate. I wrote an article that compares GameBench with others apps that report frame rates. GameBench is “App 2” in these tests. Note: This app also has privacy issues. It sends your email address, test scores and other personal data to the cloud where paid users can access it.
  • Google Octane– A good test of JavaScript performance in browsers.  This test is part of JetStream and the Vellamo Browser Chapter, so most users won’t need to run it.
  • Kraken– Yet another Java script benchmark. Still used by Ars Technica and some other bloggers.
  • TabletMark – An automated tool that evaluates system performance on a range of activities, which include Web browsing, email, photo, video sharing and playback. Also includes a day-in-a-life battery test which includes idle time. While this benchmark sounds interesting, it’s worth mentioning that this app has less than 1000 downloads and a 3.6 star rating.
  • Trepn Profiler – This app isn’t a benchmark, but it reports accurate power readings and displays the processor frequencies as an overlay on any app. This is a good way to see whether your processor is throttling under a heavy load. When a processor is overworked and gets too hot, its frequency is reduced, which causes a drop in performance. The only reason this app is not in the “good” category is because newer mobile processors (including the Snapdragon 808, 810, 820 and 821) have a PMIC that only reports power readings every 30 seconds and this can affect the accuracy of average power readings. [Disclosure: I was involved in the creation of this product]

Not Recommended

  • 3DMark (Ice Storm) – Not the best test of advanced GPU performance. 3DMark Sling Shot has effectively replaced this test.
  • AnTuTu 4.0 – This app has heavy vertex shader complexity that is unlike real-world games. It also has no consideration for tiled rendering architectures.
  • AnTuTu 5.0 – This app’s 2D tests are not representative of the real-world games. This version was replaced by AnTuTu 6.0, which is better.
  • Basemark OS II – A system-level benchmark designed to measuring overall performance. In addition to its overall score, four different areas are also evaluated including system, memory, graphics, and web browsing. Not recommended because the rankings on this Powerboard web site aren’t credible and their free version is missing several features promoted on their product page. Battery Test and External Memory Tests are available in their Full version, but I can’t find a camera test anywhere. Also, this benchmark hasn’t been updated since 2014 and it is one of the lower-ranked popular benchmarks on Google Play (3.9 stars).
  • BenchmarkPi – One of several benchmarks that measures performance by calculating Pi. This benchmark isn’t recommended because it only tests the CPU and is no longer used by most bloggers. It also hasn’t been updated since 2009.
  • BenchmarkXPRT – A collection of different benchmarks. You won’t find the word “Intel” on the BenchmarkXPRT website, but if you check the small print on some Intel websites you’ll find they admit “Intel is a sponsor and member of the BenchmarkXPRT Development Community, and was the major developer of the XPRT family of benchmarks.” Intel also says “Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors.” Bottom line: Intel made these benchmarks to make Intel processors look good and other processors look bad. This benchmark should not be used.
  • BrowserMark – A cross-platform browser benchmark with issues that make cross-platform comparisons questionable.
  • CaffeineMark – A series of online tests that measure the speed of Java programs. CaffeineMark scores roughly correlate with the number of Java instructions executed per second, and are not supposed to depend on the amount of memory available or the speed of the Internet connection. Not recommended, because this test was created in 1997 for PCs and their Android app hasn’t been updated since 2011. Much better JavaScript benchmarks now exist.
  • CompuBench CL Mobile – Tests the compute performance of Android mobile devices supporting OpenCL. Tests include face detection, particle simulation, fractal rendering, ambient occlusion, raycast, gaussian blur and histogram normalization. Crashes on many devices. As a result it has a poor rating and cannot be installed on most devices.
  • Google V8 – Another browser benchmark focused on JavaScript performance. Was effectively replaced by Google Octane because it adds five tests on top of the ones already in V8.
  • Linpack – Measures the floating point performance of the CPU. Linpack is part of the Vellamo’s Multicore and Metal tests, so it’s not really needed. It’s also no longer used by most bloggers who benchmark and hasn’t been updated since 2011.
  • MobileXPRT – You won’t find the word “Intel” on the BenchmarkXPRT website, but if you check the small print on some Intel websites you’ll find they admit “Intel is a sponsor and member of the BenchmarkXPRT Development Community, and was the major developer of the XPRT family of benchmarks.” Intel also says “Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors.” Bottom line: Intel made these benchmarks to make Intel processors look good and other processors look bad. MobileXPRT should not be used.
  • Nenamark 1 – An OpenGL ES 2.0 graphic benchmark that is meaningless, because all modern devices hit its 60fps framerate limit. Hasn’t been updated since 2011.
  • Nenamark 2 – An OpenGL ES 2.0 graphic benchmark that is supposed to have more advanced effects and higher resolution graphics than NenaMark1. Hasn’t been updated since 2012.
  • Nenamark 3 – Another OpenGL ES benchmark that is supposed to continuously grow more complex until the system cannot handle it any more. However, it doesn’t allow you to change the resolution, so a phone with a very high-resolution screen is likely to perform worse than a budget phone with a low-resolution screen. This is also why it favors iPhone over Android flagships like the Nexus 6P.
  • Passmark – Tests CPU, storage, 2D graphics, 3D graphics, storage and memory performance. Hasn’t been updated since 2013.
  • Pi – Calculates how long it takes to calculate Pi up to 10 million digits. Not a useful benchmark because it only measures one thing.
  • Quadrant Standard Edition – Mostly a CPU benchmark, although it also claims to test CPU, memory, I/O and graphics. Hasn’t been updated since 2012.
  • Smartbench – A multi-core-friendly benchmark that measures overall performance. Tests productivity and gaming. Last updated in 2012. Poorly rated on Google Play (3.8 stars).
  • SunSpider – The JavaScript benchmark SunSpider is no longer being updated. Its creators recommend JetStream. Even when it was still popular, the data that SunSpider used was so small that it was more of a cache test than a JavaScript benchmark.
  • WebXPRT– You won’t find the word “Intel” on the BenchmarkXPRT website, but if you check the small print on some Intel websites you’ll find they admit “Intel is a sponsor and member of the BenchmarkXPRT Development Community, and was the major developer of the XPRT family of benchmarks.” Intel also says “Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors.” Bottom line: Intel made these benchmarks to make Intel processors look good and others look bad. WebXPRT should not be used.

I hope you find this article to be of use. If you have any comments please enter them below.

– Rick

Copyright 2016 Rick Schwartz. All rights reserved. Linking to this article is encouraged. All of the comments in this blog are Rick’s alone, and do not reflect the views of his employer.

How to use less than 100MB of mobile data each month

I recently switched carriers from Verizon to Google’s Project Fi. Google only charges you for the data you use, so it is in your best interest to use as little as possible. I used to use 3GB or 4GB of data each month. Now I use less than 100MB of data every month. You read that right. I reduced my data usage by 40x. Read on to learn how to do it and still use your phone every time you need it.

  1. 1Turn off cellular data when you don’t need it– Some apps use cellular data when Wi-Fi is available. Almost all apps use data in the background when you are not using them. I found that I had apps that I never used that wasted large amounts of data. Over an entire month, this really adds up and eats into your monthly data plan. Even with cellular data off, you’ll still be able to make calls and send or receive texts over the cellular network.
  2. Monitor your data usage and uninstall problem apps– It’s essential that you go to Settings and review your cellular data usage. Be aware which apps use the most amount of mobile data. Social media, news and weather apps are notorious for syncing often – even if you rarely use them. If you uninstall Facebook, Snapchat and popular news and weather apps, you’ll be surprised how much data and battery life you save. You can still access Facebook using your mobile browser whenever you want to. News and weather sites can be accessed via browser as well. You can even bookmark them so they appear on your home screen like an app. Try to only use apps like Instagram and web browsers over Wi-Fi, because they use lots of data.
  1. Restrict background data usage– It’s highly recommended that you go to Settings > Data usage and view the app background data for your apps. I’ve enabled ‘Restrict app background data’ on all apps and haven’t had any problems. When you do this, a warning will appear, but you can ignore it. I’ve been doing this for almost a year without any problems whatsoever. I was surprised to find that apps I never use consumed a lot of background data. There is a global setting to restrict background data, but I recommend you do this on a per app basis, so you can enable any apps that have a problem in the future.

Restrict2

  1. Only update apps on Wi-Fi – Make sure you go to Settings in the Play Store app and go to ‘Auto-update apps’ and set it to ‘Do no auto-update apps’ or to ‘Auto-update apps over Wi-Fi only.’ This will save you large amounts of data.
  1. Avoid streaming over mobile – Streaming audio or video uses much more data than text. Download your favorite songs and playlists so you can listen to them offline. Avoid streaming video from sites like YouTube or Netflix over mobile because this can consume extremely large amounts of data. Consider switching to a carrier like T-Mobile with their binge-onplan, which lets you stream endless amounts of music or video without eating into your data plan.
  1. Never use maps with cellular enabled – Google Maps consumes huge amounts of data when you use it for driving directions. Most people don’t know that you can use turn-by-turn driving directions without using any mobile data if you load your directions while you are connected to Wi-Fi. If it ever says “Lost data connection” turn on cellular data for a few seconds and it will fix the problem. Then turn it back off. You can do this with the quick settings menu, so it doesn’t distract you from driving. Better yet, do this when you are waiting for a stop light to change. You can also cache maps before you leave or select a region on a map and have it work offline, but I find that to be unnecessary.
  1. Use Wi-Fi whenever it’s available– Almost everyone has Wi-Fi access at home and work so the only time you should turn on mobile data is when you are on-the-go and out of range of Wi-Fi. Free public hotspots are common and there are apps that will help you find them. Most broadband providers provide access to free Wi-Fi hotspots as well. Another tip is to go to your favorite sites before you leave home in the morning. I sync my email, news app, Twitter and RSS feed apps before I leave the house. This saves me over 100MB a day.

2

  1. Change your sync settings – You might want to try disabling ‘Auto-sync data’ by going to Settings > Accounts > Google and touching the 3 dots in the upper right. When you are connected to Wi-Fi, you can manually sync all of your Google accounts at any time by going to Settings > Accounts > Google and touching the 3 dots in the upper right and selecting ‘Sync now.’ You can also reduce data consumption by adjusting your Inbox to check for mail less often. I have mine set to ‘Never’ and I still receive notifications when new mail comes in. This change is made in the mail app and not on the Settings pages.
  1. Know your daily data budget – If you want to consume less than 1GB of data a month, you need to keep your average data usage under 33MB a day. If you consume 60MB in a single day, don’t worry. It won’t be a problem as long as consume less than 32MB on a few other days. I try to use an average of 3.33MB a day, so I stay under 100MB. It’s not hard to do because I often go days without using any mobile data. If you suspect an app is using too much data, download software like App Tune-up Kitand use it to select the app you want to test. It will run for one minute and measure the amount of mobile data used by the app. [Disclosure: I was on the team that created this app.] Most popular games use large amounts of mobile data. You should only play these apps when you are connected to Wi-Fi.
  1. Avoid apps with ads – Apps with ads consume more mobile data than apps without ads. If the apps you use have ad-free versions available, purchase them. Spending a few bucks will save you money in the long run.

data with title 2

  1. Use other people’s data – If you have a friend or family member with unlimited data, ask if you can tether and share their data. If you’re phone doesn’t support this feature free of charge, there are apps in Google Play like FoxFi that do this very well. Make sure they work with your phone and carrier before buying them. They generally have a trail version.

Using mobile data consumes over twice as much power as Wi-Fi data, so following the above steps won’t just save money, you’ll also extend your battery life. I ended up reducing my monthly phone bill from over $70 to about $23 a month. That’s a savings of around 60%.  Check to see if your carrier offers discounts if you change your plan to one that uses less data. If they don’t consider switching to a carrier who does. The savings add up quickly. In five years, I’ll save $2400.

You don’t have to follow all of the above steps to save data. Even if you only try a few of these suggestions, you could cut your mobile data usage in half. The more steps you follow, the more you’ll save.

– Rick

Copyright 2016 Rick Schwartz. All rights reserved. Linking to this article is encouraged. All of the comments in this blog are mine alone, and do not necessarily reflect the views of my employer.

Follow me on Twitter @mostlytech1

How to Power Profile A Mobile App Using Hardware

This article is the second in a series for mobile software developers. The first article can be found here. It is intended to help developers create apps with better battery life. This article will focus on Best Practices for hardware power measurement. A subsequent article will provide tips how developers can reduce the power consumption of their app. Reducing power consumption results in longer battery life and happier users.

Battery life is now the number one thing consumers care about. Developers need to take action to ensure their app doesn’t not consume too much power, but most of them have no idea how much power there app consumes. You could use software like GameBench or Trepn Profiler to measure power consumption, but those run on your device. Collecting large amounts of power data and storing it locally consumes CPU cycles, which can inflate power readings. Another problem is the fact that popular devices like the Samsung Galaxy S6 and some versions of the Galaxy Note 4 may not report accurate power readings. With these devices, you need to measure power using an off-target hardware-based solution. This article shows you how it’s done.

Monsoon

Good Power Meters Aren’t Cheap

There are different ways to measure the power consumed by mobile devices, but the most popular off-target method is using a Monsoon Power Monitor. This $771 device effectively replaces the battery on your phone. It can measure the voltage, current and power and connects to special PC software which provides control over power data is collected and displayed. After your Monsoon arrives, you need to download this software and documentation from their website. You also need bypass the battery in your phone, so the Monsoon can power it. Although you could connect two banana to mini-grabber cables directly to your phone, the battery gauge and temperature monitoring won’t work unless you leave the battery in and use insulated copper tape as described in the Monsoon manual. Their user guide describes how to prepare your phone so it can be connected to a Monsoon Power Monitor. Once you’ve modified your battery, you’ll need to determine how you are going to charge it. In most cases you’ll just fold back the copper tape on the plus terminal so that battery charges normally. If you have a phone like a Nexus 6, which doesn’t have a removable battery, you got a challenge on your hands. Checkout the Appendix at the end of this article to see why.

It easy to measure power on a phone with a removable battery

It easy to measure power on a phone with a removable battery

Connecting Your Device

Now that you’ve modified your battery, you’re ready to connect your phone to the Monsoon. If you haven’t done so already, download and install the Monsoon software and connect a USB cable to the of the power monitor, so you can install the drivers as described in the manual. Before connecting your phone to the Monsoon you need to perform one final test. Connect your modified battery to the red and black banana plugs on the front on the Monsoon. Make sure the Monsoon is off and press the power button on your phone. If the phone powers up, the connection to the battery has not been broken. Now launch the ‘Power Tool’ software on your PC and turn on the Monsoon. The LED on the front panel of the Monsoon should be green. Press the ‘Refresh’ button and highlight your device on the PC software and click on the Select button. If the software can’t communicate with the Monsoon, power cycle the Power Monitor.Capture3By default, the power supply on the Monsoon is turned off, so you’ll need to turn it on and set the proper voltage. Click on ‘Set Vout’ and enter the proper value for your device. Next, enable ‘Vout,’ and enter the size of your battery. Once you confirm VOUT is enabled on the software, you can power up your phone. Wait until the Android home screen is displayed until you proceed. Next, connect a cable from the USB out on the front of the Monsoon to your device. This will be used to control your device remotely. When USB passthrough mode is set to AUTO, once sampling is started, the direct USB connection is disabled, charging over USB is disabled and samples are measured without the interference of USB charging. As soon as sampling is stopped, the direct USB connection is re-enabled and data can once again be transferred to and from the device over USB

Sizing Up Your App

You should perform a series of tests with your app, and similar apps, so you know how your app compares to the competition. You should measure idle power consumption, average power consumption and peak power consumption. You’ll find step-by-step directions below how to do this.

Measuring Idle Power Consumption

Measuring the power consumed when an app is doing nothing and comparing it to the idle power consumption of your device can show if the app under test is keeping the screen or processor awake. It can also identify problems with analytics and ads. Start by measuring the baseline idle power consumption of your device without any apps running. Since the screen is such a large consumer of power, you should measure idle power with the screen off as well as on and carefully document the screen brightness level. The chart below shows how much power an idle Nexus 6 consumes at various screen brightness levels. Brightness levels are set via ADB script — not using the Android OS slider.

Power consumed by a Nexus 6 at various brightness levels

Power consumed by a Nexus 6 at various brightness levels

Preparing to measure power

  1. Connect your mobile device to the Monsoon Power Monitor.
  2. Launch the Monsoon PowerTool software on your PC and enable Vout as described above.
  3. Power up your smartphone or tablet and wait 5-6 minutes.
  4. Check ‘Power Avg’ on the Monsoon and set the units to mW (100 units/tick).
  5. Turn off all unneeded features like Wi-Fi and Sync and put your device in ‘Airplane Mode.’
  6. Go to Settings and launch the Application Manager. Stop all unneeded apps and services under the ‘Running’ heading.
  7. A full list of Best Practices for the Monsoon is posted at the bottom of this article.

Measuring the idle power of your device and software
Monsoon1

  1. Press the RUN button to start recording power consumption.
  2. Don’t touch your device for at least 60 seconds.
  3. Press the STOP button when you are finished recording and select the on-screen region you want to use for your average. It’s a good idea to record average power readings with and without spikes. To filter out spikes and get a more accurate average, select a region on the Monsoon software without any large spikes (as shown on the right). This should only be done for idle power measurements when you believe the spikes are caused by other apps or the operating system.

Here are some idle power measurements taken on a Samsung Galaxy Note 3 with no apps running in the foreground.

  • Average idle power – screen off – 15.6 mW (without spikes)
  • Average idle power – screen off – 27.8 mW (with spikes)
  • Average idle power – screen brightness min. – 391 mW (without spikes)
  • Average idle power – screen brightness min. – 410 mW (with spikes)
  • Average idle power – screen 50% – 528 mW (without spikes)
  • Average idle power – screen 50% – 557 mW (with spikes)
  • Average idle power – screen 100% – 870 mW (without spikes)
  • Average idle power – screen 100% – 882 mW (with spikes)
  • For comparison purposes, here are a few idle power readings for a Nexus 6 with no apps running in the foreground. The Nexus 6 has a larger screen with considerably more pixels (2560×1440 vs. 1920×1080). This probably accounts for most of the difference in power consumption between these two devices.

  • Average idle power – screen off – 20 mW (without spikes)
  • Average idle power – screen 50% to 100% – 660mW to 1200 mW (including spikes)
  1. After you finish measuring the idle power of your device, launch your app and measure the idle power when it is running. In theory this should be similar to the idle power of the device, but often it’s higher. By comparing the idle power of your app with similar apps, you can determine if your app has a problem.

Here are some idle power measurements taken on a Samsung Galaxy Note 3 before playing two different games:

  • Average power No app running (idle) – 557 mW
  • Average power Temple Run (idle) – 1575 mW (during the first minute while screen awake)
  • Average power Temple Run (idle) – 720 mW (after the screen dims about 60 seconds into the test)
  • Average power Asphalt 8: Airborne (idle) – 2139 mW

Test Details: Duration: 2:00 Screen brightness: 50%; Airplane Mode: On; Wi-Fi enabled (Asphalt 8 – Won’t run without Wi-Fi); All readings above include power spikes.

There are several reasons why Asphalt 8 consumes 36% more power than Temple Run during the first minute of testing. Asphalt 8 has nice visual effects and sound and Temple Run does not. However, when you let the test run for two minutes, Asphalt 8 consumes 197% more power. The biggest reason for the discrepancy is because Asphalt 8 holds a full wakelock, which never lets the screen go to sleep, while Temple Run lets the screen dim after the user defined interval. In my test, this was set to 60 seconds.

Measuring Average Power Consumption

Here are some average power measurements taken on a Samsung Galaxy Note 3 with the same games tested above:

  • Average power Temple Run (in-use) – 1629 mW
  • Average power Asphalt 8: Airborne – [TBD] mW

Test Details: Screen brightness: 50%; Airplane Mode: On; Wi-Fi enabled; All readings above include power spikes.

Measuring Peak Power Consumption

Before measuring the peak power that your software consumes you may want to measure the peak power of one or more popular benchmarks since that will establish a top limit of the power which can be consumed by your device.

Here are some peak power readings taken on the Samsung Galaxy Note 3 for some popular benchmarks:

  • AnTuTu Benchmark v5.7 – Max. power – 9761 mW
  • AnTuTu System Stability Test – Max. power – 9855 mW
  • GFXBench 3.0 – Max. power – 10497 mW (graph shown below)

Test Details: Device: Samsung Galaxy Note 3; Airplane mode: On (except for GFXBench); Wi-Fi: Off; Screen Brightness: 100%; Bluetooth: Off; Sync: Off

benchmark

Power Measurement is Fun

Having a better understanding of mobile power consumption will help you to make more power efficient apps. ThemesThe thought is, if you can measure it, you can act on it. You can make changes to your code and see what the affect is. You can see how your app compares to the competition. You can also answer power-related questions like the following:

Q: Do dark themes really save power?
A: Yes. The average power consumed by the Google News & Weather app with a light theme selected is 893 mW. With a dark theme selected, only 410 mW of power is consumed. That’s a savings of 54%!
theme charts
Test Details: Device: Samsung Galaxy Note 3 with AMOLED display; Airplane mode – On; Wi-Fi: Off; Brightness level – 50% according to slider; Screen mode – Standard; Auto-adjust screen tone – Disabled

Q: Should my app wait to perform certain tasks until a user is on a Wi-Fi network?

A: The answer to this question depends in part on the type of app and the signal strength of your networks. If your app transfers large amounts of data, you should wait until the user connects to Wi-Fi when possible. In the test below I download a 100MB file from a website. Over Wi-Fi the average power consumption was 997 mW and the download took about 65 seconds. Over 4G, the average power consumption was 2291 mW and the download took about 195 seconds. Bottom line: Transmitting large amounts of data over a 4G cellular radio can use over twice as much power. One reason for the high cellular power consumption in my test may be related to signal strength, which only showed 2-bars. Under conditions like that, the phone has to amplify the signal more.

Well-designed apps only download files when the user is connected to Wi-Fi, but give the user the ability override this setting if desired. This is a good approach to follow. Google has code snippets online that show how this can be done.

LTE2

Monsoon Tips & Tricks

The Monsoon User Guide is very long, but doesn’t include any tips how to get the most out of it. As a result, I’ve included some suggestions here:
Cursors

  • To quickly identify minimum and maximum power readings, use cursors as shown on the right. You can also export the results of a profiling session as a CSV file. However, this isn’t ideal, because it takes a long time to export this data and Excel often fails to import all of it. If you do go this route for shorter profiling sessions, use the Statistical MIN and MAX formulas under the Formulas tab/More Functions.
  • If you get a message saying the Monsoon isn’t communicating with your computer, or you can’t start or stop profiling, try power cycling the Monsoon hardware first. If that doesn’t work, reboot your computer.
  • Immediately after starting the Monsoon software, sometimes accurate readings aren’t displayed. Pressing the ‘Run’ button seems to help fix this problem.
  • Range

  • It’s a good idea to use your mouse to set the range of data you wish used to compute the average (as shown on the on the right). This allows you to disregard data at the beginning or end of a profiling session for more accurate readings.
  • You may see the calibration status indicator on the Monsoon software go yellow or red for a few seconds. According to Monsoon support, this doesn’t necessarily mean anything is wrong. If it stays in this state for longer periods, you should investigate.
  • If your power peaks are off-screen, change the units from mW to W.
  • You can turn on any of the available graphs at any time – even if they weren’t enabled when you captured your power data. This is helpful if you want to see the relationship of average power to peak power, or compare maximum power and current readings.
  • Under very heavy loads, you might notice the voltage on the Monsoon hardware drops slightly.
  • The Monsoon software drivers appear to have some stability issues and can cause blue screen crashes. As a result, I recommend you don’t leave it connected to your PC’s USB jack when you are not using it.
  • Make sure to use the offset feature to on power and current values to make your results more clear.

Hardware Power Measurement Best Practices

Here are some best practices you should follow if you want the most accurate power measurements:
QuickSettings

  • Your screen is the single biggest consumer of power and can skew your readings if you don’t consider the following: Make sure the screen brightness does not change between tests. Do not enable ‘Auto’ brightness. Also, turn down your screen brightness to the lowest possible level when taking power measurements. When possible, turn off the screen entirely.
  • Go to Settings and select the Application manager. Swipe to the left until you can see the list of running apps. Close all unneeded apps and stop all unneeded services.
  • Turn off all unneeded features including Wi-Fi, Mobile data, Bluetooth, Location, NFC, Sync, Download booster, etc. Most phones let you do this by swiping down to access a Quick Settings screen like the one shown on the right. Notice how almost everything is turned off. You may want to also turn off all syncing options under Settings > Accounts > Google.
  • Most popular apps have analytics that send data to the cloud periodically. To prevent this for occurring, turn on ‘Airplane Mode,’ and turn off Wi-Fi if your app doesn’t need to communicate with the cloud. This will also prevent apps from automatically downloading updates in the background.
  • AppsRunning

  • If you’re serious about power profiling, consider purchasing a Nexus phone or tablet and only install a minimal number of apps on it. Having lots of apps running in the background affects the accuracy of power measurements. My LTE-enabled Nexus 7 only has 3 apps running on it, while my Verizon Galaxy Note 3, still has 22 or more apps running in the background — after I’ve closed all apps and stopped all unneeded processes.
  • If you are purchasing a new device for power modelling, choose a device with a removable battery that you can easily access with and contacts that you can clip on to.
  • Time your tests. Make sure each test is at least a minute. Longer runs minimize the impact of power spikes on averages.
  • Run each test at least two or three times and average the results. Throw out any values that are noticeably higher than the rest and retest. Even with Airplane mode on and Wi-Fi off, the OS and apps on your device still work in the background. This causes power spikes that can affect the accuracy of your readings. If you have a rooted device, consider using software like RepetiTouch to record your keystrokes. This will ensure your test runs are the same each time.
  • Consider uninstalling apps that relaunch after you close them like Microsoft’s ‘One Drive’ or Nokia’s ‘Here.’
  • Do not setup your device for use with multiple users because that makes it harder to close all of the background apps.
  • Turn off ‘Google Now’ as follows: Turn off “Ok Google” Detection by going to Settings > Accounts > Google > Search > Voice. Select “Ok Google” detection and turn off ‘From the Google app’ and ‘From any screen.’ Turn off ‘Show cards’ under Settings > Accounts > Google > Search > ‘Now cards.’
  • Pause or disable step counters like ‘S Health’ or ‘Google Fit.’ These apps can consume significant CPU cycles while your device is idle.
  • Avoid using your power measurement device with a wearable. Wearables require that Bluetooth is active and have cause multiple apps to run in the background.
  • Make sure your computer doesn’t go to sleep when you are capturing data. If it does, you could lose data. To do so, make sure your PC is charging via AC adapter and not running on battery. Set your power profile so your hard disk goes to sleep after 30 minutes. Set your processor and screen so it never goes to sleep when connected to a power source. Turn off your screen saver. Move your mouse from time to time to let the computer know you are still using it.
  • It’s normal for your phone to do housekeeping after it start up. Wait 5 or 6 minutes after powering up your mobile device before profiling it. I’ve seen power spikes over 8 watts after the Android home screen is visible and the boot up process appears to be complete. Power consumption over 6 watts for 30 seconds or longer isn’t unusual. Sometimes these high power readings are related to app updates, but I’ve also seen this occur in ‘Airplane Mode,’ with Wi-Fi off. These spikes will inflate your power measurements and often have no relation to the activity you are attempting to measure.

Spikes

Appendix – Preparing a Nexus 6 for Power Monitoring

Phones like the Nexus 6 do not have a replaceable batteries. This makes it very challenging to connect power measurement tools like a Monsoon to them. First, you’ll have to get special tools to remove the back of your phone. The iFixit website shows you how to remove the back cover and get access to its battery. You’ll need a special Torx screwdriver to get access the battery of the Nexus 6. Before you order that screwdriver and remove the 22 screws, you should read the next two sections. It could save you some time.

Nexus 6 screws
Sadly after almost completely disassembling my phone, I learned that the battery in the Nexus 6 does not have metal pads like a most cell phones. doorIt has a flex cable that connects to a small 4-pin jack that can be seen under a hidden door (shown on the right). After learning about the special power connector in the Nexus 6, I contacted Monsoon support thinking they must sell a cable assembly for this popular developer device. The Monsoon support rep said they didn’t know how to connect a Monsoon to the Nexus 6, so I referred to their manual, which shows how to create a battery bypass, using flat copper foil and special insulating tape. It’s important that you bypass the battery in your phone, so the Monsoon can power the device. However, the battery needs to remain in place for thermal monitoring and use by the battery fuel gauge. Now that the battery has been bypassed, you’ll need to determine how you are going to charge it. More about that later. I first tried to connect insulated copper tape to the same pads that are used for wireless charging on the Nexus 6, but for some reason that didn’t take the battery out of the circuit. Out of frustration, I took the device to my company’s proto lab for assistance.Wires modThey determined which of the wires on the 4-pin connector were the + and – and broke the connection to the positive wire, so the battery would no longer be in the circuit. You can see their mod on the left. The black wire is attached to a small pad on the Nexus circuit board that is connected to the minus terminal of the battery. The red wire is connected to the + power input on the circuit board. The red wire is connected to a trace that was previously connected to the + side of the battery, but that trace was cut to break the connection, so the Monsoon can power the phone. The gray wire is attached to a pad that connects to the + battery terminal. By mating the red and white banana plugs (as shown on the right), the connection to battery is restored, so it can be charged normally over USB.

Before You Begin

This section isn’t intended to be a how-to. It’s intended to discourage most developers from attempting a mod like this. Before you disassemble your expensive Nexus 6, you need to make sure that you are willing to take the risks described here. If you haven’t done circuit board modifications before, or don’t have all of the proper equipment, don’t attempt this. Your chances of success are poor. I think you’d be better off using a phone with a removable battery like a Samsung Galaxy Note 3 or Galaxy Note 4 for power measurement. You should be able to purchase those for $99 to $299, and they are much easier to connect to a Monsoon Power Monitor. In fact, in a pinch you can connect two banana to mini-grabber cables to a Note 3 without any modifying your phone or battery. It works fine, but the battery gauge won’t work unless you leave the battery in and use insulated copper tape as described in the Monsoon User Guide. If you want a to power model a Nexus phone, keep in mind that the Nexus 4, Nexus 5 and Nexus 6 report accurate battery power using Trepn Profiler, or other software, so you don’t even need a Monsoon. If you decide to try this mod despite my warnings, you are on your own. I cannot answer any questions about this, nor can I be responsible if you damage your device.

– Rick

Copyright 2015 Rick Schwartz. All rights reserved. Linking to this article is encouraged. All of the comments in this blog are Rick’s alone, and do not reflect the views of his employer.


Follow me on Twitter @mostlytech1

Useful Links
Monsoon Tips
Hardware Power Measurement Best Practices

How to Measure Power Consumption Using Free Software

This article is the first in a series for mobile software developers. It is intended to help developers create apps with better battery life. Most developers don’t know if their app has a problem with excessive power consumption, because they don’t have an effective way to measure the amount of power their app consumes. If you can measure it, you can act on it. This article will focus on Best Practices for software power measurement. A subsequent article will provide tips how developers can reduce the power consumption of their app. Reducing power consumption results in longer battery life and happier users.

It's easy to measure the power consumption of a mobile device

It’s easy to measure the power consumption of a mobile device

There are two different ways to measure power on a mobile device. You can do it using hardware or software. I’ll cover the hardware-based method in a separate article. This post will focus on software-based power measurement. Trepn Profiler is an Android application that can display the real-time power consumption on a smartphone or tablet. I happen to work on the team who created it, but I that’s not why I include it in this article. I include it because it’s the only app I’ve found that reports accurate real-time power consumption. GameBench is a great app, but the current version has to run a few minutes before power data is reported. If you are aware of other app that report accurate real-time power, please mention them in the comments section below and I will include them in this article. Because Trepn runs on-target, your mobile device doesn’t have to be connected to a computer or special hardware in order to capture power data. You can use your phone on-the-go, and profile in the foreground or background. If you want to give it a try, Trepn is available as a free download from Google Play.

Here are just a few of the questions you can answer with software like Trepn Profiler:

  • Which Android video conferencing app uses less power: Google Hangouts, ooVoo, Skype, Tango or Viber?
  • Should I wait to download updates over Wi-Fi if my battery is low and I’m only getting two bars?
  • How much more power does a free app with ads consume over a paid app without ads?
  • Does a dark background really consume less power than a light one?
  • How much power do I save when I use hardware decoding on a high-resolution video file?
  • Does that new phone you’re considering buying consume more or less power than your current one?
  • What is the impact of settings on power consumption (e.g. do you save noticeable amounts of power when you turn off Bluetooth, Wi-Fi or 4G?)
  • Which activity consumes more power? Gaming or 4K video recording?


Before you start profiling, there are several things you should do to increase your chances of getting the most accurate power measurements possible.

Software Power Measurement Best Practices

Here are some best practices for measuring power with Trepn Profiler:

  1. Remove your USB cable – Trepn cannot display accurate power readings when your mobile device is charging or connected to a computer.

Tip: If you need a USB connection for device control and data transfer, use ADB over Wi-Fi as described here, but be aware it can cause power spikes that slightly increase your power readings.

  1. Make sure your device reports accurate battery power – How do you know if your device reports accurate battery power?  Battery power should appear in the list of data points in Trepn Profiler. After you check the “Battery Power” data point, touch the Back button and “Profile System.” Then go to “Stats” view.” You should see a value in the average power column when your device is idle between 400mW to 1000mW for smartphones with 4” to 5” screens, 700 mW to 2500mW for 6” smartphones or 7” tablets, and 2000mW to 4000mW for 10” or larger tablets. Devices that are known to report accurate battery power are listed here. If you see values like 0 or 1.80mW, your device cannot display accurate battery power.

awake

  1. Make sure your processor stays awake– To do this, check “Acquire Wakelock while Profiling” on the Trepn General Settings page. To illustrate the importance of this, I did two power tests Without forcing the processor to stay awake, the average power reading was 456mW. With a processor wakelock set, the power was 249mW. That’s an 83% error, which shows how important this setting can be. When the processor goes to sleep, data collection in Trepn may temporarily stop, or power readings can jump to levels that are lower or higher than they should be. When data collection stops for long periods, your average power readings will be higher than they should be, because Trepn will average any power spikes over a shorter time period. The only time you should not check “Acquire wakelocks…” is when you are using Trepn to test whether an app is keeping the processor awake by holding a partial wakelock.

asleep

  1. Minimize background processes/reduce system overhead – It’s not enough to close everything in Recent Apps. Open the Apps manager, go to Running and close all unneeded apps and stop all unneeded services.  How much power can background apps consume? I measured 1043mW power on my idle tablet before I closed all unused apps. After closing unused apps the power consumed dropped to 726mW. That’s a 30% reduction in power. Here are some recommendations how to minimize background activity:
      Minimize the number of apps you have running

      Minimize the number of apps you have running

    • Pure Android devices like the Nexus 5 or Nexus 7 are better for testing, because they have fewer preinstalled apps and less things running in the background.
    • Don’t check more data points than you need. This increases system resource consumption.
    • Make sure “Show Per-Application Statistics” is unchecked — unless you need to see the mobile and Wi-Fi data transmitted.
    • Profile in the background with no visible graphs or on-screen overlays. This results in almost half the power consumption, and more accurate power readings. After profiling, data can be viewed or saved so it can be analyzed later. Step-by-step instructions are listed here.
    • Pause or disable step counters like “S Health” or “Google Fit.” These apps can consume significant amounts of CPU cycles while your mobile device is idle.
    • Turn off step-counters and always-listening apps like Google Now

      Turn off step-counters and always-listening apps like Google Now

    • Turn off ‘Google Now’ as follows: Turn off “Ok Google” Detection by going to Settings > Accounts > Google > Search > Voice. Select “Ok Google” detection and turn off ‘From the Google app’ and ‘From any screen.’ Turn off ‘Show cards’ under Settings > Accounts > Google > Search > ‘Now cards.’
    • Consider uninstalling apps like Microsoft’s “One Drive” or Nokia’s “Here” that relaunch themselves after you close them.
    • Use  Quick Settings to turn off things like sync

      Use Quick Settings to turn off things like sync

    • Do not setup your device for use with multiple users.
    • Avoid using your device with a wearable, because they require that multiple apps are running at once and Bluetooth is always active.
    • Most popular apps have analytics that send data to the cloud periodically. To prevent this, turn on Airplane mode if your app doesn’t need to communicate with the cloud.
  2. Focus on what you’re measuring – Turn off everything that is not related to what you want to measure. If network connectivity is not needed, put your device in Airplane Mode. This will prevent your device from doing software updates in the background. Make sure Wi-Fi is off too. Some devices turn it off automatically when Airplane mode is enabled, others do not. Other things you may wish to turn off: Display (when possible), Ambient screen, Bluetooth, Location (GPS), Wi-Fi and Mobile networks (if not already in Airplane Mode).You may want to also turn off all syncing options under Settings > Accounts > Google. When performing screen power tests, set to processor to its lowest possible frequency to reduce effect of CPU on power.
  1. Be precise and test several times – It’s important that you are consistent and confirm your test results by retesting. Here are some suggestions how to do this:
      Dark backgrounds use much less power

      Dark backgrounds use much less power

    • Be very aware of your screen background. Light backgrounds use more power than dark backgrounds. How much more? The average power consumed by the Google News & Weather app with a light theme selected is 893 mW. With a dark theme selected, only 410 mW of power is consumed. That’s a power reduction of 54%.
    • Use a stopwatch to make sure your tests run the same duration every time.
    • When measuring average power consumption, profile for at least two minutes in Trepn Profiler’s Advanced Mode. Then save your results as a Trepn .db file. Touch the “Analyze Run” button and select the saved file. This will provide more accurate average values than the ones displayed while profiling.
    • Run each test at least two or three times and average the results. Throw out any values that are noticeably higher than the rest and retest. If you have a rooted device, consider using software like RepetiTouch to record your keystrokes. This will ensure your test runs are the same each time.
    • Keep everything as close to the same as possible on your tests, including background apps and services. After you finish a test, go back and check the running apps, if the list of apps is different, close the newly opened apps and test again.
  1. Minimize the impact of the screen – The display and its backlight are often the biggest consumers of power in a mobile device.

    • Always document screen brightness levels to make sure you are consistent.
    • Turn screen brightness to the lowest possible level on your tests. Avoid using the Android Settings page to set screen brightness levels because the slider calibration varies from device to device. Also slider settings are not easily reproducible.

    For rooted commercial devices (set brightness to 10):

    adb shell “su -c ‘echo 10 > /sys/class/leds/lcd-backlight/brightness'”

     

    For rooted MDPs:

    adb root
    adb wait-for-device
    adb remount
    adb shell “echo 10 > /sys/class/leds/lcd-backlight/brightness”
     

      1. Compare apples to apples – Don’t compare on-target measurements with off-target (e.g. Monsoon Power Monitor) measurements. On-target measurements and always going to be higher – sometimes significantly higher, so you cannot compare them with off-target measurements using hardware. However, when you run Trepn on a device connected to a Monsoon, you’ll find it’s very accurate (as shown in the chart below).

      Trepn is surprisingly  accurate -- even when compared to expensive hardware like the Monsoon Power Monitor

      Trepn is surprisingly accurate — even when compared to expensive hardware like a Monsoon Power Monitor


      After using Trepn, you should know exactly how much power your app consumes. Measure the power your app uses when idle and in-use and compare this with apps of the same type. A follow-up article will tell you how to reduce the power consumption of your app.

      – Rick

      Copyright 2015 Rick Schwartz. All rights reserved. Linking to this article is encouraged. All of the comments in this blog are Rick’s alone, and do not reflect the views of his employer.


      Follow me on Twitter @mostlytech1

      Software Power Measurement Best Practices

    The True Cost of Owning An iPhone 5

    The Huffington Post recently did a story on the true cost of purchasing a smartphone from your carrier. Although that article was based on the iPhone 5, other carrier-offered smartphones cost similar amounts.

    original

    You can save thousands a year, by purchasing an unlocked phone and using it with a prepaid phone plan. You will be surprised just how much these plans have changed. They now allow the best smartphones and use the major carrier networks. More info.

    – Rick

    How to Save Almost $1000 a Year on Your Mobile Bill

    Last updated: July 12, 2013

    Verizon's Share Everything Plan costs a typical family of four $230 to $250 a month

    Verizon’s Share Everything Plan costs a typical family of four $230 to $250 a month

    Cell phone service seems to get more expensive each year in the U.S. Verizon charges $40 a month for each phone — plus another $50 to $100 per month for data for their Share Everything family plan. That means a family of four who uses 2GB of data each will pay $3000 a year for their mobile phone service. Even a modest plan with only two smartphones, one basic phone and 4GB of shared data costs $180 a month. This doesn’t include the upfront cost of the phones and all of the taxes and surcharges which carriers add each month. The true cost of owning an iPhone 5 has been calculated to be at least $1800 a year! By switching to a prepaid plan, you can save almost $1000 a year — and end up with unlimited data. Families can save even more. Even if you live in Europe and don’t pay as much for cell phone service, there are some compelling reasons to purchase an unlocked phone and go prepaid. Read on to learn why.

    It's now possible to use smartphones like the Nexus 4 with prepaid plans

    It’s now possible to use the most advanced smartphones with prepaid plans

    Which Phone Should You Buy?

    Carriers like Verizon offer prepaid plans that cost $50 to $80 a month, but they come with really bad phones. If you think this doesn’t sound like a great deal, you’re right. There are other companies who offer prepaid plans that cost a fraction of what Verizon charges, but they also include bad or outdated phones. You don’t have to compromise on the quality of your phone in order to go prepaid. You can buy any smartphone you want and use it with prepaid plans from AT&T, T-Mobile and others. You just need to make sure your phone works on the type of network your carrier has. The phone I’ll be using as an example in this article is much better than your current phone and costs less.

    A typical prepaid phone

    Prepaid phones like this should be avoided


    You should purchase an unlocked phone if you want the most flexibility. Even though they cost more upfront, you’ll save money in the long run. With an unlocked phone, you don’t have to sign a two-year contract and can switch carriers at any time. Previously, you had to pay around $600 for an unlocked phone, but now you can get an unlocked Nexus 4 for only $299. The Nexus 4 has the fastest mobile processor on the planet, along with a 4.7” 1280×768 display, 8MP camera and 2GB of RAM. It’s also the first smartphone which runs Android 4.2. If you’re an iPhone person don’t worry, we’ll talk about a prepaid plan for unlocked iPhones below.

    Update: Since the Nexus 4 has been sold out much of the time in the online Google Play store, it’s good to know that all T-Mobile locations are now stocking it.

    Update (7/12): Sprint launches new guaranteed for life unlimited data plan. More info

    What is an Unlocked Phone?

  2. An unlocked phone is a phone that’s not locked to a single carrier
  3. Choose your carrier and phone independently, as long as those carriers work on a GSM network
  4. Unlocked GSM phones include a SIM card which is programmed with your information
  5. Insert your SIM card into another unlocked phone without losing your contacts
  6. Unlocked phones like the Nexus 4 run on any GSM Network. That means you can jump between AT&T, T-Mobile and other pre-paid providers. Phones like the Nexus 4 and iPhone 5 can also be used with international SIM cards while traveling. Cricket Wireless offers the iPhone 5 and MetroPCS offers the Galaxy S III, but these phones will cost you more than the Nexus 4. If you’re looking for a more affordable phone, get a Nexus 4 or a Samsung Galaxy II.

    Other unlocked phones include the LG Optimus 4X HD, Huawei Ascend P1, Samsung Galaxy Beam, Nokia 808 PureView and Sony Xperia P.

    Why Choose an Unlocked Phone Over a Prepaid Phone?

  7. Better selection of available phones
  8. Change GSM carriers without changing phones
  9. More of the best new phones are available
  10. Better for overseas use
  11. More customization options
  12. Which Plan Should You Choose?

    Being off-contract lets you choose from a wide range of different prepaid plans from AT&T, T-Mobile and Verizon, as well as companies like MetroPCS, Straight Talk and TracFone. Although there are many different prepaid plans available, it seems most people prefer one of the following two plans:

    Recommended Option 1 – T-Mobile Prepaid 4G
    One of the best is T-Mobile’s $30 pre-paid plan. It’s perfect for people who don’t make a lot of voice calls, but use lots of data. It has unlimited data, unlimited messaging and 100 voice minutes a month. Although they say this plan has unlimited data, they start throttling after you use 5GB of data. Most current unlimited data plans throttle data as well, you just probably don’t realize it.

    Why 100 minutes won’t be a problem for most people
    The T-Mobile plan is perfect for my kids, because they don’t talk much on their phones, but send over 1000 texts a month each and use lots of data. Although the T-Mobile plan only has 100 minutes, that’s per person, so it’s 400 minutes for a family of four. Extra minutes cost 10 cents each, so it’s not a big deal if you go over a little. 10 cents a minute is much less than carriers typically charge for overages (it’s more like $0.45 a min). If you are a sales person the $30 a month T-Mobile plan is probably not right for you, however T-Mobile has a $50 plan with unlimited talk.

    T-Mobile has one of the best pre-paid plans because it's inexpensive and works with premium phones

    T-Mobile has one of the best values in pre-paid phone plans


    Recommended Option 2 – Straight Talk
    Consumer Reports recommends Straight Talk’s prepaid plans, which are available from Walmart. Consumer Reports says surveys show people are happier with Straight Talk, than with normal contract mobile service from any of the major carriers. Straight Talk has several plans, including $45 a month for unlimited talk, text and data. That’s half the price of Verizon’s cheapest unlimited plan. I’m told that Straight Talk uses AT&T network.

    You can even get a prepaid plan for the new iPhone 5

    You can even get a prepaid plan for the new iPhone 5

    Big News: Walmart’s now offers the iPhone 5 and iPhone 4 with unlimited Straight Talk plans for $45 a month.

    Recommended Option 3 – Cricket prepaid for the iPhone
    There are prepaid wireless plans from Cricket Wireless and others, however Virgin’s $30 unlimited prepaid plan looks good to me. Virgin has three different plans, which all come with unlimited data and text messages. For $35 you get 300 minutes of talk time. For $45 you get 1200 minutes, and for $55, you get unlimited minutes. More details why your next iPhone should be prepaid.

    How to Activate Your Phone on a Prepaid Plan

    Before activating your phone, you need to determine what size SIM your phone uses. The new Nexus 4 and iPhone 5 both have microSIMs. If you’re not sure about your phone, check the manufacturers website, or check Google. Next, you need to decide which plan you wish to use. I’ll detail the activation process for T-Mobile, but all plans are similar. You should order a SIM when you order your phone. T-Mobile charges $1 for their SIM Card Activation Kit.

    After your phone and SIM arrive you’re ready to activate your phone. Everything you need to know is listed here. I suggest you watch their video and make sure to have the account number from your current mobile provider ready before you start. Activation should take you 10-15 minutes or less.

    The true cost of a smartphone is much higher than your think

    The true cost of getting a smartphone from a carrier is much higher than your think

    How Much Money Will You Save?

    Although the freedom to switch carriers without a penalty, or buy a new phone whenever you want is great, the main reason to go prepaid is to save money. Just exactly how much will you save? AT&T’s cheapest Nexus 4/iPhone 5-compatible plan with similar features to the T-Mobile plan described above (450 minutes, 5GB of 4G data and unlimited messaging), costs $109.99 per month per person.

    The annual cost for a smartphone running on T-Mobile’s pre-paid plan is only $361. That’s a fraction of what you’re paying your carrier today.

    How Much You’ll Save Over a Several Traditional AT&T Plans
    Annual cost of a smartphone running on the least expensive AT&T plan with 3GB of data: $828
    Total yearly savings per person with a T-Mobile’s prepaid plan: $467
    Total yearly savings for a family of four: $1868

    Annual cost of a smartphone on a AT&T plan with 5GB of data: $1320
    Total yearly savings for a single person with a T-Mobile’s prepaid plan: $959
    Total yearly savings for a family of four: $3836

    How Much You’ll Save Over a Traditional Verizon Plan
    Annual cost for a family of four on Verizon’s Share Everything plan with 2GB of data per person: $3000
    Total yearly savings for a family of four using T-Mobile’s prepaid plan: $1556
    Savings for a family of four over an older Verizon Family Plan: $1316

    What are the Downsides?

    As far as I can tell, the risks of switching to a prepaid mobile plan are small, as long as you buy a good unlocked phone like the Nexus 4. The Nexus 4 does not officially support LTE, but I don’t see that as a deal breaker. Read why below. A Consumer Reports survey says prepaid phone users are actually happier than non-prepaid phone users. T-Mobile might not be the best carrier, but I’ve come to the conclusion that all U.S. carriers are bad for one reason or another. Verizon may have better 4G coverage in some areas, but is that really worth almost $1000 for each member of your family? I don’t think so.

    Reasons why the lack of LTE on the Nexus 4 may not be a problem for you
    LTE support isn’t offered in all cities and countries yet. Even if it is available in your city, you still won’t get it a lot of the time. If the lack of LTE bothers you, you should buy another unlocked phone with LTE support or switch to AT&T, which supports HSPA+, which is capable of speeds that are almost as fast as LTE (up to 21 Mbps). Another factor you should consider is the percentage of time your phone will be out of range of a broadband Wi-Fi connection. I spend the majority of my time either in the office or a home where there is access to fast Wi-Fi.

    An Unconventional Way to Save Even More

    I recently read an article about someone who used a 7″ tablet instead of a smartphone for an entire month. At first this sounds crazy, but you can buy a cellular-enabled Nexus 7 for only $299 and add it to an existing carrier plan for only $10 to $20 a month. You can make calls with a Bluetooth earpiece just like a normal phone. You would be using this device on Verizon’s, AT&T’s or Sprint’s network, so your coverage would be no different than a normal smartphone. Obviously this wouldn’t work for someone who didn’t carry a backpack or briefcase where they could store the device, but it’s not as crazy as it sounds. If I was someone who didn’t make many voice calls, I would seriously consider this option.

    If This Is So Great, Why Haven’t I Switched Yet?

    Once my wife’s contract is up, we may switch to T-Mobile’s $30 prepaid plan. If she likes it, I’ll switch the rest of my family members over. I have several friends who have already switched and they are happy. Besides, if we don’t like T-Mobile, we can switch to AT&T (or another prepaid carrier) after 30 days without a penalty. If a better phone comes out in three months, we can use it without paying a penalty. We’ll pay more up front for an unlocked phone, but we’ll quickly make up the difference in 3 to 5 months (depending on the phone). You should look into switching too. Even if you have a less expensive Family plan, you’ll still save over a thousand a year if you switch. Imagine what you could to with all of that money.

    Where to Read More

    Prepaid or postpaid?: The fight for your cell phone dollars
    One-third of U.S. smartphone sales in Q1 were prepaid

    – Rick

    Copyright 2013 Rick Schwartz. All rights reserved. Linking to this article is encouraged.

    Follow me on Twitter @mostlytech1

    Seven Mistakes That Could Jeopardize Google’s Mobile Future

    Last update: May 26, 2013

    Five years ago few thought Google could ever challenge Apple when it came to mobile technology. Now Android is leading the way in many areas. Google got where they are today thanks to a well-executed strategy and lots of help from Apple, but mistakes they are making now could jeopardize the future of Android.

    The top three U.S. Big Box retailers produce almost 600 billion dollars in revenue

    Traditional retailers are still important. The top three big-box retailers produce almost $600 billion in revenue a year

    1. Largely Ignoring the Traditional Retail Channel

    E-commerce sites like Amazon.com might be the future, but big-box retailers like Walmart, Best Buy and Costco produce 12 times more revenue than Amazon does today. Apple understands the importance of retail and sells huge quantities of smartphones and tablets through this channel. Google has met with companies like Best Buy before, but most retailers don’t like them because they sell devices direct to consumers for less money than the retailers need to make a good profit. Google also doesn’t spend millions of dollars on retail end-caps, marketing and product training like Apple and Samsung do. I believe Google needs to hire someone who understands how to work with traditional retailers and expand their presence in brick and mortar stores.

    One explanation why Google has been ignoring traditional retailers could be they are planning to open their own stores. Although Google originally denied this, there is now evidence they may be going ahead with this. I suspect we’ll see them start with only a few stores however. It would take years and lots of money to expand their reach into most major U.S. cities.

    2. Having One of the Worst e-Commerce Sites

    Many Google products are not available from major retailers. If you want to buy a product like a 16GB Nexus 10, there is only one place to get it today: the Google Play website. Although Google Play works well for app sales, it gets failing grades in the area of physical fulfillment of products. Their first launch of of Nexus One was understandably a disaster, but the company has had years to fix these problems and they have not done so. All three of their recent Nexus launches were horrible in every way. Even the e-commerce areas of their Google Play website were unable to support the traffic. That’s really surprising. I haven’t seen a site fail so badly since the early days of the Internet. I believe Google needs to fire the people in charge of their current e-commerce and fulfillment operations and start over, or farm out the business to someone like Amazon, who understands how to do e-commerce right.

    3. Making Better Apps for Competitive Platforms

    Some of Google’s apps are now longer better on iOS than Android. Examples include Google Mail, Google Maps and YouTube, which all have advantages on iOS currently. While this could be temporary, it makes no sense to favor a competitor’s platform over your own. More details.

    Update: Since this article was first written, Google has improved their Maps and YouTube apps, so I believe their Android apps now have advantages in some areas.

    Over-dependence on the cloud can be a bad thing

    Overdependence on the cloud can be a bad thing

    4. Forcing Consumers to Use the Cloud

    It’s clear Google wants everyone to use the cloud, but shipping one of your flagship smartphones with only 8-gigabytes of local storage was a poor decision. Especially in light of the fact the Nexus 4 doesn’t have a memory expansion slot, like the Samsung Galaxy S III, and many other Android phones. An 8GB Nexus 4 has less than 6GB of free space available out of the box. Since my apps alone occupy over 3GB of space, that leaves only enough room for a single movie download. Even if you don’t download movies, you might still have problems. Popular games like Modern Warfare 3 and 9MM use almost 2 GB of storage space. Sure you could delete a few large apps to free up space, but you shouldn’t have to.

    Google expects us to store our movies, music, photos and documents in the cloud, but what if we want watch a movie on a plane, or we need to access an important file at a location with no cellular or Wi-Fi access? This could be a big problem. Apple downloads its media and doesn’t stream it like Google does. Google does allow you to download (or pin) media from Google Play, but you need free space on your device to do so.

    Storing all of you media the cloud can also be problematic because Google Drive and all other cloud-based systems occasionally go down. Google claims 99.948% uptime, but that corresponds to 7 minutes of downtime a month, which is a big deal if a Google service is down when you’re trying to access data from it. That’s why you should always try to carry essential files on your device (or ‘pin’ them so they are accessible).

    Less than 1% of all Android users were running the newest version of Android on 12/3.

    Only 1.2% of all Android users were running the newest version of the OS on January 3rd

    5. Allowing Others to Seriously Weaken Your Platform

    Carriers and handset manufacturers unintentionally hurt the Android platform by insisting on customizing the software on their mobile devices. This causes OS fragmentation, support issues and customer frustration, because users have to wait so long to get bug fixes and new features. Apple has a “take it or leave it” attitude with carriers, and forces them to limit customization, so users can download updates on the first day they are available. This is one of the strongest advantages iOS has over Android today. Google has made progress on this issue with their line of Nexus phones, but even those devices have carrier bloatware and don’t always receive OS updates when they are first available. Just how bad is OS fragmentation on the Android platform? As of January 3rd, only 1.2% of all Android users were running the newest version of Android, while over 60% of Apple users were running the newest version of iOS. 59% of Android users are stuck using an OS that is now over two years old. Google decided to call Android 4.2 Jelly Bean so they could say that 10% of all Android users run that version, but that’s far from a solution. Google must address this issue in 2013.

    Android 4.2′s calendar bug is evidence that Google is rushing products to market before they are ready

    Android 4.2′s calendar bug was evidence that Google was rushing products to market before they were ready

    6. Releasing New Products Before They Are Ready

    Lately it seems Google is trying to do too much at once, and is releasing new technologies before they are ready. For example, proper testing would have exposed the December bug in Android 4.2. That issue was fixed in a software update, but there are other Android 4.2 bugs like the Auto-brightness bug, which should have been caught. In addition, key Android 4.2 features like Miracast steaming don’t work on the Nexus 10 and other devices. Google’s haste has also broken some of the biggest advantages of Android 4.1 on some devices and has some saying Android is becoming too complex for its own good. Not all of Android’s issues are software-related. Some of Google’s newest Nexus devices were released without a single accessory (e.g. dock, case, etc.) This caused frustration among some users. There is simply no excuse for this type of poor planning. Google needs to slow down and take the time needed to do things right.

    7. Eliminating Some of Android’s Biggest Advantages

    Hardware choices are good, but Google should strongly encourage manufacturers to make Android devices with Android’s signature features like slots for removable memory, removable batteries, standard micro USB and micro HDMI ports. Expandable storage, standard ports and removable batteries are some of the key selling points of the Android platform and the reason why many people are switching from iPhone to Android devices. Removing these advantages from Nexus devices and allowing manufacturers to remove them from their devices seriously weakens the Android platform.

    Final Thoughts

    Google has come a long way in the past five years, but it seems like their phenomenal success is going to their heads. Apple may be down right now, but stupid mistakes like these are what allowed Google to steal so much market share in such a short time period. I hope Google can address some these issues before it’s too late.

    Do you agree Google is making some big mistakes, or am I just overreacting? Let me know in the comments section. Thanks.

    – Rick

    Copyright 2013 Rick Schwartz. All rights reserved. Linking to this article is encouraged.

    Follow me on Twitter @mostlytech1