diff --git a/gracedb/migrations/guardian/0004_add_guardian_anonymoususer_to_public_group.py b/gracedb/migrations/guardian/0004_add_guardian_anonymoususer_to_public_group.py
new file mode 100644
index 0000000000000000000000000000000000000000..fbd73f93760694827ab7ba2619fadd02c7f58e67
--- /dev/null
+++ b/gracedb/migrations/guardian/0004_add_guardian_anonymoususer_to_public_group.py
@@ -0,0 +1,48 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.14 on 2018-08-09 14:20
+from __future__ import unicode_literals
+
+from django.conf import settings
+from django.db import migrations
+
+from guardian.conf import settings as guardian_settings
+
+
+def add_to_group(apps, schema_editor):
+    User = apps.get_model('auth', 'User')
+    Group = apps.get_model('auth', 'Group')
+
+    # Get anonymous user
+    user = User.objects.get(username=guardian_settings.ANONYMOUS_USER_NAME)
+
+    # Get public group
+    group = Group.objects.get(name=settings.PUBLIC_GROUP)
+
+    # Add user to group
+    group.user_set.add(user)
+
+
+def remove_from_group(apps, schema_editor):
+    User = apps.get_model('auth', 'User')
+    Group = apps.get_model('auth', 'Group')
+
+    # Get anonymous user
+    user = User.objects.get(username=guardian_settings.ANONYMOUS_USER_NAME)
+
+    # Get public group
+    group = Group.objects.get(name=settings.PUBLIC_GROUP)
+
+    # Add user to group
+    group.user_set.remove(user)
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('guardian', '0003_update_emfollow_accounts'),
+        ('auth', '0010_initial_group_data'),
+    ]
+
+    operations = [
+        migrations.RunPython(add_to_group, remove_from_group),
+    ]