diff --git a/Tracking/Acts/ActsGeometry/src/ActsPropStepRootWriterSvc.cxx b/Tracking/Acts/ActsGeometry/src/ActsPropStepRootWriterSvc.cxx
index df1f28447bb2f543f0142e031908afe4df9d972b..51d52f868b8822a9a21fb13a793ea7748cabc02f 100644
--- a/Tracking/Acts/ActsGeometry/src/ActsPropStepRootWriterSvc.cxx
+++ b/Tracking/Acts/ActsGeometry/src/ActsPropStepRootWriterSvc.cxx
@@ -140,23 +140,23 @@ ActsPropStepRootWriterSvc::doWrite(const StepVector& steps, size_t evtNum)
   m_s_sensitiveID.clear();
 
   for(const auto& step : steps) {
-      geo_id_value volumeID    = 0;
-      geo_id_value boundaryID  = 0;
-      geo_id_value layerID     = 0;
-      geo_id_value approachID  = 0;
-      geo_id_value sensitiveID = 0;
+      Acts::GeometryID::Value volumeID    = 0;
+      Acts::GeometryID::Value boundaryID  = 0;
+      Acts::GeometryID::Value layerID     = 0;
+      Acts::GeometryID::Value approachID  = 0;
+      Acts::GeometryID::Value sensitiveID = 0;
       // get the identification from the surface first
       if (step.surface) {
         auto geoID  = step.surface->geoID();
-        sensitiveID = geoID.value(ag::sensitive_mask);
-        approachID  = geoID.value(ag::approach_mask);
-        layerID     = geoID.value(ag::layer_mask);
-        boundaryID  = geoID.value(ag::boundary_mask);
-        volumeID    = geoID.value(ag::volume_mask);
+        sensitiveID = geoID.sensitive();
+        approachID  = geoID.approach();
+        layerID     = geoID.layer();
+        boundaryID  = geoID.boundary();
+        volumeID    = geoID.volume();
       }
       // a current volume overwrites the surface tagged one
       if (step.volume) {
-        volumeID = step.volume->geoID().value(ag::volume_mask);
+        volumeID = step.volume->geoID().volume();
       }
       // now fill
       m_s_sensitiveID.push_back(sensitiveID);
diff --git a/Tracking/Acts/ActsGeometry/src/ActsWriteTrackingGeometryTransforms.cxx b/Tracking/Acts/ActsGeometry/src/ActsWriteTrackingGeometryTransforms.cxx
index a3bac4aff1ab748c9fd2716527f3c43dba59f8d5..25dbd9a5a459457815e537961e02bc0e9fbe7574 100644
--- a/Tracking/Acts/ActsGeometry/src/ActsWriteTrackingGeometryTransforms.cxx
+++ b/Tracking/Acts/ActsGeometry/src/ActsWriteTrackingGeometryTransforms.cxx
@@ -59,11 +59,11 @@ StatusCode ActsWriteTrackingGeometryTransforms::execute() {
     }
 
     gid geoID = srf->geoID();
-    os << geoID.value(gid::volume_mask) << ";";
-    os << geoID.value(gid::boundary_mask) << ";";
-    os << geoID.value(gid::layer_mask) << ";";
-    os << geoID.value(gid::approach_mask) << ";";
-    os << geoID.value(gid::sensitive_mask) << ";";
+    os << geoID.volume() << ";";
+    os << geoID.boundary() << ";";
+    os << geoID.layer() << ";";
+    os << geoID.approach() << ";";
+    os << geoID.sensitive() << ";";
 
     os << ctx.eventID().event_number() << ";";
 
diff --git a/Tracking/Acts/ActsGeometry/src/util/ObjSurfaceWriter.cxx b/Tracking/Acts/ActsGeometry/src/util/ObjSurfaceWriter.cxx
index 5dd12d30d427175c06e24542cd98658503d9de66..c496e4a044278e97a842f2369c2480657d4046df 100644
--- a/Tracking/Acts/ActsGeometry/src/util/ObjSurfaceWriter.cxx
+++ b/Tracking/Acts/ActsGeometry/src/util/ObjSurfaceWriter.cxx
@@ -138,7 +138,7 @@ Acts::ObjSurfaceWriter::write(const Acts::GeometryContext &gctx,
     ACTS_VERBOSE(">>Obj: Writing out a CylinderSurface with r = "
                  << cylinderBounds->r());
     // name the object
-    auto layerID = surface.geoID().value(Acts::GeometryID::layer_mask);
+    auto layerID = surface.geoID().layer();
     (*(m_cfg.outputStream))
         << " o Cylinder_" << std::to_string(layerID) << '\n';
     // output to the file
@@ -160,7 +160,7 @@ Acts::ObjSurfaceWriter::write(const Acts::GeometryContext &gctx,
     ACTS_VERBOSE(">>Obj: Writing out a DiskSurface at z = "
                  << sTransform.translation().z());
     // name the object
-    auto layerID = surface.geoID().value(Acts::GeometryID::layer_mask);
+    auto layerID = surface.geoID().layer();
     (*(m_cfg.outputStream)) << "o Disk_" << std::to_string(layerID) << '\n';
     // we use the tube writer in the other direction
     double rMin      = radialBounds->rMin();