Is your browser killing your Mac’s SSD?

Are you worried about the internal SSD on your Mac being eaten up and dying within a few years? Turn off browser caching!

Are you worried about the internal SSD on your Mac being eaten up and dying within a few years? Well, there’s no need to worry. I’ve been covering this topic since November last year, and I’ve proven that it’s not a huge deal.

There are also steps you can take to reduce the amount of data being written to your SSD if you’re really worried or you want your Mac to last likely into the next decade.

In this article I will be examining possibly the biggest cause of excessive data being written to your internal SSD, and that is the web browser you’re using, and what type of web content you are consuming.

I’ve tested Chrome, Safari, Firefox, Firefox with the caches disabled, Edge, and also Brave, and I’ll give you the results right now.

Contrary to popular belief, the M1 swap memory issue is not the only contributor to excessive SSD writing.

Onto the testing. I’m on the most recent version of macOS as of the date of this video, I am also using Apple silicon versions of these apps, and all apps are up to date. All browsing history and cookies etc have been wiped. There are no extensions, and there are also no other background tasks running.

Methodology:

  1. Restart computer
  2. Ensure all other background tasks and apps are closed (except activity monitor)
  3. Open browser
  4. Load the same 10 tabs
  5. Watch the same video in 4K for 15 minutes
  6. After 15 minutes screenshot activity monitor
  7. Take note of average swap usage throughout the test (5 min mark, 10 min mark)
  8. At the end of test, take note of total bytes written to SSD and kernel_task 

Each test went for 15 minutes, and before you say that’s not long enough, the point of this test is to find any kind of differences between how the browsers impact memory, swap memory usage, and bytes written to the SSD. A longer test could possibly introduce unwanted variables such as background tasks in macOS or similar.

AppSwap Usage (5 min)Memory Usage (5 min)Swap Usage (10 min)Memory Usage (10 min)Total Data WrittenKernel_task bites written
Chrome05.6805.772.180.26
Safari05.7105.840.570.15
Firefox05.7905.691.591.16
Firefox*05.8505.561.470.128
Edge05.8205.861.920.19
Brave05.8305.882.510.19
*caches including browser.cache.disk.enable and browser.cache.memory.enable disabled.

Testing browsers with 10 tabs open

In my first test I loaded each browser with 10 tabs. A mixture of Youtube, online articles, reddit posts, and online shopping. Most people generally queue 2-3 different Youtube videos up in different tabs when watching Youtube, so I think this is a fair test.

I made sure all the webpages loaded but any videos got past the ads, but then were paused and did not play. There were no other apps running. The computer was also restarted between tests.

To begin testing, I hit play on the 4K Youtube video and started recording data. If you want to see the data in more detail, check out the article on the Created Labs website.

m1-mac-swap-memory
Swap memory usage during the testing.

Starting off with swap memory, as you can see none of the browsers used any swap memory throughout their 15 minute tests. This was good to see, but expected as the RAM pressure was very low.

browser-caches
Memory pressure was very low when only a browser with 10 tabs playing 4K videos was open.

Average memory used was again fairly normal, only about 5 and a half gigabytes with some minor variance between the browsers. Where it starts to get weird is the difference in 2 figures, total data written to the disk, and the size of the kernel_task.

m1-mac-swap-memory-ram
All browsers used about the same RAM when doing this test.

First, let’s take a look at the total system data written. This was taken from the Disk tab on activity monitor, and it represents the total amount of data written to the internal SSD since the computer has been on. I made sure to remove large outliers such as the “mds_stores” process which is not related to browser usage.

m1-mac-browser
*caches disabled.

Analyzing the data from the first test

So what does this graph actually mean? In short, even though the memory pressure was very low (only about 5.5GB was being used out of 8GB) and zero swap memory is being used, browsers such as Chrome and Firefox were still writing heaps of data to the internal SSD.

Note that we’re not really interested in the actual values here, but we do want to examine the differences between the browsers visually by a bar chart to see which is lowest.

As you can clearly see, Safari and Firefox with caches disabled write very little, with nearly 3x less data written to the internal SSD.

Chrome is by far the worst, but what was interesting is that Firefox, Edge, and Brave were all almost the exact same.

Something doesn’t add up…

If we compare this same graph to the total bytes written to the kernel_task process (which is responsible for swap among other things), you can see things don’t add up. There’s a big difference between Chrome kernel_task size and the total bytes written size for example.

browser-caches-total-written
Why is there such a big discrepancy between kernel_task and total system data written?

Well, this is because browsers like Chrome, Firefox, Edge, and Brave all have “helper” processes that cache and write web data to the internal SSD. 

Check out this graph. You can see that when I add the helper process together with the kernel_task, it helps explain where all the written data is coming from. I noticed Firefox didn’t have a helper process, instead it just wrote to the kernel_task process.

browser-caches-total-written-kernel
This makes more sense, each line here now mostly adds up to the “total system data written” value in the previous graph.

What do these helper tasks even do? Well, essentially long story short is that they are basically the bridge between your browser and the remote servers needed for things like plug-ins to work (e.g. to display ads or show certain content on webpages).

For streaming video content, or Youtube in this example, these processes actually write and buffer the video to your internal SSD to ensure playback is smooth in case of RAM, internet, or system issues.

Generally these tasks should be allocated to RAM, and not constantly writing to the disk. Safari on the other hand seems to be doing this perfectly, because almost zero data was written while I was watching the 4K youtube video. Same with Firefox when caches were disabled.

It’s also the same on my Windows PC. Chrome was constantly writing data to my SSD when I replicated the exact same browser test on the PC.

windows-caches
It seems these browsers (e.g. Chrome, Firefox) all perform the same no matter what OS they are on.

Repeating the test with more RAM pressure

Now, let’s get a bit crazy. I added another 5 browser tabs bringing the total to 15. I also had Apple mail, a word document, and a moderate size photoshop file open all at the same time.

browser-memory-test-programs
An example of the programs and tabs I had open during the second test.

This is going to be pretty typical usage of the average person using an entry level 8GB RAM, 256GB SSD M1 MacBook Air.

AppSwap Usage (5 min)Memory Usage (5 min)Swap Usage (10 min)Memory Usage (10 min)Total Data WrittenKernel_task bites written
Chrome0.526.110.466.23.421.4
Safari0.196.30.166.111.1230.80
Firefox0.456.120.426.013.331.57
Firefox*0.586.370.46.241.991.56
Edge0.55.810.475.973.571.3
Brave0.386.010.356.113.351.01
*caches including browser.cache.disk.enable and browser.cache.memory.enable disabled.

Average swap usage this time was increased, as expected because we were now putting more pressure on the memory.

browser-memory-test
Surprising to see just how much less swap memory Safari utilizes.

The key takeaway here is in the total amount written. As you can see, the total system data written to the SSD increased accordingly. The difference between Safari and Firefox with caches disabled increased, although not by a huge amount.

Safari is still the clear winner with no customization or having to go into the settings and disable caches. This is because Safari is designed this way from the beginning.

system-data-written
Safari still the best, with Firefox (caches disabled) pulling away.

I am not going to test all the browsers against each other with caches disabled, because that’s not the point of this video and the reality is, 99.99% of users will be using whatever browser they prefer without knowing about disabling caches, so I wanted to reflect that in this analysis.

Explaining the results

So what does this all mean? Do you have to delete Chrome and Firefox and then swear never to use them again? Of course not. 

If you watched this video on my Youtube channel, you would have seen that I updated macOS and started using Firefox (with all caches fully enabled) and Chrome again. Nearly 3 days later as of the date of this video, after constant Firefox and Chrome usage, as well as non-optimized apps such as Discord, I’ve only written an additional 200GB, or about 90GB per day.

That’s only about 32TB a year, and my browsing included a ton of Youtube videos over those days. Now, we don’t know exactly what the lifespan of Mac SSDs is, but we do know they are really high quality and likely have a TBW, or total bytes written value of potentially 600 or more.

If I kept up my current routine, my internal SSD should last 19 years at that rate.

Let’s er on the side of caution though, even if I double my daily usage, or the TBW turns out to be 300 instead of 600, that’s still a minimum of 10 years before I might start to see issues at my level of daily usage. Bear in mind that TBW ratings are a minimum. When SSDs are actually tested, they usually blow right through that rating.

system-data-written-tbw
In my opinion this is a very good expectation for a 256GB SSD.

What does this mean for you?

So in conclusion, in my opinion, (which hasn’t changed in 5 years by the way) Safari should be your choice of browser if you’re using a Mac. It’s very efficient, light on resources, and writes much less data to the SSD, and just integrates and works so well with macOS.

browser-memory-test-programs
Safari is still my personal choice for internet browsing on a Mac.

However, if you do want to use other browsers, it’s not a big deal. Update your version of macOS to at least 11.2.3 and that will also help a fair bit. If you’re wanting to watch a TONNE of Youtube videos or streaming content, you may want to either use Safari for that.

Or, simply disable the caches on whichever browser you’re using, but only if you’re worried about huge levels of written data. For example if you’ve only got a 256GB SSD and want your computer to last years and years.

I do however recommend you to use either smartmontools or DriveDX and just keep an eye on your total data units written to the internal SSD. You can also check activity monitor from time to time.

system-data-written-tbw-mac
DriveDX (pictured) or Smartmontools can be used to monitor the total data units written to your internal SSD.

This is how you can enable the bytes written tab in activity monitor. The only reason I say this is because Apple silicon is brand new, so no one really knows what effect it will have on your internal SSD.

I’m 99% sure it will be fine, but it always pays to double check and make sure you don’t have some kind of crazy software issue that’s writing terabytes of data every week to your irreplaceable internal SSD.

Want to watch this article on Youtube? You can check out the below video.

Sharing is caring: