Budapest népessége a 2022-es népszámlálás idején 1 682 426 fő volt.[1] A 2011. január 1-én közzétett hivatalos adat 1 733 685 főt közölt, ami akkor a közel három évtizedes csökkenés után újra növekedést mutatott a csökkenő mértékű természetes fogyás és a növekvő bevándorlás következtében. Ekkor a lakónépesség a 2007-es mélypont óta közel 40 000 fővel gyarapodott.[2] 2010. január 1-jén 889 757 lakást tartottak számon a főváros közigazgatási területén. Nyelvileg, etnikailag a népesség viszonylag homogénnek tekinthető, azonban az elmúlt húsz évben jelentősen növekedett a külföldiek és a romák aránya, előbbiek 4,4, utóbbiak 4,6%-ot képviselnek a főváros teljes lakosságából.[3] A budapesti agglomerációban 2010-ben 2 524 697 fő, 2023-ban már 2 577 384 fő élt (az ország összlakosságának több, mint egynegyede), míg a budapesti várostérségben hozzávetőlegesen 3,5 millió fő.[4][5][6] Ezzel a magyar főváros a legnépesebb nagyvárosi övezet Kelet-Közép-Európában.
A 2022-es népszámlálás adatai alapján a legtöbb külföldi származású állandó lakossal az V. a VI. a VII. és a VIII. kerület rendelkezett. (Az összes kerületben 98 319 külföldi élt.)[7][8][9] A 2024-es statisztika alapján változatlanul a II. és a XII. kerületben a legmagasabb az egy főre jutó bruttó havi átlagjövedelem.[10]
A korai újkor előtti időkből kevés forrás áll rendelkezésünkre Magyarország és a mai Budapest etnikai arculatáról, ezek közül az egyik a Magyar Királyi Kincstár 1494-95-ös, az egész országra kiterjedő összeírása. E szerint Buda, Pest, Óbuda és a főváros teljes mai területe magyar többségű volt, ahogy a mai agglomeráció is teljesen magyar nyelvterület volt. A 18. század elejére a török hódoltságra jellemző folyamatos háborúk és fosztogatások megváltoztatták a korábban egységes etnikai térszerkezetet, a települések egy része elpusztult, mások elvesztették magyar jellegüket, ahogy a főváros is. Az 1715-ös összeírás szerint Buda, Pest, Óbuda és Téténynémet, Rákospalota magyar, Rákosszentmihályszlovák többségű volt, míg Csepel különböző délszláv néptöredékeknek adott otthont, akik fokozatos északra húzódása jellemezte a 150 éves megszállást. A mai Újpest, Újpalota, Rákosmente és Dél-Pest (Kispest, Pesterzsébet, Pestszentlőrinc, Pestszentimre, Soroksár) területe lakatlan pusztaként (deserta) volt nyilvántartva. A megfogyatkozott népesség pótlása már a török kiűzése után megindult a spontán, belső és országhatárokon átnyúló vándormozgalmaknak köszönhetően, az újratelepülést segítette a bécsi udvar és a különböző földesurak által szervezett telepítési akciók is, amelynek keretében főként katolikus németek („svábok”) érkeztek Buda környékére délnémet területekről és a Rajna-völgyéből, katolikus és evangélikus szlovákok („tótok”) a Felvidékről és kisebb részben, szervezetlenül katolikus magyarok a pusztítások által kevésbé érintett területekről (Nyugat-Dunántúl, Felvidék, Jászság, Palócföld). Az 1784-es, II. József-féle népszámlálás idejére jelentősen nem módosultak a nyelvi és etnikai viszonyok, azonban a betelepülések következtében a főváros és környékének német jellege erősödött, Csepel és a korábban lakatlan Soroksár is német többségű lett, Rákoscsabára szlovákok települtek.
A középkori, egységes etnikai térszerkezet visszarendeződése a 19. században indult meg, ennek kiváltó okaként az iparosodás kezdetét és ennek nyomán fellépő tömeges belső vándorlást nevezhetjük meg. A Mezőföld és az Alföld középső és déli, lakatlan területeinek újratelepülése miatt népességrobbanás következett be a magyarság körében, arányuk és számuk e miatt gyorsabban növekedett a többi nemzetiségnél a 19. század folyamán. A gyors természetes szaporulat következtében a magyar agrártársadalom a kiegyezés idejére már a túlnépesedés jeleit mutatta, a magyarságon belül volt a legmagasabb a földnélküliek, agrárproletárok aránya, e miatt az ország legnagyobb nemzetisége nagyobb arányban kapcsolódott be a városiasodás folyamatába, ez járult hozzá legnagyobb mértékben a főváros gyors elmagyarosodásához.[11] Ezek a magyar anyanyelvű, mezőgazdasági közösségek jelentették a meginduló ipari fejlődés során rövid idő alatt milliós, majd kétmilliós várossá hízó Budapest legfőbb népességellátóját egészen az 1970-es évekig. Az 1880-as népszámlálás idejére az 1873-ban megalakult Budapest székesfőváros magyar többségűvé vált, azonban néhány környék (Óbuda, Tétény, Csepel) még a századfordulóig megőrizte német jellegét. Az 1880 és 1910 közötti időszakot a magyar nyelv általános elterjedése és egyeduralkodóvá válása jellemezte. A magyarság aránya 30 év alatt 56,75%-ról 85,9%-ra növekedett, ezzel szemben a németek aránya 34,3%-ról 9%-ra, a szlovákoké 6,1%-ról 2,3%-ra csökkent. E mellett a németek 72,5%-a, a szlovákoknak pedig 79,7%-a beszélte a magyar nyelvet. A magyar nyelvet legnagyobb mértékben a reformátusok beszélték, míg a németet az izraeliták. 1910-ben egy budapesti lakos átlagosan 1,69 nyelvet beszélt, ezen belül a budapesti magyarok átlagosan 1,62 nyelvet beszéltek, ami alacsonyabb volt a városi átlagnál, mivel az addigra egynyelvűvé vált városban nem voltak rászorulva más nyelv ismeretére. Az első világháború, a forradalmak és országot csapásként érő trianoni békeszerződés sem tudta megállítani Budapest további fokozatos, végül a második világháború kezdetére teljessé váló elmagyarosodását.
Budapesten a népesség természetes reprodukciója (újratermelődése) az 1950-es évek vége óta nem biztosított, az 1956-os forradalom óta a halálozások száma kisebb időszakokat (1969 és 1974-77) leszámítva meghaladja a születésekét. A rendszerváltást követő első szabad választás évében a teljes termékenységi arányszám (TFR) 1,46 volt, ez 1990-ben messze a legalacsonyabb érték volt az országban (az alulról a második helyen álló Csongrád- és Vas megye értéke 1,75 volt). A lezajlott társadalmi-gazdasági változások negatívan befolyásolták a szülőképes korú nők termékenységét, az ezredfordulóra a TFR 1,05-re csökkent, ami pontosan fele az ideális 2,1-nek (egy nőnek élete során átlagosan 2,1 gyermeket kellene világra hoznia, hogy a népesség középtávon fennmaradjon). A 2000-es évek elején kis mértékben emelkedni kezdett a termékenység, ugyanis szülőképes korba érkeztek a Ratkó-unokák (az 1974-77 között születettek, lásd: korfa), így 2008-ra a TFR 1,18-ra emelkedett. Jelentősen emelkedett a szülő nők életkora, míg a rendszerváltás idején átlagosan 24,7 évesen szültek a budapesti nők, addig 2008-ban közel 30 éves korukban (29,9). A házasságon kívüli születések tekintetében figyelemreméltó konzervatív fordulat következett be, 1990-ben a fővárosban kiemelkedően magas volt a házasságon kívüli születések aránya (17,4%) a megyékhez és az országos átlaghoz képest, 2008-ra viszont az utolsók közé került a 33,4%-os aránnyal. A Duna egyértelmű választóvonalat jelent ebben a tekintetben is, a budaikerületekben szülő nők lényegesen nagyobb aránya házas, mint a pestieké, a két szélsőértéket a Józsefváros (48,9%) és a II. kerület (22,6%) képviseli, a kedvezőbb társadalmi-gazdasági helyzetben lévő kerületekben alacsonyabb, míg a kevésbé fejlett városrészekben magas a házasságon kívüli születések aránya.
Az 1910-es népszámlálás alkalmával Budapesten (Kis-Budapesten) 880 371 főt írtak össze, ebből 418 968 fő polgári férfi, 446 767 fő polgári nő és 16 636 fő katona volt. 1000 férfire 1030 nő jutott, a legjelentősebb nőtöbblet a polgári IV. kerületben (mai Lipótváros és Újlipótváros) volt, ahol 1000 férfire 1220 nő jutott, ezzel szemben az ipari jellegű IX. és X. kerületben (Ferencváros és Kőbánya) férfitöbblet volt tapasztalható.
A legnépesebb kerület Erzsébetváros volt 181 863 lakossal (a mainál lényegesen tágabb kerülethetárok között), míg a legkisebb a Belváros 25 000 lakossal.
Az 1880-1910 közötti időszakban a nagymértékű bevándorlás következtében a budapesti születésűek aránya 42,75%-ról 35,34%-ra csökkent, a pest megyei születésűek aránya kis mértékben emelkedett (7,73%-ról 8,08%-ra), míg az egyéb magyarországi születésűek aránya rohamosan növekedett (37,92%-ról 50,26%-ra). A külföldi születésűek aránya folyamatosan csökkent.
Az összeírt 880 371 főből 526 151 (59,8%) római katolikus, 203 687 (23,1%) izraelita, 86 990 (9,9%) református és 43 526 (4,9%) evangélikus volt. Az 1880-1910 közötti időszakot a zsidók és reformátusok térnyerése jellemezte, míg a római katolikusok és az evangélikusok (akik korábban a város lakosságának túlnyomó többségét alkották) aránya folyamatosan csökkent.
Az 1880 és 1910 közötti időszakot a magyar nyelv általános elterjedése és egyeduralkodóvá válása jellemezte. A magyarság aránya 30 év alatt 56,75%-ról 85,9%-ra növekedett, ezzel szemben a németek aránya 34,3%-ról 9%-ra, a szlovákoké 6,1%-ról 2,3%-ra csökkent. Tekintve, hogy a németség és a szlovákság természetes szaporulata gyorsabb volt a magyarságénál ezek az arányváltozások hatalmas mértékű elmagyarosodást takarnak. E mellett a németek 72,5%-a, a szlovákoknak pedig 79,7%-a beszélte a magyar nyelvet. A magyar nyelvet legnagyobb mértékben a reformátusok beszélték, míg a németet az izraeliták. 1910-ben egy budapesti lakos átlagosan 1,69 nyelvet beszélt, ezen belül a budapesti magyarok átlagosan 1,62 nyelvet beszéltek, ami alacsonyabb volt a városi átlagnál, mivel az addigra egynyelvűvé vált városban nem voltak rászorulva más nyelv ismeretére.
1869-ben a lakosság 68,5%-a tudott írni-olvasni, ez az arány 1910-re 92,5%-ra emelkedett, Kőbányán és Óbudán volt a legkedvezőtlenebb (90% alatti), míg a legjobb a Belvárosban 95,9%-kal. A felekezetek tekintetében a műveltség foka az izraelitáknál volt a legmagasabb.
Az össznépesség 56%-a kereső, 44%-a eltartott volt. A keresőkön belül a legjelentősebb hányadot az ipari munkások képviselték (45,2%), így Budapest még Újpest és Csepel nélkül is ipari város volt. A gyári munkásokat messze lemaradva a kereskedelmi- és hitelintézeti alkalmazottak (15%), a közalkalmazottak és szabadfoglalkozásúak (10,2%), házi cselédek (8,2%), közlekedési alkalmazottak (8,2%) és egyéb foglalkoztatottak (13,2%) követték, tehát a gyári munkásság, a cselédség és a kispolgárság alkotta a korabeli budapesti társadalom abszolút többségét.
A magyarosodás folyamán a legtöbb magyarrá vált személy megtartotta korábbi családnevét,[49] így megfigyelhető a német (sváb) és askenázizsidó vezetéknevek gyakori előfordulása. Az elmúlt száz év folyamán a folyamatos bevándorlás és a holokauszt következtében bizonyos mértékben kicserélődött, és több névmagyarosítási hullámon átesett lakosság már főleg az egész magyarságra jellemző vezetékneveket visel.
Budapest népességszámának változása 1780 és 2008 közöttA budapesti agglomeráció népességfejlődése 1870 és 2008 között (piros: Budapesti agglomeráció, zöld: Nagy-Budapest, kék: Budapesti elővárosi övezet)
A népesség változó etnikai arculata Magyarország mai területén (térkép+adatsor+elemzés) (Kocsis Károly, Bottlik Zsolt, MTA Földrajztudományi Kutatóintézet, Budapest 2009, ISBN 978-963-9545-19-9)
Csapó Katalin - Karner Katalin: Budapest az egyesítéstől az 1930-as évekig, Budapest, 1999, ISBN 963-9001-36-8