Faits: A. Selon contrat conclu le 16 septembre 2005 avec Z._, devenue par la suite X._ SA, F.Y._ a pris à bail un appartement de quatre pièces au septième étage d'un bâtiment sis à Genève. Le loyer annuel net était fixé à 27'816 francs. La locataire a simultanément pris à bail une place de stationnement pour véhicule au premier sous-sol du bâtiment, au loyer annuel de 2'400 francs. Les deux baux ont débuté le 1er novembre 2005. Par avenant du 15 octobre 2007, ces contrats ont été cumulativement repris par la locataire et par H.Y._. Dans l'intervalle, le 8 mai 2006, la bailleresse avait remis à la locataire un avis sur formule officielle de fixation du loyer initial. B. Le 3 avril 2008, devant la commission de conciliation compétente puis devant le Tribunal des baux et loyers du canton de Genève, F.Y._ et H.Y._ ont ouvert action contre X._ SA. Leur demande tendait à faire réduire le loyer annuel de l'appartement, dès le 1er novembre 2005, au montant de 21'588 fr., et celui de la place de stationnement à 1'857 francs. La défenderesse devait être condamnée à rembourser aux demandeurs les sommes payées par eux, à titre de loyer, au delà de ces mêmes montants, avec intérêts au taux de 5% par an. La garantie que les demandeurs avaient constituée en faveur de l'autre partie, auprès d'un établissement bancaire, devait être modifiée en conséquence. La défenderesse a conclu au rejet de l'action; elle faisait valoir que les demandeurs agissaient tardivement. Le tribunal s'est prononcé le 19 novembre 2008. Accueillant l'action, il a fixé les loyers annuels nets de l'appartement et de la place de stationnement aux montants respectifs de 21'600 fr. et 1'860 fr.; il a condamné la défenderesse à « rembourser le trop-perçu de loyer » aux deux demandeurs, créanciers solidaires; il a réduit la garantie à « trois mois du loyer ainsi fixé » et il a ordonné la libération de l'excédent au profit des demandeurs. Saisie par la défenderesse, la Chambre d'appel en matière de baux et loyers a statué le 15 juin 2009. Elle a réformé le jugement en ce sens que le trop-perçu de loyers doit être remboursé à F.Y._, seule créancière, pour la période du 1er novembre 2005 au 31 octobre 2007, et aux deux demandeurs, créanciers solidaires, dès le 1er novembre 2007. Le jugement se trouve donc, pour l'essentiel, confirmé. Les juges d'appel ont considéré que les demandeurs ont conservé leur droit de demander la réduction des loyers, et de réclamer le remboursement du trop-perçu, après l'avis notifié tardivement par la défenderesse le 8 mai 2006. Ils ont en outre considéré que cette partie n'est pas parvenue à prouver que les demandeurs aient été informés dès novembre 2007 déjà, par un article dans le périodique Droit au logement, de leur droit à la réduction des loyers. Enfin, l'action ne peut pas être jugée abusive au seul motif que les demandeurs ont payé les loyers surévalués, sans protester, durant un peu plus de deux ans. C. Agissant par la voie du recours en matière civile, la défenderesse requiert le Tribunal fédéral de réformer l'arrêt de la Chambre d'appel en ce sens que l'action des demandeurs soit entièrement rejetée. Les demandeurs concluent au rejet du recours.