diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8a208b4f1f40..74fd96710709 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -69,6 +69,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
 - Temporary workaround for task-kill exceptions on Windows when it is passed a pid for a process that is already dead ([#2842](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2842))
 - [Vis Builder] Fix empty workspace animation does not work in firefox ([#2853](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2853))
 - Bumped `del` version to fix MacOS race condition ([#2847](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2873))
+- [Build] Fixed "Last Access Time" not being set by `scanCopy` on Windows ([#2964](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/2964))
 
 ### 🚞 Infrastructure
 
diff --git a/src/dev/build/lib/scan_copy.ts b/src/dev/build/lib/scan_copy.ts
index f467c0fca257..2bc63a654c0d 100644
--- a/src/dev/build/lib/scan_copy.ts
+++ b/src/dev/build/lib/scan_copy.ts
@@ -107,13 +107,13 @@ export async function scanCopy(options: Options) {
       await copyFileAsync(record.absolute, record.absoluteDest, Fs.constants.COPYFILE_EXCL);
     }
 
-    if (time) {
-      await utimesAsync(record.absoluteDest, time, time);
-    }
-
     if (record.isDirectory) {
       await copyChildren(record);
     }
+
+    if (time) {
+      await utimesAsync(record.absoluteDest, time, time);
+    }
   };
 
   await mkdirp(destination);