diff --git a/bilby/core/utils.py b/bilby/core/utils.py
index 4e9ae263223595470c3cd227d2e339370b0306ad..0fb1aa4afe39a5289ecb702fa8cd56b25fc17c77 100644
--- a/bilby/core/utils.py
+++ b/bilby/core/utils.py
@@ -977,6 +977,10 @@ class BilbyJsonEncoder(json.JSONEncoder):
     def default(self, obj):
         from .prior import MultivariateGaussianDist, Prior, PriorDict
         from ..gw.prior import HealPixMapPriorDist
+        if isinstance(obj, np.integer):
+            return int(obj)
+        if isinstance(obj, np.floating):
+            return float(obj)
         if isinstance(obj, PriorDict):
             return {'__prior_dict__': True, 'content': obj._get_json_dict()}
         if isinstance(obj, (MultivariateGaussianDist, HealPixMapPriorDist, Prior)):