diff --git a/geomagio/edge/EdgeFactory.py b/geomagio/edge/EdgeFactory.py
index 7f681f25dc6df0ac03bfb75821dbc86c1ffbd0b3..87e254c221ce136080be47bc41bf64c74954d30e 100644
--- a/geomagio/edge/EdgeFactory.py
+++ b/geomagio/edge/EdgeFactory.py
@@ -60,6 +60,10 @@ class EdgeFactory(TimeseriesFactory):
     locationCode: str
         the location code for the given edge server, overrides type
         in get_timeseries/put_timeseries
+    scaleFactor: int
+        all data written to edge (via raw input client) will be scaled
+        by this integer prior to write; all data read from edge will be
+        will be divided by this integer after read; default = 1000
 
     See Also
     --------
@@ -86,6 +90,7 @@ class EdgeFactory(TimeseriesFactory):
         interval: Optional[DataInterval] = None,
         observatoryMetadata: Optional[ObservatoryMetadata] = None,
         locationCode: Optional[str] = None,
+        scaleFactor: int = 1000,
     ):
         TimeseriesFactory.__init__(self, observatory, channels, type, interval)
         if port == 2060:
@@ -102,6 +107,7 @@ class EdgeFactory(TimeseriesFactory):
         self.interval = interval
         self.observatoryMetadata = observatoryMetadata or ObservatoryMetadata()
         self.locationCode = locationCode
+        self.scaleFactor = scaleFactor
 
     def get_timeseries(
         self,
@@ -245,7 +251,7 @@ class EdgeFactory(TimeseriesFactory):
             make a copy before calling if they don't want that side effect.
         """
         for trace in stream:
-            trace.data = numpy.divide(trace.data, 1000.00)
+            trace.data = numpy.divide(trace.data, self.scaleFactor)
 
     def _convert_trace_to_int(self, trace_in: Trace) -> Trace:
         """convert geomag edge traces stored as decimal, to ints by multiplying
@@ -265,7 +271,7 @@ class EdgeFactory(TimeseriesFactory):
         the trace must be a masked array.
         """
         trace = trace_in.copy()
-        trace.data = numpy.multiply(trace.data, 1000.00)
+        trace.data = numpy.multiply(trace.data, self.scaleFactor)
         trace.data = trace.data.astype(int)
 
         return trace