Now there are a lot of synchronization tools out there both paid and free, each with a different set of features and marketing spiel. What makes FreeFileSync stand out? It's user-friendliness and performance. Both are buzz words already used so often that they almost lost their meaning. But still they describe best where FreeFileSync shines: Its user interfaces are stripped off from superfluous and needless options. Many similar tools seem to add every bell and whistle in a futile attempt to please each and every user, failing to realize they serve nobody in the end. FreeFileSync carefully selects only options that are relevant for backup and synchronization, while making tons of smart decisions under the hood. Most of these the user does not even notice unless he reads the long list of features that this tool supports.
Performance on the other hand is easily measurable. I have yet to find a tool which is faster than FreeFileSync, but there are a few tools specialized at high-performance file copying which seem equally fast. Using system logging tools like Process Monitor it becomes clear why: There is not a single superfluous file access during synchronization. There's exactly one read access for each file during comparison and another one when synchronizing a file or folder. For a tool which is primarily I/O bound this is as good as it can get, but can rarely be expected when looking at other synchronization alternatives - no matter if free or commercial.
Besides these obvious features, there are more subtle characteristics that are easily overlooked. The FreeFileSync bug tracker has been empty or almost empty for years. This is not to say there were no bugs, but each of them was solved almost instantly within hours or a few days. This is quite remarkable for an open source software in general, and it does not even charge support fees. The release cycles have been around once per month for the past few years. This speaks for a modern agile software development process. Lastly with now five years of development it can be considered a mature and stable solution.
The first thing that you see when you start up FreeFileSync is a very well-arranged and structured user interface. It does not require much reading of documentation to figure out how to setup a synchronization task. You choose directories for left and right side, then compare them. This will fill the preview panel telling exactly what is going to happen before even touching your precious data. Now you can change the sync direction for individual files or select one of a number of synchronization variants. These are pre-configured rules that describe how you want your files and folders to be synchronized. The "mirror variant" for example will synchronize files and synchronize folders from left to right, making sure the target side is updated to reflect the source. Or you may want to select the "two way" variant where both sides are taken into consideration: Any change on one side is propagated to the other. If you have deleted a file, changed a file's content or created a new file, this change will be synchronized to the other side, even if changes on both sides have occurred since last synchronization. Thereby the program is smart enough to detect conflicts, i.e. if you accidentally changed the same file on both sides, the program will warn and request a manual resolution. So the tool makes sure you do not lose important data, even if you make stupid mistakes.
FreeFileSync can be downloaded for free. Here is a list of the most important features taken from the project site:
- Detect moved and renamed files and folders
- Copy locked files (Volume Shadow Copy Service)
- Detect conflicts and propagate deletions
- Binary file comparison
- Full support for Symbolic Links
- Automate sync as a batch job
- Process multiple folder pairs
- Comprehensive and detailed error reporting
- Copy NTFS extended attributes (compressed, encrypted, sparse)
- Copy NTFS security permissions
- Support long path names greater than 260 characters
- Fail-safe file copy
- Cross-platform: Windows/Linux
- Expand environment variables like %USERPROFILE%
- Access variable drive letters by volume name (USB sticks)
- Native 64-bit support
- Keep versions of deleted/updated files
- Optimal sync sequence prevents disc space bottlenecks
- Full Unicode support
- Highly optimized performance
- Include/exclude files via filter
- Local and portable installation
- Handle daylight saving time changes on FAT/FAT32
- Use macros %time%, %date%, et al. for recurring backups
- Case sensitive synchronization
- Built-in locking serializes multiple jobs running against the same network share