UltraDefrag is an open source disk defragmenter for Windows. It eliminates the file fragmentation problem speeding up the computers which need less mechanical work to read continuous data from disks. UltraDefrag can fix almost everything including files which are usually locked - it launches inside of the Windows boot process when most of the files are still not in use.

UltraDefrag has the following features:

  • simple but efficient defragmentation algorithms
  • safe environment preventing files corruption
  • defragmentation of locked paging and hibernation files
  • defragmentation of NTFS metafiles (including MFT) and streams
  • flexible filters allowing exclusion of files by various criteria
  • defragmentation of disks having specified fragmentation level
  • one click defragmentation via Windows Explorer context menu
  • multilingual graphical interface (over 60 languages available)
  • powerful command line interface
  • scheduled defragmentation (using Windows Task Scheduler)
  • automatic termination when specified time interval elapses
  • automatic hibernation or shutdown after the job completion
  • small size of installers (about 1 MB)
  • availability of portable packages requiring no installation
  • full support of 64-bit editions of Windows
  • granted permission to freely use and redistribute the program

UltraDefrag can defragment both FAT and NTFS disks with just a couple of restrictions:

  • It cannot defragment FAT directories, because their first clusters are immovable.
  • It cannot defragment master file tables (MFT), because their first 16 clusters are immovable.

However, the program tries to optimize those files placing their fragments close to each other behind the first one.

UltraDefrag can be used on Windows XP, Windows Server 2003, Windows Vista, Windows Server 2008, Windows 7 and Windows 8. Elder versions of the program (prior to v7) can be used on Windows NT 4.0 and Windows 2000 as well, with some limitations. Additionally UltraDefrag for Linux exists which is an independent port of the program based on NTFS-3G capabilities.


First of all the program analyzes the disk gathering complete information about files and free space gaps.

Then, depending on the selected action, the program either defragments the disk or performs its optimization.

Defragmentation eliminates little fragments joining them together.

Full optimization moves all small files and fragments to the end of the disk to release some space in the beginning. Then it moves them back, sorted by user defined criteria, to speed up access to groups of small files. By default files are sorted by path in ascending order. Additionally FAT directories and NTFS master file tables get fixed up as mentioned above.

Quick optimization is the same but it skips already sorted out files.

All algorithms are available either from a traditional graphical interface, or from a command line (console) interface suitable for batch scripting and scheduled tasks. Additionally a boot time interface exists which helps to defragment files locked most of the time.


UltraDefrag doesn't count empty files because they have no fragments at all. The same applies to small files living inside of MFT records. Usually they are smaller than 1 KB and require no clusters outside of the table, thus no fragments. However, when you right click those files in Windows Explorer and select Defragment with UltraDefrag they will be counted to avoid ambiguity.

Additional treatment have files excluded from defragmentation. Files marked as temporary by the operating system are always excluded, others can be cut off by path, size and number of fragments using filters. The program never treats those files as fragmented even if they actually are.

For higher performance usually it does make sense to exclude not only temporary content, but also large fragments. For example, when you watch a movie Windows needs just a couple of milliseconds to advance from one large fragment to another, while the overall watching time is usually about 2 hours. Thus, you will never suffer from large file fragments when you watch a movie.

Taking into account all the above the disk fragmentation level is calculated as follows:

fragmentation level = number of fragments needing elimination / total number of fragments

Web resources

Visit UltraDefrag website for more information.

Previous: UltraDefrag Handbook Next: Installation