Mac vs Windows File Systems: What You Need to Know

Mac vs Windows File Systems: What You Need to Know

You plug an external drive into a Mac and it's read-only. Or into a Windows machine and it doesn't appear at all. The drive is fine — it's formatted for a system that isn't this one.

A file system is the organizational scheme a drive uses to store files. Different operating systems have their own, and support for each other's is uneven. Here's what you actually need to know.

The formats you'll encounter

APFS — the current Mac format. Fast, handles snapshots and encryption well, and required for Time Machine on modern systems. Windows can't read it without third-party software.

Mac OS Extended (HFS+) — the older Mac format, still in use for some purposes. Windows can't read it natively either.

NTFS — the Windows format. Macs can read NTFS drives but not write to them without third-party software. This asymmetry catches people constantly: the drive mounts, you can see everything, and you can't save.

exFAT — the compatibility format. Both systems can read and write it fully. Handles large files and large drives. This is the answer for a shared drive.

FAT32 — very old, universally supported, and limited to 4GB per file. That limit makes it unsuitable for video, disk images, or large archives. Still turns up on USB sticks and camera cards.

The quick answer

What you're doing Format
Mac backup with Time Machine APFS
Windows backup NTFS
Drive shared between Mac and Windows exFAT
USB stick for handing files around exFAT
Camera or device memory card Whatever the device requires
Drive that plugs into a TV, console, or car Check the device manual — often exFAT or FAT32

Reformatting a drive

Reformatting erases everything. Copy the contents somewhere else first, and verify by opening files.

On a Mac: Disk Utility → select the drive → Erase → choose the format.

On Windows: right-click the drive in File Explorer → Format → choose the file system.

A note on where to format: if you're formatting exFAT for use on both systems, doing it on the Mac sometimes produces settings that work better across platforms. If a drive formatted on one system behaves oddly on the other, reformatting on the other machine often resolves it.

exFAT's trade-offs

exFAT is the compatibility answer, and it isn't free of downsides.

It's less resilient. exFAT lacks the journaling that NTFS and APFS use to recover from interrupted writes. Unplugging a drive mid-write, or a power cut, is more likely to cause corruption.

Always eject properly. This matters more on exFAT than on other formats. Use the eject or safely-remove function; don't just pull the cable.

It doesn't handle permissions. Fine for a shared drive, which is usually what you want.

It's not suitable for backups. Time Machine won't use it, and Windows backup tools work better on NTFS. Use native formats for backup drives and exFAT for transfer drives.

Practical implication: keep separate drives for separate jobs. One NTFS or APFS drive for backup, one exFAT drive for moving files between systems. Drives are cheap; a compromise format doing two jobs badly is not worth the saving.

Case sensitivity, which causes real problems

Windows and standard Mac formatting are case-insensitive. Report.pdf and report.pdf are the same file. You can't have both in one folder.

Some systems, including most Linux servers and Mac drives formatted as case-sensitive, treat them as different files.

This causes two specific problems:

Syncing between systems can produce duplicates. Files that were distinct on one system collide on another, and the sync tool either fails or silently keeps one.

Web development breaks. A site that works locally on a case-insensitive Mac can fail on a case-sensitive server because Header.png and header.png are the same thing locally and different things live.

Practical advice: use lowercase consistently for anything that might travel between systems, and never rely on case alone to distinguish two files.

Paths and separators

Windows uses backslashes and drive letters: C:\Users\Name\Documents\file.pdf

Mac and Linux use forward slashes and a single tree: /Users/Name/Documents/file.pdf

For everyday use this doesn't matter. It matters when scripts, configuration files, or applications reference paths — a path written for one system doesn't work on the other.

Path length limits are the practical concern. Windows has historically limited full paths to around 260 characters, and while modern versions can exceed this, many applications still can't. The symptom is bizarre: files that can't be copied, moved, or deleted, with unhelpful errors.

If you have deeply nested folders with long names, flatten them before moving anything between systems.

Characters that break things

Some characters are forbidden on one system and permitted on another. Files with them may fail to copy, get silently renamed, or become inaccessible.

Avoid entirely: / \ : * ? " < > |

Also avoid: leading and trailing spaces, trailing periods, and multiple periods before the extension.

Reserved names on Windows: a handful of legacy device names — CON, PRN, AUX, NUL, and COM1 through LPT9 — can't be used as filenames, with or without an extension. Rare, and baffling when you hit it.

Colons are the most common practical problem, because they appear naturally in titles: Report: Q2 Results becomes a broken filename.

The invisible files each system leaves behind

Macs create .DS_Store files in every folder they open, plus ._ files alongside others on non-Mac formats, and folders like .Spotlight-V100 and .Trashes on external drives.

Windows creates Thumbs.db and desktop.ini.

These are harmless and mildly annoying — they show up in file listings on the other system, and they clutter archives. You can delete them; they'll come back.

The one place they matter: when sending a folder to someone on a different platform, or uploading to a web server, clean them out first. A ZIP full of ._ files looks unprofessional and occasionally confuses the recipient's software.

Reading the other system's drives

Reading NTFS on a Mac: works natively, read-only. Writing requires third-party software. Several established options exist, both free and paid.

Reading APFS or HFS+ on Windows: requires third-party software. Options exist and are less mature than the reverse case.

The pragmatic advice: rather than installing drivers to bridge the gap, use exFAT for drives that need to work on both, and native formats for drives that don't. Third-party file system drivers operate at a low level and have historically been a source of instability and occasional data loss.

Sharing over a network instead

Often the better answer than a physical drive.

Both systems can share folders over a local network and read each other's shares using standard protocols. It sidesteps the formatting question entirely, handles large files fine, and doesn't require carrying anything.

Set it up once and it's usually easier than reformatting drives.

The practical summary

One drive per job. Backup drives in native format, transfer drives in exFAT.

exFAT for anything crossing platforms, and always eject properly.

Lowercase filenames, no special characters, short paths.

Copy contents off before reformatting, and verify.

Consider network sharing instead of physical drives for regular transfers between machines in the same place.

The underlying point: most cross-platform file problems aren't really about the operating systems disagreeing. They're about a drive doing a job it wasn't formatted for.


Next in this series: How to Set Up a NAS for Home File Storage