diff --git a/.oniro-ci/build-generic.yaml b/.oniro-ci/build-generic.yaml
index aa1b1b5d192f36fe2911a326dfc7cbdff49950ed..9e809117a1d9840681cd6d8206cd45b20dbbe045 100644
--- a/.oniro-ci/build-generic.yaml
+++ b/.oniro-ci/build-generic.yaml
@@ -316,6 +316,13 @@
   script:
     - !reference [.build-image, script]
 
+.build-zephyr-image:
+  extends: .build-image
+  variables:
+    CI_ONIRO_JOB_ARTIFACTS: "*.elf *.bin"
+  script:
+    - !reference [.build-image, script]
+
 # This job is currently used to customize the behavior in oniro and xts-acts.
 # It will be removed when that is safe to do so. It is not documented.
 .build:
diff --git a/.oniro-ci/machines-and-flavours.yaml b/.oniro-ci/machines-and-flavours.yaml
index ed835326d470fe3b4c70e57a8647a3a4f7a8edf7..c7c078d2ca93b8ba37e9ab0e91d6a2d8e2651713 100644
--- a/.oniro-ci/machines-and-flavours.yaml
+++ b/.oniro-ci/machines-and-flavours.yaml
@@ -83,7 +83,7 @@ linux-raspberrypi4-64:
     CI_ONIRO_RECIPE_NAME: oniro-image-base-tests
 
 zephyr-qemu-x86:
-  extends: .build-image
+  extends: .build-zephyr-image
   variables:
     MACHINE: qemu-x86
     # See the note on linux-qemu-x86.
@@ -94,7 +94,7 @@ zephyr-qemu-x86:
     CI_ONIRO_INSTANCE_SIZE: s3.large.2
 
 zephyr-qemu-cortex-m3:
-  extends: .build-image
+  extends: .build-zephyr-image
   variables:
     MACHINE: qemu-cortex-m3
     # See the note on linux-qemu-x86.
@@ -105,7 +105,7 @@ zephyr-qemu-cortex-m3:
     CI_ONIRO_INSTANCE_SIZE: s3.large.2
 
 zephyr-96b-nitrogen:
-  extends: .build-image
+  extends: .build-zephyr-image
   variables:
     MACHINE: 96b-nitrogen
     CI_ONIRO_RECIPE_NAME: zephyr-philosophers
@@ -113,7 +113,7 @@ zephyr-96b-nitrogen:
     CI_ONIRO_INSTANCE_SIZE: s3.large.2
 
 zephyr-96b-nitrogen-tests:
-  extends: .build-image
+  extends: .build-zephyr-image
   variables:
     MACHINE: 96b-nitrogen
     CI_ONIRO_RECIPE_NAME: zephyr-kernel-test-all
diff --git a/docs/ci/hidden-jobs/build-zephyr-image.rst b/docs/ci/hidden-jobs/build-zephyr-image.rst
new file mode 100644
index 0000000000000000000000000000000000000000..2d1b41b95dfd49c0dbec6ac4b83c8f1b02edc157
--- /dev/null
+++ b/docs/ci/hidden-jobs/build-zephyr-image.rst
@@ -0,0 +1,18 @@
+.. SPDX-FileCopyrightText: Huawei Inc.
+..
+.. SPDX-License-Identifier: CC-BY-4.0
+
+===================
+.build-zephyr-image
+===================
+
+The ``.build-zephyr-image`` job extends the :doc:`build-image` job to collect only
+the `*.bin` and `*.elf` files and remove all the other files that would
+normally be collected by the artifact system. It is recommended for Zephyr
+builds which produce bin and elf images.
+
+Usage Guide
+===========
+
+This job is configured exactly the same as :doc:`build-image` and
+:doc:`build-recipe`.
diff --git a/docs/ci/hidden-jobs/index.rst b/docs/ci/hidden-jobs/index.rst
index 04d5083fe7e18db7945bf276094d1c3386afe2a4..5267997c717c10af37318da7b1c118fe8faaa435 100644
--- a/docs/ci/hidden-jobs/index.rst
+++ b/docs/ci/hidden-jobs/index.rst
@@ -13,7 +13,7 @@ implementation details.
 
 .. toctree::
    :maxdepth: 1
-      
+
    workspace
    bitbake-workspace
    build-linux
@@ -23,6 +23,7 @@ implementation details.
    build-recipe
    build-image
    build-wic-image
+   build-zephyr-image
    build-rauc-bundle
    build-docs
    lava-test