> For the complete documentation index, see [llms.txt](https://trialkey.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://trialkey.gitbook.io/docs/arcamatic-backup/how-does-arcamatic-know-which-files-have-changed.md).

# How Does Arcamatic Know Which Files Have Changed?

**Arcamatic Client** goes through it's local files and generate hashes of all target files and then sends that list of hashes to the **Arcamatic Server** to compare with a similar list of it's own.  It then generates a list of files that have changed and share that with the **Arcamatic Client** so they both know which files need to be transferred in order to synchronize the target directories.

This way, **Arcamatic** only send files that are missing or different.  **Arcamatic** also compresses each file before sending it in order to reduce network bandwidth used.
