diff --git a/opentech/public/mailchimp/views.py b/opentech/public/mailchimp/views.py
index 56534258b7d2d0f48f37929f8bc3169d08bd2666..ae0a9e4a32b4306d99f91c946e993fe2e1a83fe5 100644
--- a/opentech/public/mailchimp/views.py
+++ b/opentech/public/mailchimp/views.py
@@ -1,5 +1,7 @@
 import logging
 
+from time import time
+
 from django.conf import settings
 from django.contrib import messages
 from django.http import HttpResponseRedirect
@@ -76,8 +78,15 @@ class MailchimpSubscribeView(FormMixin, RedirectView):
         messages.success(self.request, _('Thank you for subscribing'))
 
     def get_success_url(self):
-        # Go back to where you came from
-        return self.request.META['HTTP_REFERER']
+        # Go back to where you came from, default to front page.
+        origin = '/'
+        if 'HTTP_ORIGIN' in self.request.META:
+            origin = self.request.META['HTTP_ORIGIN']
+        elif 'HTTP_REFERER' in self.request.META:
+            origin = self.request.META['HTTP_REFERER']
+
+        # Add cache busting query string.
+        return origin + '?newsletter-' + str(time.time())
 
     def get_redirect_url(self):
         # We don't know where you came from, go home