diff --git a/algo/detectors/sts/ReadoutConfig.cxx b/algo/detectors/sts/ReadoutConfig.cxx
index e3378766cb3884abc651622abe35c9911ab18d1a..df7c74355d4630c243d8318fa4edb290e02eb688 100644
--- a/algo/detectors/sts/ReadoutConfig.cxx
+++ b/algo/detectors/sts/ReadoutConfig.cxx
@@ -86,8 +86,6 @@ void sts::ReadoutConfig::Init(const ReadoutSetup& config, const ChannelMaskSet&
   const uint16_t numChanPerAsic   = 128;                    ///< Number of channels per ASIC
   const uint16_t numElinksPerComp = numCrobPerComp * numElinksPerCrob;
 
-  fTimeOffset = config.timeOffset;
-
   // Constructing the map (equipmentId, eLink) -> (module, ASIC within module)
   int32_t febBaseIdx = 0;
   for (uint16_t compIdx = 0; compIdx < numComp; compIdx++) {
@@ -102,7 +100,7 @@ void sts::ReadoutConfig::Init(const ReadoutSetup& config, const ChannelMaskSet&
         uint16_t asicInModule = 0;
         bool isPulser         = false;
 
-        uint16_t elinkId  = numElinksPerCrob * crobIdx + elinkIdx;  // elink within component
+        uint16_t elinkId   = numElinksPerCrob * crobIdx + elinkIdx;  // elink within component
         const auto& elinks = config.GetElinks(component.GetFEBType());
         const auto& elink  = elinks.at(elinkId);
 
@@ -132,8 +130,8 @@ void sts::ReadoutConfig::Init(const ReadoutSetup& config, const ChannelMaskSet&
         asicInModule = (moduleSide == 1 ? asicInFeb : numAsicsPerMod - 1 - asicInFeb);
 
         // Init channel mask
-        const int32_t febId          = feb + febBaseIdx;
-        auto mapIt                   = chanMaskSet.values.find(febId);
+        const int32_t febId = feb + febBaseIdx;
+        auto mapIt          = chanMaskSet.values.find(febId);
         if (mapIt != chanMaskSet.values.end()) {
           const auto& mask = mapIt->second;
 
@@ -151,10 +149,10 @@ void sts::ReadoutConfig::Init(const ReadoutSetup& config, const ChannelMaskSet&
 
         fReadoutConfig[equipment][elinkIdx] = {moduleAddress, asicInModule, isPulser};
 
-      }  //# elink
-    }    //# CROB
+      }                                             //# elink
+    }                                               //# CROB
     febBaseIdx += numCrobPerComp * numFebsPerCrob;  // Add the proper offset for the current CROB
-  }      //# component
+  }                                                 //# component
 }
 
 sts::ReadoutConfig::Entry sts::ReadoutConfig::Map(uint16_t equipmentId, uint16_t elinkId)
diff --git a/algo/detectors/sts/ReadoutConfig.h b/algo/detectors/sts/ReadoutConfig.h
index c24030f3ae05fdb73773bd84f56e9ec9a73230f1..b3db24c21975cfc0b28623368c171bdbe69bb826 100644
--- a/algo/detectors/sts/ReadoutConfig.h
+++ b/algo/detectors/sts/ReadoutConfig.h
@@ -70,7 +70,6 @@ namespace cbm::algo::sts
         yaml::Property(&Elink::toAsicFebB, "toAsicFebB", "Mapping of eLink to ASIC for FEB Type B", YAML::Hex));
     };
 
-    i32 timeOffset;
     u16 numAsicsPerFeb;
     std::vector<Module> modules;
     std::vector<Component> components;
@@ -79,8 +78,7 @@ namespace cbm::algo::sts
 
     const std::vector<Elink>& GetElinks(FEBType type) const;
 
-    CBM_YAML_PROPERTIES(yaml::Property(&ReadoutSetup::timeOffset, "timeOffset", "Time offset for STS", YAML::Hex),
-                        yaml::Property(&ReadoutSetup::numAsicsPerFeb, "numAsicsPerFeb", "Number of ASICs per FEB"),
+    CBM_YAML_PROPERTIES(yaml::Property(&ReadoutSetup::numAsicsPerFeb, "numAsicsPerFeb", "Number of ASICs per FEB"),
                         yaml::Property(&ReadoutSetup::modules, "modules", "Modules", {}, YAML::Flow),
                         yaml::Property(&ReadoutSetup::components, "components", "Components", {}, YAML::Flow),
                         yaml::Property(&ReadoutSetup::elinksFeb8_1, "elinksFeb8_1",
@@ -114,8 +112,6 @@ namespace cbm::algo::sts
     /** @brief Constructor **/
     ReadoutConfig(const ReadoutSetup&, const ChannelMaskSet&);
 
-    i64 TimeOffset() const { return fTimeOffset; }
-
     /** @brief Equipment in the configuration
    ** @return Vector of equipment IDs
       **/
@@ -158,8 +154,6 @@ namespace cbm::algo::sts
     std::string PrintReadoutMap();
 
    private:
-    i32 fTimeOffset = 0;  // Time offset for STS
-
     // --- STS readout map
     // --- Map index: (equipment, elink)
     std::map<u16, std::vector<Entry>> fReadoutConfig = {};  //!
diff --git a/algo/detectors/sts/Unpack.cxx b/algo/detectors/sts/Unpack.cxx
index 8b11338c5c06e7dc5ab57d8e81e3811d261a8959..44bb67928fcbfb27814dbe97331ae428b46d582c 100644
--- a/algo/detectors/sts/Unpack.cxx
+++ b/algo/detectors/sts/Unpack.cxx
@@ -28,7 +28,7 @@ Unpack::Unpack(const Config& config) : fConfig(config)
       auto mapEntry        = fConfig.readout.Map(equip, elink);
       elinkPar.fAddress    = mapEntry.moduleAddress;  // Module address for this elink
       elinkPar.fAsicNr     = mapEntry.asicNumber;     // ASIC number within module
-      elinkPar.fTimeOffset = fConfig.readout.TimeOffset();
+      elinkPar.fTimeOffset = fConfig.walkMap.TimeOffset();
       elinkPar.fAdcMinCut  = fConfig.readout.AdcCutMap(equip, elink);
       elinkPar.fAdcOffset  = 1.;
       elinkPar.fAdcGain    = 1.;
diff --git a/algo/detectors/sts/WalkMap.h b/algo/detectors/sts/WalkMap.h
index dfccad402eb8c25d29d07da916fb9da1c86a3ea1..537d8bd6f956e3bc183714cac5d6982eb0cbf365 100644
--- a/algo/detectors/sts/WalkMap.h
+++ b/algo/detectors/sts/WalkMap.h
@@ -30,6 +30,9 @@ namespace cbm::algo::sts
      */
     std::vector<double> Get(int32_t modAddress, uint16_t asic);
 
+    /** @brief Get system time offset. **/
+    i32 TimeOffset() { return timeOffset; }
+
    private:
     // Move ADC into seperate class for easier YAML formatting
     struct AdcMap {
@@ -44,12 +47,16 @@ namespace cbm::algo::sts
       CBM_YAML_PROPERTIES(yaml::Property(&AdcMap::walkCoefficients, "walkCoefficients", "Walk coefficients"));
     };
 
+    // --- STS system time offset
+    i32 timeOffset;
+
     // --- STS walk correction map
     // --- Map index: (module address, ASIC number in module, ADC value), map value: (walk coefficient)
     std::map<i32, std::vector<AdcMap>> fWalkMap;
 
     CBM_YAML_MERGE_PROPERTY();
-    CBM_YAML_PROPERTIES(yaml::Property(&WalkMap::fWalkMap, "WalkMap", "Walk correction map", YAML::Hex, YAML::Flow));
+    CBM_YAML_PROPERTIES( yaml::Property(&WalkMap::timeOffset, "timeOffset", "Time offset for STS", YAML::Hex),
+		    yaml::Property(&WalkMap::fWalkMap, "WalkMap", "Walk correction map", YAML::Hex, YAML::Flow));
   };
 
 }  // namespace cbm::algo::sts