diff --git a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/common/grpc/GrpcResponseBatchStreamer.java b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/common/grpc/GrpcResponseBatchStreamer.java
index 5d4e591bf082e99a9c911dd187deb9673e1d6a11..7d876064b1ae2e92f20f037f7a6a9fa94d4bf1f3 100644
--- a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/common/grpc/GrpcResponseBatchStreamer.java
+++ b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/common/grpc/GrpcResponseBatchStreamer.java
@@ -67,6 +67,7 @@ public class GrpcResponseBatchStreamer<ElemType, ResType> {
 		if (!batchIsEmpty()) {
 			sendResponse();
 		}
+		responseObserver.onCompleted();
 	}
 
 	private boolean batchIsEmpty() {
diff --git a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/vorgang/VorgangGrpcService.java b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/vorgang/VorgangGrpcService.java
index 245a1bcd97155f7661d45cc32fe0e5c46783e1a2..7a7d74628f38a4ab041e412ad67135975f29426f 100644
--- a/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/vorgang/VorgangGrpcService.java
+++ b/vorgang-manager-server/src/main/java/de/ozgcloud/vorgang/vorgang/VorgangGrpcService.java
@@ -146,6 +146,5 @@ class VorgangGrpcService extends VorgangServiceGrpc.VorgangServiceImplBase {
 		var responseStreamer = GrpcResponseBatchStreamer.create(GrpcFindVorgangResponseBuilder::new, responseObserver);
 		vorgangService.findDeleted().map(vorgangStubMapper::toGrpcVorgangHeader).forEach(responseStreamer::send);
 		responseStreamer.finish();
-		responseObserver.onCompleted();
 	}
 }
\ No newline at end of file
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/common/grpc/GrpcResponseBatchStreamerTest.java b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/common/grpc/GrpcResponseBatchStreamerTest.java
index 44bb51f29a497bd9aa89f77de3237c3edd87cf11..e984c0a13f9e782db23a674ca8ea4039e47eb703 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/common/grpc/GrpcResponseBatchStreamerTest.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/common/grpc/GrpcResponseBatchStreamerTest.java
@@ -30,6 +30,8 @@ import java.util.function.Supplier;
 import org.junit.jupiter.api.BeforeEach;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
+import org.junit.jupiter.params.ParameterizedTest;
+import org.junit.jupiter.params.provider.ValueSource;
 import org.mockito.Mock;
 
 import io.grpc.stub.StreamObserver;
@@ -157,7 +159,7 @@ class GrpcResponseBatchStreamerTest {
 
 			batchStreamer.finish();
 
-			verifyNoInteractions(responseObserver);
+			verify(responseObserver, never()).onNext(any());
 		}
 
 		@Test
@@ -169,6 +171,16 @@ class GrpcResponseBatchStreamerTest {
 
 			verify(responseObserver).onNext(response);
 		}
+
+		@ParameterizedTest
+		@ValueSource(ints = {0, 1})
+		void shouldCallOnCompleted(int batchSize) {
+			when(responseBuilder.getElementCount()).thenReturn(batchSize);
+
+			batchStreamer.finish();
+
+			verify(responseObserver).onCompleted();
+		}
 	}
 
 	private static class DummyResponse {
diff --git a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/vorgang/VorgangGrpcServiceTest.java b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/vorgang/VorgangGrpcServiceTest.java
index d3a0f206e00fd7bb5d14bac9ad508afe4765a0ee..6b96a0a161f57135da73f0609d68bef90cfbf967 100644
--- a/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/vorgang/VorgangGrpcServiceTest.java
+++ b/vorgang-manager-server/src/test/java/de/ozgcloud/vorgang/vorgang/VorgangGrpcServiceTest.java
@@ -573,10 +573,10 @@ class VorgangGrpcServiceTest {
 		}
 
 		@Test
-		void shouldCallOnCompleted() {
+		void shouldNotCallStreamObserverDirectly() {
 			findDeletedVorgang();
 
-			verify(responseObserver).onCompleted();
+			verifyNoInteractions(responseObserver);
 		}
 
 		@Test