What is the best file system to format a hard drive?

Data storage needs have increased dramatically over the past few decades. According to Statista, the worldwide storage market is projected to grow by 5.49% between 2024-2028, resulting in a market volume of $62.6 billion by 2028. https://www.statista.com/outlook/tmo/data-center/storage/worldwide

A file system is a method of organizing and storing files on a hard disk or other storage device. It is a core component of any operating system, defining how data is stored, accessed and protected. Choosing the right file system for a storage device is important because it impacts performance, compatibility, reliability and security.

The most common file system options for hard disk drives today are NTFS, exFAT, FAT32 and ext4. This article provides an overview of these major file systems, comparing their features and appropriate use cases.

NTFS

NTFS (New Technology File System) is native to Windows systems and was developed by Microsoft. According to research from Microsoft’s NTFS development team, NTFS supports partition sizes up to 256 terabytes and individual file sizes up to 16 exabytes, far exceeding the limits of older file systems like FAT32 [1]. Being the default Windows file system, NTFS has advanced native permission controls that allow administrators to set granular read/write access for users and groups [2].

Since NTFS was designed for modern Windows operating systems, it offers full compatibility and optimal performance when running Windows 10 or Windows 11. Key features like disk quotas, encryption, and rich metadata make NTFS a robust and secure file system well-suited for internal business storage and other general use cases. For Windows users who don’t require cross-platform compatibility, NTFS provides industry-leading reliability and capabilities.

exFAT

exFAT is a proprietary file system developed by Microsoft in 2006. It was designed to overcome limitations of previous Microsoft file systems like FAT32, mainly the 4GB maximum file size. A key feature of exFAT is its support for much larger file sizes up to 128PB or 264 – 1 bytes according to the official specification [1]. This enables applications with very large files to use exFAT. Another advantage of exFAT is its cross-platform compatibility. Since it’s supported on Windows, macOS and Linux, exFAT is commonly used for external hard drives meant to transfer data between devices with different operating systems [2]. The theoretical maximum file size of 16EB or 264 bytes also makes exFAT well-suited for external storage devices [3].

FAT32

FAT32 is an older file system developed by Microsoft for older versions of Windows. It has a maximum file size limit of 4GB, which can be restrictive for modern large files like movies and games. The 4GB file size limit is a hard limit due to FAT32 using 32-bit fields to store file sizes.

FAT32’s age makes it one of the most compatible file systems – it can be read by most operating systems including all versions of Windows, macOS, Linux, game consoles, and many other devices. However, its limited file size and lack of modern features like permissions make it unsuitable for most modern PCs and storage devices.

Because of its simplicity and compatibility, FAT32 is still commonly used today as a universal format for basic external storage devices like USB flash drives. But for internal hard drives or external drives used for large media files, more modern file systems like NTFS or exFAT are recommended instead.

ext4

ext4 is an open source file system that has become the most common standard for Linux distributions over the past decade, having replaced its predecessor ext3 starting in 2008 (An introduction to Linux’s EXT4 filesystem, 2017). It was designed primarily for server systems to improve reliability, storage capacity, and performance.

Some key features of ext4 that make it well-suited for server storage include metadata and journal checksums for improved reliability, delayed allocation to enhance performance, and support for volumes up to 1 exabyte and file sizes up to 16 terabytes (Ext4 Disk Layout, 2019). However, one downside is that ext4 is not natively supported by Microsoft Windows, so it is generally only used for Linux server deployments.

Performance

When it comes to read and write speeds, benchmarks show that NTFS and ext4 generally outperform FAT32 and exFAT. In synthetic benchmarks using large test files, NTFS achieved seqential read speeds over 300MB/s and writes around 180MB/s. Ext4 was comparable, with reads over 350MB/s and writes near 200MB/s. By comparison, FAT32 maxed out at 112MB/s read and 86MB/s write, while exFAT managed 137MB/s read and 109MB/s write (Source).

However, real-world use cases tend to show smaller differences, especially for general home and office use. When using a mix of file sizes more representative of normal usage, NTFS achieved 55MB/s read and 80MB/s write versus FAT32’s 50MB/s read and 71MB/s write. The performance gap narrows on average workloads. Still, NTFS and ext4 maintain an advantage for intensive tasks like video editing, database access, virtual machines, and gaming where maximum throughput is critical (Source).

Compatibility

When selecting a file system, it’s important to consider which operating systems will need to read and write to the drive. Comparison of file systems shows that NTFS has native read/write support in all Windows versions starting with Windows NT 3.1. It has read-only support in macOS and Linux. Operating Systems and File Systems Cross-Compatibility explains that exFAT has broad compatibility – it works with Windows, macOS, and Linux. FAT32 is compatible with all Windows versions and macOS, but requires additional software for writing in Linux.

For a drive that will be used across Windows, macOS, and Linux machines, exFAT offers the best cross-platform compatibility. NTFS is ideal for drives that will mainly stay within the Windows ecosystem. FAT32 works for simple file transfers between Windows and macOS, but lacks permissions and has file size limits.

Reliability

One of the key factors when selecting a file system is reliability, specifically the risk of data loss or corruption. File systems that use journaling, like NTFS, exFAT and ext4, have increased reliability compared to non-journaling file systems like FAT32.

Journaling reduces the risk of data loss or corruption following a crash or power failure. It does this by keeping a record of changes made to the file system metadata in a journal. If the system crashes or loses power, the journal can be replayed to restore the file system to a consistent state when the system reboots (source). This prevents file system corruption and data loss.

Non-journaling file systems like FAT32 are at much higher risk of corruption or data loss after an unclean shutdown. Without a journal, the file system metadata may be left in an inconsistent state. Data loss is more likely as key information about file locations can be lost.

Overall, journaling provides significant reliability benefits by enabling better crash recovery and reducing the chances of data loss or corruption. This makes journaling file systems like NTFS and ext4 better choices when reliability is a priority.

Permissions

File system permissions allow control over user access to files and folders. This is especially important for business and corporate use cases where sensitive data needs to be protected. Some key considerations around permissions include:

NTFS has robust permissions features that allow administrators to set granular access controls at the file and folder level for users and groups. Specific capabilities include setting read, write, and execute permissions as well as taking ownership. This makes NTFS well-suited for business environments where access needs to be restricted. Some limitations are that NTFS permissions do not work on non-Windows operating systems. Source: File-system permissions – Wikipedia

exFAT has basic read and write permissions but does not support setting execute permissions or taking ownership. Groups and granular control like NTFS are not available. This makes exFAT less ideal for environments requiring restrictive permissions. Source: What’s the Difference Between FAT32, exFAT, and NTFS?

FAT32 only supports basic read-only and read/write permissions for all users. There is no ability to set granular controls. This complete lack of permissions makes FAT32 unsuitable for any corporate or business environment where access controls are needed. Source: What Is FAT32?

ext4 has POSIX permissions for setting read, write and execute access for owner, group, and others. Access Control Lists (ACLs) allow admins to set more advanced permissions. Overall ext4 provides good permissions support for Linux environments requiring user and group level controls. Source: What’s the Difference Between FAT32, exFAT, and NTFS?

Conclusion

When choosing a file system to format your hard drive, the most important factor is your intended use case.

For most general consumer use, NTFS and exFAT are recommended. NTFS offers the best overall performance and reliability for Windows environments. exFAT is compatible with both Windows and Mac, making it a good choice if you need to transfer files between the two operating systems.

For Linux environments, ext4 is the standard file system with excellent performance and stability. FAT32 can be used if compatibility with very old operating systems is required, but should be avoided otherwise due to limitations.

In the end, consider whether your priority is performance, cross-platform compatibility, permissions and security features, or compatibility with legacy systems. Your specific needs and use case should drive your file system decision.