diff --git a/finances/templates/finances/_subsidy_card.html b/finances/templates/finances/_subsidy_card.html
index bace5687ab21895a9e2eec449043a6b22ea062e1..8cfdee9cc2ce3aeed540b4784cd2a0f81f6201de 100644
--- a/finances/templates/finances/_subsidy_card.html
+++ b/finances/templates/finances/_subsidy_card.html
@@ -27,7 +27,7 @@
 	  <td>Description:</td><td>{{ subsidy.description }}</td>
 	</tr>
 	<tr>
-	  <td>Amount:</td><td>{% if subsidy.amount_publicly_shown or perms.scipost.can_manage_subsidies %}&euro;{{ subsidy.amount }}{% else %}-{% endif %}{% if perms.scipost.can_manage_subsidies or "can_view_org_contacts" in user_org_perms %} <span class="text-muted">[publicly {% if subsidy.amount_publicly_shown %}visible{% else %}invisible{% endif %}]</span>{% endif %}</td>
+	  <td>Amount:</td><td>{% if subsidy.amount_publicly_shown or perms.scipost.can_manage_subsidies or "can_view_org_contacts" in user_org_perms %}&euro;{{ subsidy.amount }}{% else %}-{% endif %}{% if perms.scipost.can_manage_subsidies or "can_view_org_contacts" in user_org_perms %} {% if subsidy.amount_publicly_shown %}<span class="text-success">publicly visible</span>{% else %}<span class="text-danger">publicly invisible</span>{% endif %}&nbsp;&nbsp;<a href="{% url 'finances:subsidy_toggle_amount_public_visibility' subsidy_id=subsidy.id %}" class="small">Make it {% if subsidy.amount_publicly_shown %}in{% endif %}visible</a>{% endif %}</td>
 	</tr>
 	<tr>
 	  <td>Date:</td><td>{{ subsidy.date }}</td>
diff --git a/finances/urls.py b/finances/urls.py
index 1d85d1dd24f33bda72d50d5b3b7ac304feb62497..ed97e7ef0f29570ec4265c19eac6368d2571a371 100644
--- a/finances/urls.py
+++ b/finances/urls.py
@@ -18,6 +18,9 @@ urlpatterns = [
     url(r'^subsidies/(?P<pk>[0-9]+)/delete/$', views.SubsidyDeleteView.as_view(),
         name='subsidy_delete'),
     url(r'^subsidies/(?P<pk>[0-9]+)/$', views.SubsidyDetailView.as_view(), name='subsidy_details'),
+    url(r'^subsidies/(?P<subsidy_id>[0-9]+)/toggle_amount_visibility/$',
+        views.subsidy_toggle_amount_public_visibility,
+        name='subsidy_toggle_amount_public_visibility'),
     url(r'^subsidies/(?P<subsidy_id>[0-9]+)/attachments/add/$',
         views.SubsidyAttachmentCreateView.as_view(),
         name='subsidyattachment_create'),
diff --git a/finances/views.py b/finances/views.py
index 4addb6a7e4b0655d8dc31cce92bd4ebb086c1984..0b7939f46885888b3e1c55659a60118293425990 100644
--- a/finances/views.py
+++ b/finances/views.py
@@ -88,6 +88,21 @@ class SubsidyDetailView(DetailView):
     model = Subsidy
 
 
+def subsidy_toggle_amount_public_visibility(request, subsidy_id):
+    """
+    Method to toggle the public visibility of the amount of a Subsidy.
+    Callable by Admin and Contacts for the relevant Organization.
+    """
+    subsidy = get_object_or_404(Subsidy, pk=subsidy_id)
+    if not (request.user.has_perm('scipost.can_manage_subsidies') or
+            request.user.has_perm('can_view_org_contacts', subsidy.organization)):
+        raise PermissionDenied
+    subsidy.amount_publicly_shown = not subsidy.amount_publicly_shown
+    subsidy.save()
+    messages.success(request, 'Amount visibility set to %s' % subsidy.amount_publicly_shown)
+    return redirect(subsidy.get_absolute_url())
+
+
 class SubsidyAttachmentCreateView(PermissionsMixin, CreateView):
     """
     Create a new SubsidyAttachment.