Links on Android Authority may earn us a commission. Learn more.
NTFS vs FAT32 vs exFAT — Everything you need to know
File systems have never been the most glamorous part of computing. Yet, wasting time trying to find a file you’ve misplaced is even less exciting. You’ve probably seen plenty of names thrown around while you try to get organized, so let’s clear some things up. Here’s everything you need to know about NTFS vs FAT32 vs exFAT to clear up the file system debate.
We’ll do our best to walk you through each of the file systems, and the situations where you would use each one. This guide comes to us courtesy of the Gary Explains YouTube channel, so feel free to watch his explanation above.
What is a file system?
Before we get into the down and dirty specifics of each option, let’s lay some groundwork.
When you store a new file on your local disk, your operating system needs to locate that file. It has to associate the name of the said file with the actual data, permissions, and more. The way your operating system makes these associations is called a file system.
You can think of file systems as library catalogs for all of your information. They’re organized in a way that your computer can easily identify, and you create a new file system when you format your drive for the first time.
File systems aren’t one-size-fits-all
Just like programming languages, there are tons of different file systems available. They’re not universal by any means, and most major operating systems have their own preferred types. Here are a few of the most popular options:
- Windows: FAT32, exFAT, NTFS
- macOS: HFS, HFS+, APFS
- Linux: ext4, XFS, JFS, btrfs, ZFS
While all these formats have their place, in this article we are focusing specifically on standard Windows formats.
All operating systems have their own preferred file systems, but they can often also understand the formats from other OSes. For example, macOS can understand NTFS in a read-only format.
Microsoft’s FAT, or File Allocation Table, file system is the best place to start our journey. The format launched back in the late 1970s as FAT8 before growing into FAT12, FAT16, and finally the FAT32 format we used today.
Microsoft originally intended the FAT8 system for use on floppy disks, but they’re not exactly in vogue anymore. Since then, FAT32 has made its way to hard disks, USB flash drives, SD cards, and more. While FAT32 is no longer the Windows default file system, it’s still fairly commonplace.
We’ve already mentioned that there have been numerous versions of FAT, but what do these number variations mean? Microsoft’s FAT variations are based on the number of bits you can store in each location. FAT8 relied on 8-bit entries, followed by FAT12, and then the inclusion of a hard disk brought us to FAT16. Finally, FAT32 came along with Microsoft’s Windows 95 OSR2 launch.
FAT32 is almost universally understood on computers, consoles, and more.
However, FAT32 is not without its limitations. Its max disk size is 32GB without the use of third-party tools. Technically, you could reach up to 2TB, but it requires a bit of extra work. You’re also limited to a maximum file size of 4GB, and there are no outside tools to help you work around it.
FAT32 is the standard for many USB flash drives and external hard drives, and it’s also the go-to for SD and SDHC cards. We’ll touch on that next.
SD card compatibility
As we said, FAT32 is a key part of SD cards. It’s by far the most common format used, but you can’t just pop in any old SD card and assume that it will play nicely with FAT32. Here’s a quick table to clear things up:
|Type of card||Max capacity||File system||Backwards compatibility|
|Type of card|
|Type of card|
|Type of card|
SD, SDHC, SDXC
Eventually, the limits of FAT32 just couldn’t cut it anymore, and Microsoft developed exFAT. The name is short for Extended File Allocation Table, and it’s best described as a next-generation FAT. It first launched in 2006 as part of Windows CE 6.0, and allows for files beyond 4GB. ExFAT is also the standard file system on SDXC cards, as the table above shows.
Microsoft still owns both FAT32 and exFAT, which have turned into big money makers for the brand. OEMs have to pay licensing fees for the use of either file system, leading to billions of dollars in revenue. One of Gary’s best examples of this licensing is that he had to pay for exFAT access in order to add it to his Synology Network Attached Storage system.
The New Technology File System came about as a companion to the Windows NT family. It has been the go-to option for Windows XP and newer operating systems. NTFS features a maximum file size of 16 exabytes, and it offers file permissions, encryption, and compression.
The largest difference between NTFS and the FAT systems is that the former is actually a journaling system. A typical file system stores two different types of data—the file contents as well as metadata that include the name, location, permissions, and more. In order to delete a file, all you really just have to do is get rid of this metadata. Once this is done, the system won’t be able to find the contents and they will eventually be overwritten by new files.
Essentially, it helps to reduce file system corruption, which is better for everyone.
Manipulating this metadata is sometimes easier said than done. It may take multiple steps to create new metadata for a file in one folder and delete the previous metadata. Things get even hairier if your system crashes in the middle of this process, as it can leave the file system inconsistent.
A journaling file system, like NTFS, stores its intentions for your file system before it makes changes. This makes it so that the operating system can refer to the journal in case of a crash and restore your file system’s consistency. Essentially, it helps to reduce file system corruption, which is better for everyone.
NTFS is very much a Windows-based file system. It came from Microsoft and is meant to work with Windows products. However, there are a few implementations that allow you to use NTFS as a read-only format on both macOS and Linux. It has had Linux support since version 2.2.0, and NTFS-3G offers both read and write options.
Unfortunately, these implementations come from a cleanroom setting. This essentially means that people are trying to figure out how they work and adapting them for new operating systems. This leads to issues with performance and compatibility. In other words, you can use NTFS drives but they are not ideal as a default system outside of Windows.
NTFS vs FAT32 vs exFAT: Which one should you use?
The simple answer is to use the native file system of your operating system. For Windows users, that means NTFS, while macOS users will benefit most from APFS. Finally, Linux users will want to turn to ext4 or XFS, depending on the Linux distribution.
If you’re trying to decide on a file system for your SD card, the answer isn’t as clear-cut. Smaller SD cards will work best with FAT32, provided that they’re below 32GB, but larger cards will require exFAT.
To make matters more complicated, some devices don’t offer support for exFAT. Take booting the Raspberry Pi, for example. You’ll need either Rufus or Raspberry Pi Image to reformat your drive as FAT32 regardless of size.
You’ll also want to turn to FAT32 or exFAT to format external hard drives for use on multiple operating systems. It once again depends on the drive size, but stay away from NTFS in this case. The good news is that more platforms are turning to exFAT, including next-gen consoles, so that’s probably your best way forward.