diff --git a/src/entity_manager/perform_scan.cpp b/src/entity_manager/perform_scan.cpp
index 4a3696f..305363e 100644
--- a/src/entity_manager/perform_scan.cpp
+++ b/src/entity_manager/perform_scan.cpp
@@ -487,8 +487,13 @@
         {
             if (keyPair.key() != "Name")
             {
+                // "Probe" string does not contain template variables
+                // Handle left-over variables for "Exposes" later below
+                const bool handleLeftOver =
+                    (keyPair.key() != "Probe") && (keyPair.key() != "Exposes");
                 em_utils::templateCharReplace(keyPair, dbusObject,
-                                              foundDeviceIdx, replaceStr);
+                                              foundDeviceIdx, replaceStr,
+                                              handleLeftOver);
             }
         }
 
diff --git a/src/entity_manager/utils.cpp b/src/entity_manager/utils.cpp
index d3ff6b9..2184fd7 100644
--- a/src/entity_manager/utils.cpp
+++ b/src/entity_manager/utils.cpp
@@ -126,18 +126,25 @@
 // with.
 std::optional<std::string> templateCharReplace(
     nlohmann::json::iterator& keyPair, const DBusObject& object,
-    const size_t index, const std::optional<std::string>& replaceStr)
+    const size_t index, const std::optional<std::string>& replaceStr,
+    bool handleLeftOver)
 {
     for (const auto& [_, interface] : object)
     {
         auto ret = templateCharReplace(keyPair, interface, index, replaceStr);
         if (ret)
         {
-            handleLeftOverTemplateVars(keyPair);
+            if (handleLeftOver)
+            {
+                handleLeftOverTemplateVars(keyPair);
+            }
             return ret;
         }
     }
-    handleLeftOverTemplateVars(keyPair);
+    if (handleLeftOver)
+    {
+        handleLeftOverTemplateVars(keyPair);
+    }
     return std::nullopt;
 }
 
diff --git a/src/entity_manager/utils.hpp b/src/entity_manager/utils.hpp
index d7a4857..04aa992 100644
--- a/src/entity_manager/utils.hpp
+++ b/src/entity_manager/utils.hpp
@@ -30,7 +30,8 @@
 
 std::optional<std::string> templateCharReplace(
     nlohmann::json::iterator& keyPair, const DBusObject& object, size_t index,
-    const std::optional<std::string>& replaceStr = std::nullopt);
+    const std::optional<std::string>& replaceStr = std::nullopt,
+    bool handleLeftOver = true);
 
 std::optional<std::string> templateCharReplace(
     nlohmann::json::iterator& keyPair, const DBusInterface& interface,
