diff --git a/include/SensorPaths.hpp b/include/SensorPaths.hpp
new file mode 100644
index 0000000..7becd18
--- /dev/null
+++ b/include/SensorPaths.hpp
@@ -0,0 +1,55 @@
+#pragma once
+
+#include <cstring>
+#include <string>
+
+namespace sensors
+{
+
+// This is the leading prefix of the object path for sensors.
+// The full path is /xyz/openbmc_project/sensors/<Measure>/<Name>
+// Note C++20 would allow this to be "constexpr std::string"
+const char* objectPathPrefix = "/xyz/openbmc_project/sensors/";
+
+// This is an allowlist of the units a sensor can measure. Should be in sync
+// with
+// phosphor-dbus-interfaces/blob/master/xyz/openbmc_project/Sensor/Value.interface.yaml#L35
+
+std::string getPathForUnits(const std::string& units)
+{
+    if (units == "DegreesC")
+    {
+        return "temperature";
+    }
+    if (units == "RPMS")
+    {
+        return "fan_tach";
+    }
+    if (units == "Volts")
+    {
+        return "voltage";
+    }
+    if (units == "Meters")
+    {
+        return "altitude";
+    }
+    if (units == "Amperes")
+    {
+        return "current";
+    }
+    if (units == "Watts")
+    {
+        return "power";
+    }
+    if (units == "Joules")
+    {
+        return "energy";
+    }
+    if (units == "Percent")
+    {
+        return "Utilization";
+    }
+    return "";
+}
+
+} // namespace sensors
