diff --git a/omaha_request_action.cc b/omaha_request_action.cc
index 2943ad8..b19627b 100644
--- a/omaha_request_action.cc
+++ b/omaha_request_action.cc
@@ -128,10 +128,8 @@
       body += StringPrintf(
           "        <updatecheck"
           " targetversionprefix=\"%s\""
-          " userinitiated=\"%s\""
           "></updatecheck>\n",
-          XmlEncode(params.target_version_prefix).c_str(),
-          (params.interactive ? "true" : "false"));
+          XmlEncode(params.target_version_prefix).c_str());
 
       // If this is the first update check after a reboot following a previous
       // update, generate an event containing the previous version number. If
@@ -170,6 +168,8 @@
       "<request protocol=\"3.0\" "
       "version=\"" + XmlEncode(kGupdateVersion) + "\" "
       "updaterversion=\"" + XmlEncode(kGupdateVersion) + "\" "
+      "installsource=\"" +
+      (params.interactive ? "ondemandupdate" : "scheduler") + "\" "
       "ismachine=\"1\">\n"
       "    <os version=\"" + XmlEncode(params.os_version) + "\" platform=\"" +
       XmlEncode(params.os_platform) + "\" sp=\"" +
diff --git a/omaha_request_action_unittest.cc b/omaha_request_action_unittest.cc
index 42b2134..5ce87d7 100644
--- a/omaha_request_action_unittest.cc
+++ b/omaha_request_action_unittest.cc
@@ -918,7 +918,6 @@
       "        <ping active=\"1\" a=\"-1\" r=\"-1\"></ping>\n"
       "        <updatecheck"
       " targetversionprefix=\"\""
-      " userinitiated=\"false\""
       "></updatecheck>\n"),
       string::npos);
   EXPECT_NE(post_str.find("hardware_class=\"OEM MODEL 09235 7471\""),
@@ -949,7 +948,6 @@
       "        <ping active=\"1\" a=\"-1\" r=\"-1\"></ping>\n"
       "        <updatecheck"
       " targetversionprefix=\"\""
-      " userinitiated=\"false\""
       "></updatecheck>\n"),
       string::npos);
   EXPECT_NE(post_str.find("hardware_class=\"OEM MODEL 09235 7471\""),
@@ -1058,7 +1056,7 @@
 TEST(OmahaRequestActionTest, FormatInteractiveOutputTest) {
   for (int i = 0; i < 2; i++) {
     bool interactive = i == 1;
-    const char* interactive_str = interactive ? "true" : "false";
+    const char* interactive_str = interactive ? "ondemandupdate" : "scheduler";
     vector<char> post_data;
     OmahaRequestParams params(OmahaRequestParams::kOsPlatform,
                               OmahaRequestParams::kOsVersion,
@@ -1084,7 +1082,7 @@
                                  &post_data));
     // convert post_data to string
     string post_str(&post_data[0], post_data.size());
-    EXPECT_NE(post_str.find(StringPrintf(" userinitiated=\"%s\"",
+    EXPECT_NE(post_str.find(StringPrintf("installsource=\"%s\"",
                                          interactive_str)),
               string::npos)
         << "i = " << i;
