One record per file, whether you like it or not
$MFT is a hidden NTFS system file: a database with one record — typically one kilobyte — for every file and folder on the volume. Each record holds the name, the timestamps, the security descriptor and the pointers to the data clusters; the record is the file's entry in the system's index. You cannot see $MFT in Explorer because Explorer itself reads it to show you everything else.
Small files take this further: anything under roughly 700 bytes fits entirely inside its own record, occupying no data clusters at all. That is efficient — until a volume accumulates millions of tiny files and the MFT itself grows to gigabytes. Node_modules trees, browser profile caches and mail stores are the classic MFT inflators.
The MFT Zone: space reserved for growth
NTFS does not just grow the MFT wherever there is room; it keeps a contiguous reservation — the MFT Zone — so the table stays in one piece and metadata reads stay fast. The zone's size is a policy setting, visible through fsutil behavior query mftzone, and its default surprises people. Here is what that means for your free space.
- Default reservation is about one-eighth of the volume — 12.5 percent set aside so the MFT can grow without fragmenting
- The zone is a policy, not an allocation: it does not show up as used space in Explorer
- When regular free space runs low, NTFS releases parts of the zone for normal files
- The $MFT file itself is real used space that belongs to no visible file — volumes with millions of files can carry gigabytes of it
- Raising the zone (fsutil behavior set mftzone 2 to 4) only influences future growth and matters on volumes destined for huge small-file collections
MFT bloat is permanent until you reformat
Deleting files frees records for reuse, but it never shrinks $MFT — the table stays at its high-water mark forever. A drive that once hosted millions of temporary files keeps a fat MFT even after a thorough cleanup, and only a reformat resets it. A verbose chkdsk run prints the MFT size, the record count and its fragmentation, if you want to see the damage.
On an HDD, a fragmented MFT genuinely slows down metadata-heavy work — opening huge folders, searching, antivirus scans — which is why the Optimize Drives schedule exists. On an SSD the seek penalty is gone and MFT placement barely matters; Windows switches the same tool to TRIM passes there. The practical fix for MFT bloat is prevention: keep the millions-of-tiny-files projects on a dedicated volume, or at least on one you can reformat without ceremony.
Questions and Answers
What is the $MFT file on my hard drive?
It is NTFS's master database: one record per file, with names, timestamps and data locations. It grows with the file count rather than file sizes, and it counts as used space without belonging to any folder you can open.
Can I delete the $MFT file to free space?
No. It is the volume's index of every file; removing or corrupting it makes the data unreadable. Windows hides it precisely because there is nothing to gain and everything to lose.
Know what is included before you buy.
The one-time 30-minute trial covers core tools. PRO-labelled features stay locked until a paid license is activated.
Read next
Write to us: [email protected]