Faits: A. Depuis octobre 1962, Z._ était locataire d'un appartement de six pièces dans un immeuble situé au quai ... n° xxx à Genève. Il louait également une place de parc extérieure, en vertu d'un contrat de bail distinct. L'immeuble a changé de propriétaires, la dernière en date étant la Fondation X._, qui a aussi acquis les deux immeubles attenants (n os yyy et zzz). Entre 2006 et 2008, elle a fait procéder à des travaux dans les trois édifices. Le locataire précité est décédé le 14 février 2010, laissant pour héritiers ses trois fils A.Z._, B.Z._ et C.Z._. Ce dernier est venu s'installer dans l'appartement, qui n'a subi aucune rénovation depuis de très nombreuses années. Le loyer, fixé en dernier lieu le 1er janvier 2004, est de 1'593 fr. par mois, soit 19'116 fr. par an, charges non comprises. Par avis officiels du 2 août 2010, adressés aux trois héritiers, la bailleresse a résilié les baux afférents à l'appartement et à la place de parc pour le 30 septembre 2011. Elle a précisé qu'elle souhaitait reprendre la libre disposition de l'appartement. B. B.a. Les héritiers du locataire (ci-après: les locataires) ont contesté les résiliations par requête du 30 août 2010 adressée à la Commission genevoise de conciliation en matière de baux et loyers. Le 14 septembre 2010, l'avocat de la bailleresse a motivé les congés de la façon suivante: sa cliente entendait pouvoir mettre le logement à disposition d'autres locataires et obtenir "un loyer nettement supérieur" au montant actuel. Le loyer n'était plus en rapport avec les qualités et la situation de l'appartement. Dans le même immeuble, trois appartements similaires avaient pu être loués à des montants compris entre 10'000 fr. et 15'000 fr. par mois, charges non comprises. Par décision du 25 août 2011, l'autorité de conciliation a constaté la validité du congé [recte: des congés] notifié[s] pour le 30 septembre 2011; elle a accordé une unique prolongation de bail jusqu'au 30 septembre 2013. Le 30 septembre 2011, les locataires ont saisi le Tribunal des baux et loyers. Ils ont conclu principalement à l'annulation des congés, subsidiairement à l'octroi d'une prolongation jusqu'au 30 septembre 2015. Les locataires ont requis la production de pièces particulières et de tout document permettant d'effectuer un calcul de rendement. Par ordonnance du 4 novembre 2011, le Tribunal a invité la bailleresse à produire les pièces nécessaires au calcul de rendement net, dont en particulier "le détail des amortissements des dettes hypothécaires/chirographaires, en précisant les dates auxquelles ils [avaie]nt été effectués, depuis l'achat de l'immeuble". Il était précisé que les documents comptables devaient être signés par les propriétaires ou certifiés conformes par leur fiduciaire, la production de pièces en vrac étant insuffisante. La bailleresse voyait son attention attirée sur les conclusions qui pouvaient être tirées si elle refusait de produire ces pièces, à savoir l'indice de ce qu'elle cachait un rendement abusif. Dans le dispositif de l'ordonnance, le Tribunal invitait la bailleresse à remettre toute pièce justificative afférente aux charges de l'immeuble et fixait un délai pour déposer une réponse et produire un calcul de rendement. La bailleresse a produit diverses pièces. Par jugement du 14 septembre 2012, le Tribunal des baux et loyers a annulé les congés donnés pour le 30 septembre 2011 et débouté les parties de toutes autres conclusions. Le tribunal a constaté que les résiliations étaient motivées par le souhait de relouer l'appartement plus cher à un tiers. Il a examiné si la bailleresse, d'après le calcul de rendement net, était effectivement en droit d'exiger un loyer plus élevé. Il a notamment fait les observations suivantes: les charges financières et amortissements allégués reposaient sur un décompte lacunaire peu lisible dépourvu de force probante (pièce 11 de la défenderesse). Toutefois, les montants allégués pouvaient être intégrés dans le calcul de rendement, car l'on aboutissait de toute façon à un résultat favorable aux locataires. En revanche, il n'y avait pas à tenir compte des montants articulés pour les travaux de rénovation effectués entre 2006 et 2008: il n'était pas démontré qu'ils aient été financés par des fonds propres, ni qu'ils aient profité au locataire. L'on obtenait en définitive un loyer maximal admissible supérieur de 92 fr. au loyer actuel de 19'116 fr. Ce dernier procurait déjà un rendement suffisant à la bailleresse, qui avait contrevenu aux règles de la bonne foi en résiliant les baux. B.b. La bailleresse a déféré cette décision à la Chambre des baux et loyers de la Cour de justice, qui l'a confirmée par arrêt du 24 juin 2013. La Chambre retient notamment ce qui suit: la pièce 11 relative aux intérêts et amortissements est effectivement dépourvue de valeur probante. L'on ne peut dès lors rien retenir à ce titre dans le calcul de rendement. Cela suffit en soi à sceller le sort de la cause. Quoi qu'il en soit, l'on devrait au mieux admettre que 50 % des travaux réalisés pour un coût de 7'129'626 fr. ont entraîné une plus-value (art. 14 al. 1 OBLF; RS 221.213.11). Même en intégrant ce montant (3'564'813 fr.) dans le calcul de rendement, l'on obtiendrait un loyer maximal admissible encore inférieur à celui retenu par les premiers juges. C. La bailleresse saisit le Tribunal fédéral d'un recours en matière civile. A titre principal, elle requiert que les congés signifiés pour le 30 septembre 2011 soient déclarés valables et qu'il soit pris acte qu'elle consent à accorder une unique prolongation de bail d'une année. Les locataires intimés concluent au rejet du recours, subsidiairement à une prolongation de bail jusqu'au 30 septembre 2015. L'autorité précédente se réfère à son arrêt.