diff --git a/dbus-sdr/sensorcommands.cpp b/dbus-sdr/sensorcommands.cpp
index 39e61f0..b4dfa5a 100644
--- a/dbus-sdr/sensorcommands.cpp
+++ b/dbus-sdr/sensorcommands.cpp
@@ -14,6 +14,8 @@
 // limitations under the License.
 */
 
+#include "config.h"
+
 #include "dbus-sdr/sensorcommands.hpp"
 
 #include "dbus-sdr/sdrutils.hpp"
@@ -483,7 +485,7 @@
 
     if (name.size() > FULL_RECORD_ID_STR_MAX_LENGTH)
     {
-        // try to not truncate by replacing common words
+#ifdef SHORTNAME_REMOVE_SUFFIX
         for (const auto& suffix : suffixes)
         {
             if (boost::ends_with(name, suffix))
@@ -492,10 +494,19 @@
                 break;
             }
         }
-        if (name.size() > FULL_RECORD_ID_STR_MAX_LENGTH)
+#endif
+#ifdef SHORTNAME_REPLACE_WORDS
+        constexpr std::array<std::pair<const char*, const char*>, 2>
+            replaceWords = {std::make_pair("Output", "Out"),
+                            std::make_pair("Input", "In")};
+        for (const auto& [find, replace] : replaceWords)
         {
-            name.resize(FULL_RECORD_ID_STR_MAX_LENGTH);
+            boost::replace_all(name, find, replace);
         }
+#endif
+
+        // as a backup and if nothing else is configured
+        name.resize(FULL_RECORD_ID_STR_MAX_LENGTH);
     }
     return name;
 }
