I think it's important to highlight that these benefits aren't exclusive to Safari; they encompass all of WebKit on OS X. Unlike Google who has inexorably tied Blink to Chrome, Apple pours most of its efforts into WebKit itself. As such, any developer using WebKit, especially on OS X, gets these benefits.
A great example is how each browser handles per-tab processes: with Chrome, this architecture is part of Chrome itself. In contrast, Safari's implementation is baked in at the framework level with WebKit.
The WebKit dev team really pushes for power efficiency in a much bigger way than the Chrome dev team does. Things like heavy JS and content blocking lists getting compiled down into bytecode via LLVM are both products of the WebKit dev team's focus on the race to idle.
I think it's also worth noting that there is a large difference in the two companies' vision for the web: Apple sees the browser as a vehicle for viewing websites. Google sees it as something more akin to an operating system. As such, it's only natural that their end goals are different.
Once you learn that Safari gives you a longer battery life and you are using a tablet or laptop for every day browsing activity it makes it hard to choose anything other than Safari for this reason alone. Choosing Safari means I can waste more time reading hacker news. Who doesn't want that?
Not particularly. iOS browsers all use WebKit, regardless of which app it is. iOS doesn't allow third-party rendering engines, so every browser gets these supposed WebKit battery benefits.
Note that these tests were conducted on a MacBook – presumably running OS X. Apple invested a lot of time optimizing Safari and OS X for low power usage, so it's not exactly surprising that Safari wins in most cases. It would be very interesting the see a comparison with Windows and Linux (if possible on the same hardware).
Lots of other commenters have remarked about the lacking rigor and narrow scope of the tests. It would be interesting (and time consuming) to re-run this test with many more parameters:
* Fresh install of OSX vs fresh install of Win8.1/Win10 on capable Macbook. (I'm unsure about Linux or other distros running on Macbooks, add that to the test if it's feasible.)
* Javascript enabled and disabled.
* Flash enabled and disabled. As well as Silverlight and other media players.
* Various adblockers, tracking blockers, and content filters (like Adblock vs Adblock Plus vs uBlock vs uBlock origin, etc. And uMatrix and Ghostery et al.) This could become its own research project.
* Logged into tracking sites (e.g. Facebook) vs logged out.
Maybe this testing could be automated with Puppet/Chef?
Edit: Windows 10 would be a definite option instead of Win8.1. I was unaware Win10 would operate on a Macbook, but in retrospect I suppose there's no reason it wouldn't.
---
Note that high-power-consuming sites also consume more electricity on desktop PCs; this is less of a concern because they are on a constantly-replenished power system. The concern may be closer to that for CFL vs incandescent lights, where we can make a few changes to the system and make it vastly more efficient, multiplied by a large userbase.
I upvoted you because Apple's drivers for Windows are notoriously bad, but the major impact is on user input (trackpad, for example) rather than on performance (in fact, Windows tends to perform better than OS X on a number of tasks on a given hardware configuration) so I think it would still make sense to run the test on Windows on identical hardware.
its not about speed its about power. if hardware isnt even instructed to go into sleep mode for example, there will be large differences.. which tends to happen on macbooks running windows.
Regarding Windows 10 on a MacBook via Boot Camp, I can confirm that it works; my boss has been running insider builds on his MacBook for a little while. Just make sure that if you get to Windows 10 by upgrading from a previous version, you repair the Apple driver installation afterward.
Desktop PCs don't have battery concerns, certainly, but electricity still costs money, and if you can reduce the power usage of your computer by a significant amount, that can translate directly to saving money.
The cost of electricity for running a desktop computer is on the order of 2 cents per hour (assuming it draws around 200 W while browsing). If you reduce that by 20%, you save a whopping $8 a year if you spend 5 hours browsing every day.
No, this is mainly motivated by laptops, and I'd say it's even more related to thermal management than battery life. Macbooks are notorious for being very hot under high load, so naturally Apple wants a common task like browsing to be low load/heat.
Hasn't Don Melton discussed in a number of podcasts that Apple places a priority on energy efficiency? Battery life is a key selling point for Apple devices. Chrome's priorities have simply been different.
Yeah, it'd be a lot more interesting to see results for Linux and Windows, too.
The test that'd be the most interesting to me is actually Chrome on ChromeOS vs. Chrome and Firefox on Linux on the same hardware. My subjective impression from using ChromeOS is that it's much faster and more efficient than Chrome on other platforms, but I'm curious if that's really true.
I wouldn't be surprised either, but the methodology for the testing doesn't seem to be fully explained, so it might lack rigor. Is it a fresh install of the OS? Are all of the caches and histories clean? What plugins are enabled?
Performance can vary based on how you configure your browser and what extensions you have enabled. I get less battery using Chrome, but it's configured in a way that I think is a superior experience, and most of the time my notebook is plugged in.
There might be unsurprising trade-offs between speed and battery life. (And if you get things done faster, does that offset the drain?) For me, usually time, not battery life, is the most scarce resource. Obviously I'd prefer to have more of both.
Yes, I'd also like to know the status of Flash in particular. However, they were pretty clear about the methodology of their test - their Macbook was factory-restored, they measured power using current measurement at the DC input and integrating over time, and all of the tests were automated usage. It's certainly the best power analysis that I've seen posted to HN in a while.
I'd love to see more of this in the future - a lot of tech gets thrown around on HN for its power efficiency, (GPU acceleration, media decoders, even different CSS animation types) and it would be nice to have actual numbers.
> We used a factory-restored MacBook Pro Retina 13” to test each website on one internet browser at a time. No programs other than the browser were open.
I'm pretty sure a factory resetted Mac is a fresh install and that it won't have any caches or history. And since they don't mention plugins I'm going to make a wild assumption here and say they didn't install any after having loaded up the browsers on the machine.
Ah, I skipped down to "Testing Philosophy" out of habit when looking at benchmarks. It still doesn't say if the computer is rebooted fresh after each test, but I'd like give the benefit of the doubt on more obvious things like that.
There is nothing magic about Safari. People have been complaining for years, the only reason for Chrome to use that much more CPU is that they clearly don't care. Whether they're not telling OS X when they're idle and can sleep or they're using inefficient older APIs or what, Google needs to fix it.
Wouldn't surprise me if os x is hard coded to display its own apps more favorably. Brings to mind how apple hard coded the wireless signal bars to display better AT&T signal on the original iPhone to boost sales.
I wouldn't be surprised if it were the case, though. IE is tailored to Windows, Windows is tailored to IE, so they can optimise for the best power consumption. Like what Apple does with Safari.
Forgive my cynicism, but I see searches for alternate metrics as probable fishing expeditions for silver linings on falling behind.
Looking at the results, and the above example of IE doing well in the past, everything seems to neatly inversely correlate with my experiences when checking caniuse.com for recent standards. (At the few sites where firefox does worse than chrome, I would wonder if the site is written for firefox then made adequate on the others == less -webkit-css and more attentions to the "best" -moz-css animations, etc.)
Since IE was the biggest failure on caniuse but is rapidly being eclipsed by safari, naturally they must pass the best power usage baton as well if they can be coaxed into otherwise equivalent environments.
A standard to handle graceful prioritization and intentional degradation for power saving could perhaps put this trick to sleep.
For a long time I have been trying to switch to Safari, but the UI just does not work for my use case. I really need tabs with site icons, and an address bar that goes side to side and does not auto center text.
Are there any good alternatives to Safari that also use WebKit? Something that would be more efficient, but with a more traditional interface. To each his own, of course, but it would kill apple to make some of the more recent changes to Safari optional.
Same here. I could run just about everything I needed (notably, 1Password and µBlock) and be very happy with Safari if it weren't for the inexplicable lack of favicons on tabs. There are some SIMBL hacks and such, but I just want that simple feature built in.
What kills it for me is the `Command + number` shortcut - that triggers bookmarks instead of tabs (like in Chrome or FF), a setting that can't be overridden :/
Even if an app doesn't have an override for chosen key assignments, you should be able to override anything visible in a menu by using System Preferences (Keyboard category, Shortcuts tab, App Shortcuts item).
Like you say, in the end, the point is, Safari would be a much better browser if it's UI was much more customizable. Of course, that's completely against Apple's idea that they know how it should look, and if your opinion is different, it's simply because you are an idiot. I really wish they would back away from that attitude, and allow more customization.
For me it's the other way round, i've been trying to use Firefox but the "pinch to zoom" feature in Safari is so smooth, and so crappy in Firefox, that i always keep coming back to Safari...
If you read a lot of text on a Macbook, being able to zoom quickly and efficiently becomes a high priority.
Things like this are much more important for me than energy-efficiency.
I use the text reader built into the OS, due to my Dyslexia, so I guess I never noticed :) For me it's just highlight and press the key to have the test read to me, I have "Samantha" cranked all the way to the top speed. That said, Chrome also has very nice pinch to zoom nowadays.
You may want to get a checkup from an optometrist. No joke. I think almost everyone is affected by age-related degeneration of their vision at some point or another.
Well coincidentally i've been to an optometrist in a hospital about a year ago, my eyes are perfect (i don't have glasses.)
If i open https://news.ycombinator.com/news on my Macbook pro retina 15" i see news items 1 to 22 in a tiny font.. so i zoom to about 10 items which i find much easier to read (bigger text and less info), and using pinch to zoom you can do it very easily - in Safari.
I found this title misleading. I thought this would be an article about how much power is consumed by the browsers of visitors to popular sites, e.g. the energy footprint of one day of Reddit's users based on the length of time of the average daily visit and how much battery each of the major browsers consumes in that time or something.
What it's actually about is how much power is consumed by different browsers using popular websites on one machine. That isn't actually as interesting as I'd hoped.
Browsers can influence the power usage of a computer but just having the thing on all day is a significant base load that needs to be met. Compared to that the websites that you visit likely have relatively little effect as long as the pages don't contain javascript that keeps on running, video or animated content.
How much difference there is between browsers then becomes a function of the different base-loads for the various OS's + the base load of using the browser in the first place + the efficiency of the rendering engine when rendering the pages under test.
Finding the power usage of the browser alone is going to be very difficult since you can't really run a browser without an OS and the various bits and pieces of hardware in the laptop which are not necessarily direclty related to running the browser.
Really? I think it's well known that Chrome isn't nearly as efficient as Safari but I'm amazed just how big the difference between some websites is. Some sites are worse on all browsers, but I wasn't expecting the effect to be by hours.
So you look a site like Mashable and with Safari you're getting 1/3 the battery life of Cult of Mac. That's crazy.
But then on a few sites things are really nuts. What is going on with Forbes where Chrome's battery life is 50% what Firefox and Safari get? Something is going on there.
Safari on Yosemite also shows power usage per tab which is great for identifying rogue websites.
Also... TIL that some sites take more power to render than a 1080p stream!
This also of reinforces the argument for installing an ad blocker -- less elements to process on each page means less power used. µBlock is particularly promising as it's very lightweight.
> some sites take more power to render than a 1080p stream!
This is an interesting aspect of Optimisation. If video decoding were developed using similar standards to the bulk of software it would only be capable of displaying a slideshow.
Video gets massively optimised (at all levels) because the alternative is 'No Video'. It is a good demonstration of the gap between the performance of software and what it could be. Most software can get by being a little bit sluggish so we grumble and suffer but it is not a deal-breaker. What we buy with that performance hit is easier development.
YouTube sends VP8 or VP9 videos to Chrome, whereas on Safari it uses h264, which can be decoded in hardware. That alone will have a huge difference in power associated with it.
I'm thinking of switching to Safari for most browsing, not so much because of battery, since I'm usually plugged in, but because Chrome is painfully slow to scroll on complex sites, especially on the Retina display -- while Safari is as smooth as butter. I would guess these issues are related, since Chrome is presumably doing a lot of unnecessary things (reflows?) with the CPU that could better be handled by the graphics system.
Using Chrome on Windows I often find notice my computer fans spinning up when I visit javascript heavy sites - Soundcloud and Google Maps are particularly guilty of this, as are those new media-heavy news stories which embed giant videos right through them. I've sat on some websites (with nothing else open) and watched my battery life fall from ~6 hours to ~2 hours.
Most of these websites gain little from requiring so much processing power. I suspect it's mostly developer laziness.
Chrome has made much of their desire for high performance in recent years, but perhaps they should think about resource utilisation as well! They need to throttle greedy websites.
This is well known and widely publicized by Apple. They list it as one of the major new features of Safari 7.0 and OS X Mavericks. They had similar charts in the keynote when they announced it.
Same here - Safari is what I use for everyday browsing, Chrome is what I use for web development. Safari's developer tools are sluggish and awkward to use, but browsing on it is just a faster, more pleasurable experience.
I believe it's actually worse on a 15" MacBook Pro which has a dedicated GPU along with the Intel GPU. Chrome seems to force using the dedicated GPU over the onboard even at app launch which I assume drains even more power.
Title aside, very interesting article I'd like to see what factors play into these huge disparities of battery life loss between the different browsers.
I suppose that just displaying a page and scrolling around it consumes little energy, with a short spike during the layout phase.
What really consumes energy is compiling and executing Javascript, and playing animations (flash, gif, css, video). JS engines of all three browsers are likely different. I also suspect that Safari, being essentially single-platform, can afford platform-specific optimizations (e.g cheaper non-public API calls).
It will be interesting to see how these numbers change with OS X 10.11 with Safari's new Content Blockers enabled. That will result in less network connections and less JavaScript.
I just tried an experiment turning my various blockers off - I've got uBlock, Ghostery and Flashcontrol and had 26 tabs open with random stuff in Chrome. Doing nothing user cpu was about 4 point something percent with them off vs 1 point something with them on.
How much of this is HTML5 related optimization? Some of the worst performing sites like Forbes.com news are also some of the site that wack a video everywhere with an auto-play ad. Using HTML5, that video playback should be hardware assisted and gentle on the battery. Using flash it'll kill the battery.
I use chrome as a on-demand flash player when needed, and hands down, the DevTools are excellent.
But other than that... I switched to safari a few months ago and after a little "learning curve" I love it. Scrolling is butter smooth, performance is perceived really good, the UI is minimal (I don't use bookmarks anymore), and handoff or pinching for a tab overview is great for me. uBlock and Ghostery are really mandatory today for a convenient browsing experience and are available for safari, too.
What's really missing: favicons in tabs, pinned tabs and a dark mode for the window chrome, that matches the dark menu bar in yosemite. AFAIK, favicons+pinned tabs are coming with el capitan.
I switched to Safari on my Macbook a long time ago because I noticed it was a lot warmer whenever I used Chrome to watch Youtube. It's kinda cool to see these graphs confirm my crude assumption.
I am almost always plugged in (desktop or laptop). I don't care about minor differences in power efficiency. I care about speed and memory utilization. It isn't uncommon for me to have multiple browser windows across two or three monitors with 10 to 20 tabs each. Chrome does that flawlessly.
I also care about performance with Selenium.
Energy efficiency has never been a factor for me in, well, decades. Even on a long flight to Europe or Asia I can plug in.
This doesn't surprise me much (I had long assumed this to be true) but it's also not going to stop me from using chrome on my MBP unless I'm really hurting for battery and even then... Power savings is not something I look for in a browser personally or rather it's so far down my list that it doesn't weigh into my decision. Also I do a lot of web development on my MBP and I GREATLY prefer chrome and it's devtools for that task.
These results seem unconvincing without any error bars / confidence intervals, or even a mention of the number of replicates performed (though the downloadable data set seems to indicate that each test condition was performed only once?)
I'm wondering how much of it is related to the fact that Safari just does less? I'm sure more work needs to be done to make the browser more HTML5 compliant, for example. How much of the HTML5 parts would Safari wouldn't process at all and just ignore them?
this is actually caused me to switch to Safari from Chrome some time ago - I noticed a lot better battery, but also the fan kick in less on my MacBook Pro.
Its seems the defacto standard is to assume the world runs osx, but windows still is the most installed os.
Might be interesting to test the world popular browsers on the most popular os non?
Macbook pros are some of the best selling laptops out there. And this comparison really only makes sense on a laptop, as the power usage wouldn't have a noticeable impact on desktop.
I just found out that my laptop has a signicant longer battery life if I use dwb instead of firefox (vimperator). It's a bit crude, but i start to like it.
No surprises there, Apple controls both Safari and OS X. Microsoft has done the same thing with Edge on Windows 10. Does that mean I use Safari on my Mac or Edge on my Windows 10 machine? No.
For me the killer feature would be some form of user profile, with segregated history and cookies.
I use Chrome because I can have two browser windows, one where I'm logged in to all my work tools and my work Gmail account, and another window where I look at Twitter and HN and I can have my personal Gmail account open.
I'll happily switch to Safari if they give me that. Chrome's general CPU usage aside, it performs especially terrible when using Google's very own products: video Hangouts (for work) and YouTube.
Google Hangouts in Chrome will set my Retina MBP on fire, but if I log in and join the Hangout in Safari, all is well again.
Yes, but when Mavericks launched the emphasis on power optimization features was new. There are also many performance compromises in Safari because of all the throttling.
A great example is how each browser handles per-tab processes: with Chrome, this architecture is part of Chrome itself. In contrast, Safari's implementation is baked in at the framework level with WebKit.
The WebKit dev team really pushes for power efficiency in a much bigger way than the Chrome dev team does. Things like heavy JS and content blocking lists getting compiled down into bytecode via LLVM are both products of the WebKit dev team's focus on the race to idle.
I think it's also worth noting that there is a large difference in the two companies' vision for the web: Apple sees the browser as a vehicle for viewing websites. Google sees it as something more akin to an operating system. As such, it's only natural that their end goals are different.