diff --git a/.github/workflows/windows-build.yml b/.github/workflows/windows-build.yml
index 6403ec3c..c46ba79f 100644
--- a/.github/workflows/windows-build.yml
+++ b/.github/workflows/windows-build.yml
@@ -62,9 +62,9 @@ jobs:
             mv ../EDMarketConnector-release-${{ needs.variables.outputs.sem_ver }}.tar.gz .
 
       - name: Upload build files
-        uses: actions/upload-artifact@v3
+        uses: actions/upload-artifact@v4
         with:
-          name: Built files
+          name: built-files-linux
           path: |
               EDMarketConnector-release-*.tar.gz
 
@@ -131,22 +131,31 @@ jobs:
             Get-ChildItem -Path . -Filter "EDMarketConnector_Installer_*.exe" | Rename-Item -NewName {"EDMarketConnector_Installer_Unsigned_$($_.Name -replace '^EDMarketConnector_Installer_', '')"}
 
       - name: Upload build files
-        uses: actions/upload-artifact@v3
+        uses: actions/upload-artifact@v4
         with:
-          name: Built files
+          name: built-files-windows
           path: |
               EDMarketConnector_Installer_*.exe
               EDMarketConnector-release-*.zip
+  Merge:
+    runs-on: ubuntu-latest
+    needs: [ windows_build, linux_build ]
+    steps:
+      - name: Merge Artifacts
+        uses: actions/upload-artifact/merge@v4
+        with:
+          name: Built files
+          pattern: built-files-*
 
   release:
     name: Release new version
     runs-on: ubuntu-latest
-    needs: [ windows_build, linux_build ]
+    needs: Merge
     if: "${{ github.event_name != 'workflow_dispatch' }}"
 
     steps:
       - name: Download binary
-        uses: actions/download-artifact@v3
+        uses: actions/download-artifact@v4
         with:
           name: Built files
           path: ./