diff --git a/geomagio/edge/MiniSeedFactory.py b/geomagio/edge/MiniSeedFactory.py
index bd2feb81da2879c2ab0024248e0dd0996c4fa69b..ff03c0406497c2a5bfab0c2b5f1dccdf2f279d42 100644
--- a/geomagio/edge/MiniSeedFactory.py
+++ b/geomagio/edge/MiniSeedFactory.py
@@ -362,9 +362,6 @@ class MiniSeedFactory(TimeseriesFactory):
             sncl.network, sncl.station, sncl.location, sncl.channel, starttime, endtime
         )
         data.merge()
-        TimeseriesUtility.pad_and_trim_trace(
-            trace=data[0], starttime=starttime, endtime=endtime
-        )
         if data.count() == 0 and add_empty_channels:
             data += self._get_empty_trace(
                 starttime=starttime,
@@ -376,6 +373,10 @@ class MiniSeedFactory(TimeseriesFactory):
                 network=sncl.network,
                 location=sncl.location,
             )
+        if data.count() != 0:
+            TimeseriesUtility.pad_and_trim_trace(
+                trace=data[0], starttime=starttime, endtime=endtime
+            )
         self._set_metadata(data, observatory, channel, type, interval)
         return data