A 2008-as paraméterkönyv tervezetében a 158-as busz kiváltására a 156-ost hosszabbították volna meg a Dániel út – Szarvas Gábor út útvonalon a libegőig.[1][2] A környéken lakók tiltakozása[3] miatt ezt a tervet elvetették. A 91-es járatot már úgy tervezték, hogy a Nyugati pályaudvar – Moszkva tér között jár. A 158-as kiváltására végül a 91A jelzésű Nyugati pályaudvar – Endrődi Sándor utca útvonalra tervezett betétjáratot hosszabbították meg a Libegőig 291-es jelzéssel.[4]
2015. január 19-étől december 12-éig a Széll Kálmán tér átépítése miatt ideiglenesen nem közlekedett, a Nyugati pályaudvar és a Nagyajtai utca között a sűrűbben járó 91-es, a Nagyajtai utca és a Zugliget, Libegő között a meghosszabbított útvonalon közlekedő 102-es busz helyettesítette.[5]
Útvonala
Zugliget, Libegő felé
Nyugati pályaudvar M vá. – Szent István körút – Margit híd – Margit körút – Margit utca – Mecset utca – Margit tér – Apostol utca – Rómer Flóris utca – Szemlőhegy utca – Vérhalom utca – Vérhalom tér – Cimbalom utca – Pusztaszeri út – Gábor Áron utca – Szilágyi Erzsébet fasor – Budakeszi út – Zugligeti út – Zugliget, Libegő vá.
Nyugati pályaudvar felé
Zugliget, Libegő vá. – Zugligeti út – Budakeszi út – Szilágyi Erzsébet fasor – Gábor Áron utca – Pusztaszeri út – Cimbalom utca – Vérhalom tér -Vérhalom utca – Szemlőhegy utca – Rómer Flóris utca – Margit körút – Margit híd – Szent István körút – Nyugati pályaudvar M vá.