diff --git a/benchmarks/beamline/config.yml b/benchmarks/beamline/config.yml
new file mode 100644
index 0000000000000000000000000000000000000000..996a5fb41e21f0cd9a49dce9f5c739a609a89669
--- /dev/null
+++ b/benchmarks/beamline/config.yml
@@ -0,0 +1,26 @@
+sim:beamline:
+  extends: .det_benchmark
+  stage: simulate
+  script:
+    - |
+      snakemake --cache --cores 5 \
+        sim_output/beamline/beamlineTestlocal.edm4hep.root
+
+bench:beamline:
+  extends: .det_benchmark
+  stage: benchmarks
+  needs:
+    - ["sim:beamline"]
+  script:
+    - snakemake $SNAKEMAKE_FLAGS --cores 3 beamline_local
+
+collect_results:beamline:
+  extends: .det_benchmark
+  stage: collect
+  needs:
+    - "bench:beamline"
+  script:
+    - ls -lrht
+    - mv results{,_save}/ # move results directory out of the way to preserve it
+    - snakemake $SNAKEMAKE_FLAGS --cores 1 --delete-all-output beamline_local
+    - mv results{_save,}/