Faits:
A. F._ a été mise au bénéfice d'une demi-rente d'invalidité à partir du 1er mai 2004, fondée sur un degré d'invalidité de 50 % (décision de l'Office de l'assurance-invalidité pour le canton de Vaud du 4 mai 2007).
Le 7 novembre 2007, l'assurée a présenté une demande de révision de sa rente. Son médecin traitant a attesté une aggravation de la pathologie ostéo-articulaire. Par décision du 15 juin 2009, l'office AI a rejeté la demande après avoir arrêté le taux d'invalidité à 58 %.
B. F._ a déféré cette décision au Tribunal cantonal du canton de Vaud, Cour des assurances sociales, en concluant principalement au renvoi de la cause à l'office AI, subsidiairement à l'octroi d'une rente d'invalidité de trois quarts.
Par jugement du 28 mars 2011, la juridiction cantonale a admis le recours et réformé la décision du 15 juin 2009 en ce sens qu'elle a accordé à l'assurée trois-quarts de rente dès le 1er novembre 2007, fondée sur un degré d'invalidité de 60 %.
C. L'office AI interjette un recours en matière de droit public contre ce jugement dont il demande l'annulation, en concluant au rétablissement de sa décision du 15 juin 2009.
L'assurée intimée et l'Office fédéral des assurances sociales n'ont pas été invités à se déterminer.

Considérant en droit:
1. Le litige porte sur le taux d'invalidité de l'intimée, singulièrement sur son droit à trois-quarts de rente d'invalidité à compter du 1er novembre 2007.
La juridiction cantonale a exposé correctement les règles applicables à la solution du litige, si bien qu'il suffit de renvoyer au jugement attaqué.
2. Dans sa décision du 15 juin 2009, l'administration a établi le revenu d'invalide à 21'710 fr. sur la base des statistiques salariales de l'Enquête suisse sur la structure des salaires, en tenant compte à cette occasion d'un facteur d'abattement (cf. <ref-ruling> consid. 4.2.3 p. 481) qu'elle a fixé à 15 % (cf. feuille de calcul du 14 novembre 2008). La comparaison de ce revenu d'invalide avec un gain annuel sans invalidité de 51'082 fr. laissait apparaître une perte de gain de 57,5 % (arrondie à 58 %) justifiant le maintien de la demi-rente.
Le tribunal cantonal a porté le facteur d'abattement sur le revenu d'invalide de 15 % à 20 %, ce qui a eu pour effet de réduire le revenu d'invalide à 20'432 fr. et d'accroître le degré d'invalidité de 58 % à 60 %. Les premiers juges ont considéré que l'intimée ne pouvait exploiter sa capacité résiduelle de travail (de 50 %) qu'avec des chances de gain inférieures à la moyenne. Dans le cadre de l'évaluation de l'exigibilité d'une reprise d'activité professionnelle, compte tenu de la situation de l'intimée, ils ont estimé qu'un abattement inférieur à 20 % sur le revenu d'invalide n'était pas adéquat.
3. L'office recourant soutient que la juridiction cantonale de recours a exercé son pouvoir d'appréciation de manière contraire au droit fédéral, en ce sens qu'elle a pris à tort en considération des facteurs d'abattement, tels que l'âge et l'absence d'activité lucrative depuis l'année 1996, lors du calcul du revenu d'invalide. Selon le recourant, seules les limitations fonctionnelles justifieraient une diminution du revenu d'invalide, facteur dont elle estime avoir généreusement tenu compte dans le calcul du préjudice économique.
Le point de savoir si un coefficient de réduction doit ou non être appliqué au revenu d'invalide, lorsque ce dernier a été établi sur la base de statistiques de l'Enquête suisse sur la structure des salaires, constitue une question de droit que le Tribunal fédéral peut revoir librement. Toutefois, contrairement à la situation qui prévalait jadis sous l'empire de l'OJ (art. 104 let. c), l'étendue de l'abattement (justifié dans un cas concret), qui constitue une question typique relevant du pouvoir d'appréciation, échappe désormais au pouvoir d'examen du Tribunal fédéral (art. 95 et 97 LTF). Demeure réservé le cas où le recourant fait grief à la juridiction de recours de première instance d'avoir exercé son pouvoir d'appréciation de manière abusive, donc contraire au droit, par un excès positif (Ermessensüberschreitung) ou négatif (Ermessensunterschreitung) de ce pouvoir (arrêt 9C_146/2010 du 30 août 2010 consid. 5; arrêt 9C_235/2008 du 12 février 2009 consid. 3.1, in SVR 2009 IV n° 43 p. 128).
Dans le cas d'espèce, le recourant échoue à démontrer que les juges cantonaux auraient violé le droit fédéral (art. 95 LTF) en tenant compte de facteurs étrangers à ceux que la jurisprudence a posés dans le cadre de la réduction du salaire statistique, ou auraient commis un abus ou un excès (positif ou négatif) de leur pouvoir d'appréciation en portant l'abattement de 15 % à 20 %. En effet, il ne peut être reproché aux premiers juges d'avoir retenu l'âge de l'intimée comme facteur de réduction, qui s'il ne pouvait être qualifié d'avancé au sens de la jurisprudence (cf. arrêt 9C_437/2008 du 19 mars 2009 consid. 4, in SVR 2009 IV n° 35 p. 98), n'en était pas moins proche et permettait en lui-même de retenir ce facteur. S'agissant par ailleurs de la longue période d'inactivité, il ressort à l'examen du jugement attaqué que les premiers juges n'ont pas érigé cet état de fait en facteur supplémentaire de réduction, mais qu'ils en ont tenu compte dans le cadre de l'appréciation globale du taux d'abattement.
4. Le recourant, qui succombe, supportera les frais judiciaires (art. 66 al. 1 LTF).

Par ces motifs, le Tribunal fédéral prononce:
1. Le recours est rejeté.
2. Les frais judiciaires, arrêtés à 500 fr., sont mis à la charge du recourant.
3. Le présent arrêt est communiqué aux parties, au Tribunal cantonal du canton de Vaud, Cour des assurances sociales, à la Caisse cantonale vaudoise de compensation AVS et à l'Office fédéral des assurances sociales.
Lucerne, le 2 mars 2012
Au nom de la IIe Cour de droit social
du Tribunal fédéral suisse
Le Président: Meyer
Le Greffier: Berthoud