diff --git a/opentech/public/news/migrations/0004_make_author_required.py b/opentech/public/news/migrations/0004_make_author_required.py
new file mode 100644
index 0000000000000000000000000000000000000000..9faddebf05803e73754e4548777430e5ea631cb6
--- /dev/null
+++ b/opentech/public/news/migrations/0004_make_author_required.py
@@ -0,0 +1,22 @@
+# -*- coding: utf-8 -*-
+# Generated by Django 1.11.8 on 2018-01-15 12:59
+from __future__ import unicode_literals
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('news', '0003_newspageauthor'),
+    ]
+
+    operations = [
+        migrations.AlterField(
+            model_name='newspageauthor',
+            name='author',
+            field=models.ForeignKey(default=1, on_delete=django.db.models.deletion.PROTECT, related_name='+', to='wagtailcore.Page'),
+            preserve_default=False,
+        ),
+    ]
diff --git a/opentech/public/news/models.py b/opentech/public/news/models.py
index 6915ec1efbe8c897520533fc85c909a5ef9fdcb1..1d64b4eb673f4e7dbcc8b3343fe423f1438d049f 100644
--- a/opentech/public/news/models.py
+++ b/opentech/public/news/models.py
@@ -59,9 +59,7 @@ class NewsPageAuthor(Orderable):
     )
     author = models.ForeignKey(
         'wagtailcore.Page',
-        null=True,
-        blank=True,
-        on_delete=models.SET_NULL,
+        on_delete=models.PROTECT,
         related_name='+',
     )