Towns and cities in Moray by population
All 21 populated places in Moray, ranked by current population. The largest is Elgin, with 25,040 people.
Every place in Moray, ranked
Do not add these figures together to get Moray's population. Settlement boundaries overlap, so the rows below sum to more than the area actually holds: 74,521 against an official 95,010. The ONS figure above is the one to quote. Why figures differ.
| # | Place | Population |
|---|---|---|
| 1 | Elgin | 25,040 |
| 2 | Forres | 9,900 |
| 3 | Buckie | 8,430 |
| 4 | Lossiemouth | 6,840 |
| 5 | Keith | 4,740 |
| 6 | Lhanbryde | 1,970 |
| 7 | Burghead | 1,840 |
| 8 | Hopeman | 1,710 |
| 9 | Fochabers | 1,690 |
| 10 | Dufftown | 1,660 |
| 11 | Cullen | 1,450 |
| 12 | Portknockie | 1,270 |
| 13 | Kinloss | 1,250 |
| 14 | Rothes | 1,230 |
| 15 | Findochty | 1,180 |
| 16 | Charlestown of Aberlour | 1,020 |
| 17 | Mosstodloch | 990 |
| 18 | Findhorn | 880 |
| 19 | Portgordon | 850 |
| 20 | Garmouth | 580 |
| 21 | Ballindalloch | 1 |
Common questions
What is the population of Moray?
95,010, on the ONS mid-2024 estimate for Moray. The individual towns listed on this page sum to more than that, because settlement boundaries overlap; the ONS figure is the one to quote for the area as a whole.
What is the largest town in Moray?
Elgin, with 25,040 residents on current figures. This page ranks all 21 recorded places in Moray by population, each linking to its own page with sources and, where held, a 2005 comparison.