diff --git a/geomagio/edge/MiniSeedFactory.py b/geomagio/edge/MiniSeedFactory.py
index ff03c0406497c2a5bfab0c2b5f1dccdf2f279d42..c9c3122c1adab7af744ee34b93525c7bbde75005 100644
--- a/geomagio/edge/MiniSeedFactory.py
+++ b/geomagio/edge/MiniSeedFactory.py
@@ -361,6 +361,8 @@ class MiniSeedFactory(TimeseriesFactory):
         data = self.client.get_waveforms(
             sncl.network, sncl.station, sncl.location, sncl.channel, starttime, endtime
         )
+        for trace in data:
+            trace.data = trace.data.astype(data[0].data.dtype)
         data.merge()
         if data.count() == 0 and add_empty_channels:
             data += self._get_empty_trace(