diff --git a/test/cpp/server/load_reporter/load_reporter_test.cc b/test/cpp/server/load_reporter/load_reporter_test.cc
index 9d2ebfb0b4f5c383324befb8c98da345728e5d78..1866286069e2d356c85c7720ab0ec21c5b15e893 100644
--- a/test/cpp/server/load_reporter/load_reporter_test.cc
+++ b/test/cpp/server/load_reporter/load_reporter_test.cc
@@ -172,9 +172,9 @@ class LbFeedbackTest : public LoadReporterTest {
     // TODO(juanlishen): The error is big because we use sleep(). It should be
     // much smaller when we use fake clock.
     ASSERT_THAT(static_cast<double>(lb_feedback.calls_per_second()),
-                DoubleNear(expected_qps, expected_qps * 0.05));
+                DoubleNear(expected_qps, expected_qps * 0.3));
     ASSERT_THAT(static_cast<double>(lb_feedback.errors_per_second()),
-                DoubleNear(expected_eps, expected_eps * 0.05));
+                DoubleNear(expected_eps, expected_eps * 0.3));
     gpr_log(GPR_INFO,
             "Verified LB feedback matches the samples of index [%lu, %lu).",
             start, start + count);