diff --git a/scipost/forms.py b/scipost/forms.py
index bfb456f457a5fd92e0300817e6f396346a2b45f0..7e0f3e0871a7015a041bcf4befb52837a91fafd4 100644
--- a/scipost/forms.py
+++ b/scipost/forms.py
@@ -156,7 +156,14 @@ class SearchForm(forms.Form):
 class EmailGroupMembersForm(forms.Form):
     group = forms.ModelChoiceField(queryset=Group.objects.all())
     email_subject = forms.CharField(widget=forms.Textarea(), label='')
+    personalize = forms.BooleanField(
+        required=False, initial=False,
+        label='Personalize (Dear Prof. AAA)?')
     email_text = forms.CharField(widget=forms.Textarea(), label='')
+    include_scipost_summary = forms.BooleanField(
+        required=False, initial=False,
+        label='include SciPost summary at end of message')
+
 
     def __init__(self, *args, **kwargs):
         super(EmailGroupMembersForm, self).__init__(*args, **kwargs)
@@ -165,11 +172,14 @@ class EmailGroupMembersForm(forms.Form):
         self.fields['email_text'].widget.attrs.update(
             {'rows': 15, 'cols': 50, 'placeholder': 'Write your message in this box.'})
 
+
 class EmailParticularForm(forms.Form):
     email_address = forms.EmailField(label='')
     email_subject = forms.CharField(widget=forms.Textarea(), label='')
     email_text = forms.CharField(widget=forms.Textarea(), label='')
-    include_scipost_summary = forms.BooleanField(label='include SciPost summary at end of message')
+    include_scipost_summary = forms.BooleanField(
+        required=False, initial=False,
+        label='Include SciPost summary at end of message')
 
     def __init__(self, *args, **kwargs):
         super(EmailParticularForm, self).__init__(*args, **kwargs)
diff --git a/scipost/templates/scipost/email_group_members.html b/scipost/templates/scipost/email_group_members.html
index 1c4b56d6ab40228c5f5c62cbd1c9dbfae1584f85..f7ddaaa73749419c343422f8a3223c3e8394da0c 100644
--- a/scipost/templates/scipost/email_group_members.html
+++ b/scipost/templates/scipost/email_group_members.html
@@ -13,17 +13,16 @@
 <section>
   {% if errormessage %}
   <p>{{ errormessage }}</p>
-  {% else %}
+  {% endif %}
   <div class="flex-greybox">
     <h1>Email a Group of Contributors</h1>
   </div>
 
   <form action="{% url 'scipost:email_group_members' %}" method="post">
     {% csrf_token %}
-    {{ form }}
+    {{ form.as_p }}
     <input type="submit" value="Send email"/>
   </form>
-  {% endif %}
 
 </section>
 
diff --git a/scipost/views.py b/scipost/views.py
index 9c64ca1ec458fa1485f26e85dd6c9307aafc1eec..246f83a7564bc8e48d6d949932c910713b86bc78 100644
--- a/scipost/views.py
+++ b/scipost/views.py
@@ -1020,20 +1020,25 @@ def email_group_members(request):
                 with mail.get_connection() as connection:
                     for member in page.object_list:
                         if member.contributor.accepts_SciPost_emails:
-                            email_text = ('Dear ' + title_dict[member.contributor.title] + ' ' + 
-                                          member.last_name + ', \n\n'
-                                          + form.cleaned_data['email_text']
-                                          + EMAIL_UNSUBSCRIBE_LINK_PLAIN)
-                            html_template = Template(
-                                'Dear {{ title }} ' + 
-                                member.last_name + ', \n\n{{ email_text|linebreaks }}'
-                                + '\n\n' + EMAIL_FOOTER + EMAIL_UNSUBSCRIBE_LINK
-                            )
-                            context = Context(
-                                {'title': title_dict[member.contributor.title],
-                                 'email_text': form.cleaned_data['email_text'],
-                                })
-                            html_version = html_template.render(context)
+                            email_text = ''
+                            email_text_html = ''
+                            if form.cleaned_data['personalize']:
+                                email_text = ('Dear ' + title_dict[member.contributor.title] + ' ' + 
+                                              member.last_name + ', \n\n')
+                                email_text_html = 'Dear {{ title }} {{ last_name }},<br/>'
+                            email_text += form.cleaned_data['email_text']
+                            email_text_html += '{{ email_text|linebreaks }}'
+                            email_text_html += EMAIL_FOOTER
+                            if form.cleaned_data['personalize']:
+                                email_text += EMAIL_UNSUBSCRIBE_LINK_PLAIN
+                                email_text_html += EMAIL_UNSUBSCRIBE_LINK_HTML
+                            email_context = Context({
+                                'title': title_dict[member.contributor.title],
+                                'last_name': member.last_name,
+                                'email_text': form.cleaned_data['email_text'],
+                            })
+                            html_template = Template(email_text_html)
+                            html_version = html_template.render(email_context)
                             # mail.EmailMessage(form.cleaned_data['email_subject'],
                             #                   email_text, 'SciPost Admin <admin@scipost.org>',
                             #                   [member.email], connection=connection).send()
@@ -1048,6 +1053,10 @@ def email_group_members(request):
                        'followup_link': reverse('scipost:personal_page'),
                        'followup_link_label': 'personal page'}
             return render(request, 'scipost/acknowledgement.html', context)
+        else:
+            errormessage = 'The form was invalidly filled.'
+            context = {'errormessage': errormessage, 'form': form}
+            return render(request, 'scipost/email_group_members.html', context)
     form = EmailGroupMembersForm()
     context = {'form': form}
     return render(request, 'scipost/email_group_members.html', context)