diff --git a/gracedb/events/models.py b/gracedb/events/models.py
index 1c7a9c260077c636c3418057c9024eaea4409f5c..c7e12eae8d2a8a58bc780937798bda52c6ca9734 100644
--- a/gracedb/events/models.py
+++ b/gracedb/events/models.py
@@ -1,4 +1,5 @@
 from math import isnan
+import numbers
 
 from django.db import models, IntegrityError
 from django.urls import reverse
@@ -989,9 +990,13 @@ class SingleInspiral(models.Model):
             for f in [cls._meta.get_field(f) for f in cls.field_names()]:
                 value = getattr(row, f.attname, f.default)
 
-                # Handle nan for eff_distance
-                if f.attname == 'eff_distance' and isnan(value):
-                    value = None
+                # Awful kludge for handling nan for eff_distance
+                try:
+                    if (f.attname == 'eff_distance' and
+                        isinstance(value, numbers.Number) and isnan(value)):
+                        value = None
+                except Exception as e:
+                    pass
 
                 # Only set value of class instance member if
                 # value is not None or if field is nullable.