A method comprising: determining that a mismatch occurs between hash values that comprise a first hash value identifying a first version of a file maintained by a client device and a second hash value identifying a second version of the file maintained by a productivity service; upon determination that a mismatch occurs between the hash values, comparing version vector data for a first version of the file and the second version of the file, wherein the first version of the file is a version managed by a client of a productivity service and a second version of the file is a version managed by a file hosting service, and wherein the version vector data comprises: a session value indicating a session of the productivity service and a version value that indicates a number of changes made by a tenant during the session; generating a synchronization determination wherein if the session value of the first version of the file and the second version of the file are the same, overwriting the first version of the file with the second version of the file if the version value of the second version of the file is equal to or greater than the version value of the first version of the file; and overwriting the second version of the file with the first version of the file if the version value of the first version of the file is equal to or greater than the version value of the second version of the file; and if there is a conflict between the session values of the first and second versions of the file, determining that further conflict resolution is required to resolve inconsistency between the first and second versions of the file. determining that a mismatch occurs between hash values that comprise a first hash value identifying a first version of a file maintained by a client device and a second hash value identifying a second version of the file maintained by a productivity service; upon determination that a mismatch occurs between the hash values, comparing version vector data for a first version of the file and the second version of the file, wherein the first version of the file is a version managed by a client of a productivity service and a second version of the file is a version managed by a file hosting service, and wherein the version vector data comprises: a session value indicating a session of the productivity service and a version value that indicates a number of changes made by a tenant during the session; generating a synchronization determination wherein if the session value of the first version of the file and the second version of the file are the same, overwriting the first version of the file with the second version of the file if the version value of the second version of the file is equal to or greater than the version value of the first version of the file; and overwriting the second version of the file with the first version of the file if the version value of the first version of the file is equal to or greater than the version value of the second version of the file; and if there is a conflict between the session values of the first and second versions of the file, determining that further conflict resolution is required to resolve inconsistency between the first and second versions of the file.