diff --git a/private/compat/26.0/26.0.ignore.cil b/private/compat/26.0/26.0.ignore.cil
index c585b668ca15df071c08be9d4760764bde2898e9..5f4950c8ae718f95f67c6d65b04e82a25a761acd 100644
--- a/private/compat/26.0/26.0.ignore.cil
+++ b/private/compat/26.0/26.0.ignore.cil
@@ -57,6 +57,7 @@
     fastbootd
     fingerprint_vendor_data_file
     fs_bpf
+    fwk_stats_hwservice
     hal_atrace_hwservice
     hal_audiocontrol_hwservice
     hal_authsecret_hwservice
diff --git a/private/compat/27.0/27.0.ignore.cil b/private/compat/27.0/27.0.ignore.cil
index 95d820e08f52faf68188932025affaa62580c4ca..891f1a3d6c9ddd6cd1739b233eec34b639934c48 100644
--- a/private/compat/27.0/27.0.ignore.cil
+++ b/private/compat/27.0/27.0.ignore.cil
@@ -53,6 +53,7 @@
     fastbootd
     fingerprint_vendor_data_file
     fs_bpf
+    fwk_stats_hwservice
     hal_atrace_hwservice
     hal_audiocontrol_hwservice
     hal_authsecret_hwservice
diff --git a/private/compat/28.0/28.0.ignore.cil b/private/compat/28.0/28.0.ignore.cil
index 4add5c6890840bb0970b63782ae72ec96d7d8914..4310f03029e885de86dde28c966fb0b7e87ceed4 100644
--- a/private/compat/28.0/28.0.ignore.cil
+++ b/private/compat/28.0/28.0.ignore.cil
@@ -10,6 +10,7 @@
     ;; TODO(b/116344577): remove after the issue is resolved
     buffer_hub_service
     fastbootd
+    fwk_stats_hwservice
     color_display_service
     hal_atrace_hwservice
     hal_health_storage_hwservice
diff --git a/private/hwservice_contexts b/private/hwservice_contexts
index f12385fc1dd38a1b7a4ca52da0b64b33c64cdae8..e7354a74c510e9a547b02b5359ae43685651f173 100644
--- a/private/hwservice_contexts
+++ b/private/hwservice_contexts
@@ -1,6 +1,7 @@
 android.frameworks.displayservice::IDisplayService              u:object_r:fwk_display_hwservice:s0
 android.frameworks.schedulerservice::ISchedulingPolicyService   u:object_r:fwk_scheduler_hwservice:s0
 android.frameworks.sensorservice::ISensorManager                u:object_r:fwk_sensor_hwservice:s0
+android.frameworks.stats::IStats                                u:object_r:fwk_stats_hwservice:s0
 android.hardware.atrace::IAtraceDevice                          u:object_r:hal_atrace_hwservice:s0
 android.hardware.audio.effect::IEffectsFactory                  u:object_r:hal_audio_hwservice:s0
 android.hardware.audio::IDevicesFactory                         u:object_r:hal_audio_hwservice:s0
diff --git a/public/hwservice.te b/public/hwservice.te
index e7ef2bb85fef2b4464f3eb92ac9c02a1ecd18330..0064d9de382ecfe1d0f49938092ce4505b55c423 100644
--- a/public/hwservice.te
+++ b/public/hwservice.te
@@ -2,6 +2,7 @@ type default_android_hwservice, hwservice_manager_type;
 type fwk_display_hwservice, hwservice_manager_type, coredomain_hwservice;
 type fwk_scheduler_hwservice, hwservice_manager_type, coredomain_hwservice;
 type fwk_sensor_hwservice, hwservice_manager_type, coredomain_hwservice;
+type fwk_stats_hwservice, hwservice_manager_type, coredomain_hwservice;
 type hal_atrace_hwservice, hwservice_manager_type;
 type hal_audiocontrol_hwservice, hwservice_manager_type;
 type hal_audio_hwservice, hwservice_manager_type;
diff --git a/public/statsd.te b/public/statsd.te
index 9c8e9d24c7e5e56b684e5d69ea82f9b1996b9ae0..384ce8a5924036b5db00a9ccba729fcd678a0f3f 100644
--- a/public/statsd.te
+++ b/public/statsd.te
@@ -46,6 +46,9 @@ allow statsd {
   system_api_service
 }:service_manager find;
 
+# Allow statsd to add as HIDL service.
+add_hwservice(statsd, fwk_stats_hwservice)
+
 # Grant statsd to access health hal to access battery metrics.
 allow statsd hal_health_hwservice:hwservice_manager find;