diff --git a/profiles/forms.py b/profiles/forms.py
index bcebf4118b0349aa43d657e6ff433388d6140659..d8b9b8e2ffbbe1022d49beff250d2a2121d54427 100644
--- a/profiles/forms.py
+++ b/profiles/forms.py
@@ -35,3 +35,7 @@ class AlternativeEmailForm(forms.ModelForm):
     class Meta:
         model = AlternativeEmail
         fields = ['email', 'still_valid']
+
+
+class SearchTextForm(forms.Form):
+    text = forms.CharField(label='')
diff --git a/profiles/templates/profiles/profile_list.html b/profiles/templates/profiles/profile_list.html
index ee574e9d7ebcb9a9f55af4526c2952f04eefec3b..f3298656c18928377a5aaefb552974a88b202076 100644
--- a/profiles/templates/profiles/profile_list.html
+++ b/profiles/templates/profiles/profile_list.html
@@ -41,27 +41,39 @@
 	<li>Create a Profile for <a href="{% url 'profiles:profile_create' from_type='refereeinvitation' pk=next_refinv_wo_profile.id %}">the next</a> Referee Invitation without one ({{ nr_refinv_wo_profile }} to handle)</li>
 	{% endif %}
       </ul>
-      <br/>
-      <ul class="list-inline">
-	<li class="list-inline-item">
-	  <a href="{% url 'profiles:profiles' %}">View all</a> or view by discipline/subject area:
-	</li>
-	{% for discipline in subject_areas %}
-	<li class="list-inline-item">
-	  <div class="dropdown">
-	    <button class="btn btn-primary dropdown-toggle" type="button" id="dropdownMenuButton{{ discipline.0|cut:" " }}" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{{ discipline.0 }}</button>
-	    <div class="dropdown-menu" aria-labelledby="dropdownMenuButton{{ discipline.0|cut:" " }}">
-	      <a class="dropdown-item" href="?discipline={{ discipline.0|cut:' '}}">View all in {{ discipline.0 }}</a>
-	      {% for area in discipline.1 %}
-	      <a class="dropdown-item" href="?discipline={{ discipline.0|cut:' '}}&expertise={{ area.0}}">{{ area.0 }}</a>
-	      {% endfor %}
-	    </div>
-	  </div>
-	  </li>
-	{% endfor %}
-      </ul>
+      <h4>Specialize the list:</h4>
       <ul>
+	<li>
+	  <ul class="list-inline">
+	    <li class="list-inline-item">
+	      <a href="{% url 'profiles:profiles' %}">View all</a> or view by discipline/subject area:
+	    </li>
+	    {% for discipline in subject_areas %}
+	    <li class="list-inline-item">
+	      <div class="dropdown">
+		<button class="btn btn-primary dropdown-toggle" type="button" id="dropdownMenuButton{{ discipline.0|cut:" " }}" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">{{ discipline.0 }}</button>
+		<div class="dropdown-menu" aria-labelledby="dropdownMenuButton{{ discipline.0|cut:" " }}">
+		  <a class="dropdown-item" href="?discipline={{ discipline.0|cut:' '}}">View all in {{ discipline.0 }}</a>
+		  {% for area in discipline.1 %}
+		  <a class="dropdown-item" href="?discipline={{ discipline.0|cut:' '}}&expertise={{ area.0}}">{{ area.0 }}</a>
+		  {% endfor %}
+		</div>
+	      </div>
+	    </li>
+	    {% endfor %}
+	  </ul>
+	</li>
 	<li>View only Profiles <a href="{% add_get_parameters contributor=True %}">with</a> or <a href="{% add_get_parameters contributor=False %}">without</a> an associated Contributor</li>
+	<li>
+	  <ul class="list-inline">
+	    <li class="list-inline-item">Last name startswith:</li>
+	    <li class="list-inline-item">
+	      <form action="" method="get">{{ searchform }}
+	    </li>
+	    <li class="list-inline-item"><input class="btn btn-outline-secondary" type="submit" value="Search"></form>
+	    </li>
+	  </ul>
+	</li>
       </ul>
   </div>
 </div>
diff --git a/profiles/views.py b/profiles/views.py
index 7eeb8d2970ba6fea2ca54e94ea728f5690233064..fecd548f01c51fbb456b6a4808ecbb8427ecd672 100644
--- a/profiles/views.py
+++ b/profiles/views.py
@@ -19,7 +19,7 @@ from invitations.models import RegistrationInvitation
 from submissions.models import RefereeInvitation
 
 from .models import Profile, AlternativeEmail
-from .forms import ProfileForm, AlternativeEmailForm
+from .forms import ProfileForm, AlternativeEmailForm, SearchTextForm
 
 
 
@@ -113,11 +113,14 @@ class ProfileListView(PermissionsMixin, PaginationMixin, ListView):
             queryset = queryset.filter(contributor=None)
         elif self.request.GET.get('contributor', None) == 'True':
             queryset = queryset.exclude(contributor=None)
+        if self.request.GET.get('text', None):
+            queryset = queryset.filter(last_name__startswith=self.request.GET.get('text'))
         return queryset
 
     def get_context_data(self, **kwargs):
         context = super().get_context_data(**kwargs)
         context['subject_areas'] = SCIPOST_SUBJECT_AREAS
+        context['searchform'] = SearchTextForm(initial={'text': self.request.GET.get('text', None)})
         contributors_dup_email = Contributor.objects.have_duplicate_email()
         context['nr_contributors_w_duplicate_email'] = contributors_dup_email.count()
         context['contributors_w_duplicate_email'] = contributors_dup_email
diff --git a/scipost/templatetags/add_get_parameters.py b/scipost/templatetags/add_get_parameters.py
index c471b98a5d77da2b5568e5b0fa13a1dd42669868..fa87ca3eacd08eaa485b3d1715c982d203ea3070 100644
--- a/scipost/templatetags/add_get_parameters.py
+++ b/scipost/templatetags/add_get_parameters.py
@@ -13,6 +13,8 @@ def add_get_parameters(context, **kwargs):
     for k, v in kwargs.items():
         if v is not None:
             parameters[k] = v
+        elif k in parameters.keys():
+            del parameters[k]
     if parameters:
         params = '?'
         for k, v in parameters.items():