A multi-tenant system provides software-updating functionality that selectively updates tenant systems according to a number of different factors. In some embodiments, the factors include evaluation of “health metrics” that quantify how well tenant systems are functioning after an update of software components to the latest version, policies specified by either the tenants or the multi-tenant system (or both), and/or “kill switches” specified by the multi-tenant system that prevent updating, as some examples.