diff --git a/program/models.py b/program/models.py
index bad049fc71e03a976619122b1da5ccadb574f361..cb953ca09bf0166190af9470bac6fadd988036d4 100644
--- a/program/models.py
+++ b/program/models.py
@@ -175,22 +175,11 @@ class Language(models.Model):
         return self.name
 
 
-class Host(models.Model):
+class Host(ModelWithImageFields):
     name = models.CharField(max_length=128)
     is_active = models.BooleanField(default=True)
     email = models.EmailField(blank=True)
     biography = models.TextField(blank=True, null=True)
-    ppoi = PPOIField()
-    height = models.PositiveIntegerField(blank=True, null=True, editable=False)
-    width = models.PositiveIntegerField(blank=True, null=True, editable=False)
-    image = VersatileImageField(
-        blank=True,
-        null=True,
-        upload_to="host_images",
-        width_field="width",
-        height_field="height",
-        ppoi_field="ppoi",
-    )
 
     class Meta:
         ordering = ("name",)
@@ -198,14 +187,6 @@ class Host(models.Model):
     def __str__(self):
         return self.name
 
-    def save(self, *args, **kwargs):
-        super(Host, self).save(*args, **kwargs)
-
-        # Generate thumbnails
-        if self.image.name and THUMBNAIL_SIZES:
-            for size in THUMBNAIL_SIZES:
-                self.image.thumbnail = self.image.crop[size].name
-
 
 class Link(models.Model):
     description = models.CharField(max_length=16)