diff --git a/notification-manager/src/test/java/de/itvsh/kop/notification/user/UserRemoteServiceTest.java b/notification-manager/src/test/java/de/itvsh/kop/notification/user/UserRemoteServiceTest.java
index 296fcf20684c04c41ce58c47acbcc85ccb6441d1..2a18404a0eb84d43f21b2442a1d2f46353e9c824 100644
--- a/notification-manager/src/test/java/de/itvsh/kop/notification/user/UserRemoteServiceTest.java
+++ b/notification-manager/src/test/java/de/itvsh/kop/notification/user/UserRemoteServiceTest.java
@@ -1,15 +1,15 @@
 package de.itvsh.kop.notification.user;
 
+import static org.assertj.core.api.Assertions.*;
+import static org.mockito.ArgumentMatchers.*;
+import static org.mockito.Mockito.*;
+
 import de.itvsh.kop.user.grpc.recipient.RecipientServiceGrpc.RecipientServiceBlockingStub;
 import org.junit.jupiter.api.Nested;
 import org.junit.jupiter.api.Test;
 import org.mockito.InjectMocks;
 import org.mockito.Mock;
 
-import static org.assertj.core.api.Assertions.*;
-import static org.mockito.ArgumentMatchers.*;
-import static org.mockito.Mockito.*;
-
 class UserRemoteServiceTest {
 
 	@InjectMocks
@@ -24,7 +24,7 @@ class UserRemoteServiceTest {
 	class TestRequestRecipients {
 
 		@Test
-		void shouldConvertCorrectly(){
+		void shouldConvertCorrectly() {
 			when(recipientService.findRecipientByOrganisationsEinheitId(any())).thenReturn(GrpcFindRecipientRequestTestFactory.create());
 			when(mapper.fromGrpc(any())).thenReturn(RecipientTestFactory.create());
 
diff --git a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImpl.java b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImpl.java
index f24900e2fd9d447ebd235a7295369510d374895b..bac1b5906dd86435f122bdd29d7b8199ebb59504 100644
--- a/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImpl.java
+++ b/pluto-server/src/main/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImpl.java
@@ -6,6 +6,7 @@ import static org.elasticsearch.index.query.QueryBuilders.*;
 
 import java.util.Arrays;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import org.apache.commons.collections4.CollectionUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -24,6 +25,8 @@ import de.itvsh.ozg.pluto.vorgang.VorgangHeader;
 
 @Repository
 class SearchVorgangCustomRepositoryImpl implements SearchVorgangCustomRepostitory {
+	private static final String JOIN_AND = " AND ";
+	private static final String WILDCARD_PATTERN = "(*%s*)";
 	private static final String KEYWORD = ".keyword";
 	private static final float HALF_BOOST = 0.5f;
 	private static final float DOUBLE_BOOST = 2f;
@@ -57,8 +60,10 @@ class SearchVorgangCustomRepositoryImpl implements SearchVorgangCustomRepostitor
 
 		setFilter(request, searchQueryBuilder);
 
-		Arrays.stream(request.getQuery().strip().split(" ")).forEach(query -> searchQueryBuilder
-				.withQuery(queryStringQuery("*" + query + "*").fields(SearchVorgangCustomRepositoryImpl.FIELD_MAP)));
+		var queryString = Arrays.stream(request.getQuery().strip().split(StringUtils.SPACE)).map(
+				WILDCARD_PATTERN::formatted).collect(Collectors.joining(JOIN_AND));
+
+		searchQueryBuilder.withQuery(queryStringQuery(queryString).fields(SearchVorgangCustomRepositoryImpl.FIELD_MAP));
 
 		return searchQueryBuilder.withPageable(pageable).build();
 	}
diff --git a/pluto-server/src/main/resources/application-local.yml b/pluto-server/src/main/resources/application-local.yml
index d8418bdaa078a0693729cf56e2201262ec24b9df..c529cd33fe196c4c7c80ba34ba3411949770fe66 100644
--- a/pluto-server/src/main/resources/application-local.yml
+++ b/pluto-server/src/main/resources/application-local.yml
@@ -29,7 +29,7 @@ spring:
     properties:
       '[mail.smtp.starttls.enable]': true
   elasticsearch:
-    #uris: http://localhost:9200
+    uris: http://localhost:9200
     username: elastic
     password: password
 
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchServiceITCase.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchServiceITCase.java
index a2272b0aae88875ba17ff896306affba498a2bd1..41ee8307e061a80be2c838ffb4329b89bd2988dc 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchServiceITCase.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchServiceITCase.java
@@ -123,7 +123,7 @@ public class SearchServiceITCase {
 			void shouldFindByAntragstellerNameAndAktenzeichen() {
 				var res = searchService
 						.find(FindVorgangRequestTestFactory.createBuilder()
-								.searchBy(IndexedVorgangTestFactory.ANTRAGSTELLER_NAME + " test")
+								.searchBy(IndexedVorgangTestFactory.ANTRAGSTELLER_NAME + " tes")
 								.filterBy(FilterCriteriaTestFactory.createBuilder().clearStatus().assignedTo(null).build())
 								.build());
 
diff --git a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImplTest.java b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImplTest.java
index 20a67199ff2ceabe22f83460f5f4a2c7907dca30..bdc49a9a4394e842ca4cdd57db01b684124f19a7 100644
--- a/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImplTest.java
+++ b/pluto-server/src/test/java/de/itvsh/ozg/pluto/common/search/SearchVorgangCustomRepositoryImplTest.java
@@ -81,12 +81,11 @@ class SearchVorgangCustomRepositoryImplTest {
 		}
 
 		@Test
-		void shouldHaveQuery() {
+		void shouldHaveFieldsWithWights() {
 			var request = SearchRequestTestFactory.create();
 			var query = searchRepostitory.createQuery(request, PageRequest.of(request.getOffSet(), request.getLimit()));
 
 			assertThat(query.getQuery()).isNotNull();
-			assertThat(query.getQuery()).asString().contains("\"query\" : \"*vors*\"");
 			assertThat(query.getQuery()).asString().contains("aktenzeichen^2.0");
 			assertThat(query.getQuery()).asString().contains("antragstellerName^1.0");
 			assertThat(query.getQuery()).asString().contains("antragstellerVorname^1.0");
@@ -94,6 +93,22 @@ class SearchVorgangCustomRepositoryImplTest {
 			assertThat(query.getQuery()).asString().contains("vorgangNummer^2.0");
 		}
 
+		@Test
+		void shouldHaveSimpleQuery() {
+			var request = SearchRequestTestFactory.create();
+			var query = searchRepostitory.createQuery(request, PageRequest.of(request.getOffSet(), request.getLimit()));
+
+			assertThat(query.getQuery()).asString().contains("\"query\" : \"(*vors*)\"");
+		}
+
+		@Test
+		void shouldHaveQuery() {
+			var request = SearchRequestTestFactory.createBuilder().query("vors test").build();
+			var query = searchRepostitory.createQuery(request, PageRequest.of(request.getOffSet(), request.getLimit()));
+
+			assertThat(query.getQuery()).asString().contains("\"query\" : \"(*vors*) AND (*test*)\"");
+		}
+
 		@Nested
 		class forRolePoststelle {
 			@Test