diff --git a/omaha_request_params.cc b/omaha_request_params.cc
index 4cc5426..19bcc6a 100644
--- a/omaha_request_params.cc
+++ b/omaha_request_params.cc
@@ -147,8 +147,20 @@
 }
 
 bool OmahaRequestDeviceParams::IsValidTrack(const std::string& track) const {
-  return IsOfficialBuild() ?
-      (track == "beta-channel" || track == "dev-channel") : true;
+  static const char* kValidTracks[] = {
+    "canary-channel",
+    "beta-channel",
+    "dev-channel",
+  };
+  if (!IsOfficialBuild()) {
+    return true;
+  }
+  for (size_t t = 0; t < arraysize(kValidTracks); ++t) {
+    if (track == kValidTracks[t]) {
+      return true;
+    }
+  }
+  return false;
 }
 
 void OmahaRequestDeviceParams::SetBuildTypeOfficial(bool is_official) {
diff --git a/omaha_request_params_unittest.cc b/omaha_request_params_unittest.cc
index c136e06..65d86cb 100644
--- a/omaha_request_params_unittest.cc
+++ b/omaha_request_params_unittest.cc
@@ -325,11 +325,13 @@
 
 TEST_F(OmahaRequestDeviceParamsTest, IsValidTrackTest) {
   params_.SetBuildTypeOfficial(true);
+  EXPECT_TRUE(params_.IsValidTrack("canary-channel"));
   EXPECT_TRUE(params_.IsValidTrack("beta-channel"));
   EXPECT_TRUE(params_.IsValidTrack("dev-channel"));
   EXPECT_FALSE(params_.IsValidTrack("some-channel"));
   EXPECT_FALSE(params_.IsValidTrack(""));
   params_.SetBuildTypeOfficial(false);
+  EXPECT_TRUE(params_.IsValidTrack("canary-channel"));
   EXPECT_TRUE(params_.IsValidTrack("beta-channel"));
   EXPECT_TRUE(params_.IsValidTrack("dev-channel"));
   EXPECT_TRUE(params_.IsValidTrack("some-channel"));
