Citation: 4A_415/2015 E. A

A.a. Le 17 février 2010, X.________ SA (ci-après: la bailleresse) a convenu de céder à H.Z.________ et F.Z.________ (ci-après: les locataires) l'usage d'un appartement de cinq pièces au quatrième étage d'un immeuble situé dans la commune de ... (GE). Le contrat de bail a été conclu pour une durée initiale d'un an, du 1 er mars 2010 au 28 février 2011, avec clause de renouvellement tacite d'année en année. Le loyer a été fixé à 18'894 fr. par an, soit 1'574 fr. 50 par mois, charges non comprises. Le bâtiment abritant l'appartement loué était classé jusqu'au 31 décembre 2011 dans la catégorie des habitations à loyers modérés (HLM) et soumis à la loi générale genevoise sur le logement et la protection des locataires (LGL; rs/GE I 4 05). Ce même 17 février 2010, les parties ont signé l'avenant suivant: "L'immeuble sort du régi[m]e HLM au 31 décembre 2011. D'entente entre les parties, il est donc précisé ce qui suit: Dès le 1er mars 2012, le loyer passe à CHF 2'100.- + les charges, selon l'avis de majoration ci-joint. (...) " L'avis officiel de majoration de loyer annexé à cet avenant énonce que le loyer annuel sera augmenté à 25'200 fr. dès le 1 er mars 2012. Il est motivé ainsi: "Fin du régime HLM. CO 269a, lettre a: Adaptation aux loyers usuels pratiqués dans le quartier, soit une hausse de CHF 525.50/mois". Les locataires n'ont pas contesté cet avis dans le délai de trente jours imparti par l'art. 270 al. 1 CO. A.b. Par courrier du 29 novembre 2011, les locataires ont sollicité une baisse de loyer de 474 fr. 50 par mois dès le 1 er mars 2012. Ils ont demandé qu'un calcul de rendement soit effectué. Répondant par lettre du 6 décembre 2011, la bailleresse a refusé d'entrer en matière.