A computer-implemented method performed while performing a data migration from a source storage system to a destination storage system; the method comprising performing an initial synchronization (204, 401), at least one intermediate incremental synchronization (204, 402), and a final cutover synchronization (204, 404) of data items; and wherein the initial synchronization (204, 401) comprises: - scanning the source and destination storage system thereby obtaining an initial source and destination data item list; - generating commands for performing the initial synchronization based on the scanning; - executing the commands; - obtaining results of the executed commands; and - creating and storing status records (209, 210) of the respective data items indicative for the synchronization state of the respective data items based on the results; and wherein each of the at least one intermediate incremental synchronizations (204, 402) and the final cutover synchronization (204, 404) comprises: - scanning (200, 202) the source and destination storage system thereby obtaining the source and destination data item list (201, 211); - retrieving the stored status records (209, 210) of the respective data items indicative for the last known synchronization state of the respective data items; - generating (203, 503) commands for performing the intermediate incremental synchronization based on the source and destination data item list (201, 211) and the status records; - executing the commands; - obtaining results of the executed commands as a result list; - determining, from the result list, a merge list comprising updates for the status records; and - updating the status records based on the merge list; and wherein during the final cutover synchronization (204, 404) all access to the data is denied or only read-only access is granted. - scanning the source and destination storage system thereby obtaining an initial source and destination data item list; - generating commands for performing the initial synchronization based on the scanning; - executing the commands; - obtaining results of the executed commands; and - creating and storing status records (209, 210) of the respective data items indicative for the synchronization state of the respective data items based on the results; and wherein each of the at least one intermediate incremental synchronizations (204, 402) and the final cutover synchronization (204, 404) comprises: - scanning (200, 202) the source and destination storage system thereby obtaining the source and destination data item list (201, 211); - retrieving the stored status records (209, 210) of the respective data items indicative for the last known synchronization state of the respective data items; - generating (203, 503) commands for performing the intermediate incremental synchronization based on the source and destination data item list (201, 211) and the status records; - executing the commands; - obtaining results of the executed commands as a result list; - determining, from the result list, a merge list comprising updates for the status records; and - updating the status records based on the merge list; - scanning (200, 202) the source and destination storage system thereby obtaining the source and destination data item list (201, 211); - retrieving the stored status records (209, 210) of the respective data items indicative for the last known synchronization state of the respective data items; - generating (203, 503) commands for performing the intermediate incremental synchronization based on the source and destination data item list (201, 211) and the status records; - executing the commands; - obtaining results of the executed commands as a result list; - determining, from the result list, a merge list comprising updates for the status records; and - updating the status records based on the merge list; and wherein during the final cutover synchronization (204, 404) all access to the data is denied or only read-only access is granted.