BC Municipal Revenue Growth Rate Rankings
Compound annual growth rate of total municipal revenue per capita from 2021 to 2024.
153 municipalities ranked
Higher is better
Highest — Best Performing
Distribution
88
Top of Band
57
Mid-Band
8
Bottom of Band
About this Metric
High value means
Revenue is growing — the municipality has an expanding fiscal base.
Low value means
Revenue growth is stagnant, which may constrain future service delivery.
For Councillors
Strong revenue growth gives council room to absorb cost increases without raising taxes.
For Residents
Growing revenue means the municipality can maintain or improve services.
Full Rankings
Click column headers to sort. Filter by population band.
Swipe table to see all columns
| Prov. # ▲ | Municipality | Type | Population | Value | Band Rank | vs Band Avg |
|---|---|---|---|---|---|---|
| 1 | Masset | V | 914 | 25.7% | 12 of 191 | +346% |
| 2 | Tofino | D | 2,772 | 21.3% | 3 of 105 | +250% |
| 3 | Stewart | D | 515 | 20.7% | 18 of 191 | +259% |
| 4 | Port Alice | V | 789 | 19.5% | 23 of 191 | +237% |
| 5 | Fort St. James | D | 1,542 | 18.5% | 4 of 105 | +203% |
| 6 | Osoyoos | T | 5,724 | 18.4% | 1 of 90 | +248% |
| 7 | Oliver | T | 5,262 | 17.4% | 2 of 90 | +229% |
| 8 | Cache Creek | V | 1,053 | 17.3% | 29 of 191 | +200% |
| 9 | Fraser Lake | V | 942 | 17.0% | 31 of 191 | +195% |
| 10 | Princeton | T | 3,050 | 15.0% | 8 of 105 | +146% |
| 11 | Ucluelet | D | 2,452 | 14.4% | 10 of 105 | +135% |
| 12 | Enderby | C | 3,292 | 14.3% | 11 of 105 | +134% |
| 13 | Merritt | C | 7,190 | 13.7% | 6 of 90 | +160% |
| 14 | Port Clements | V | 352 | 13.6% | 39 of 191 | +136% |
| 15 | Metchosin | D | 5,207 | 13.6% | 7 of 90 | +157% |
| 16 | Sayward | V | 329 | 12.7% | 44 of 191 | +119% |
| 17 | Williams Lake | C | 11,462 | 12.5% | 10 of 90 | +137% |
| 18 | Smithers | T | 5,627 | 11.9% | 11 of 90 | +125% |
| 19 | Gold River | V | 1,339 | 11.6% | 50 of 191 | +101% |
| 20 | Prince Rupert | C | 12,903 | 11.3% | 12 of 90 | +114% |
| 21 | Burns Lake | V | 2,007 | 11.1% | 15 of 105 | +83% |
| 22 | Hudson's Hope | D | 1,019 | 11.0% | 53 of 191 | +90% |
| 23 | Lillooet | D | 2,065 | 11.0% | 17 of 105 | +80% |
| 24 | Houston | D | 3,114 | 10.9% | 18 of 105 | +79% |
| 25 | Lytton | V | 228 | 10.5% | 55 of 191 | +82% |
| 26 | Telkwa | V | 1,544 | 10.4% | 20 of 105 | +71% |
| 27 | Pouce Coupe | V | 813 | 10.2% | 56 of 191 | +77% |
| 28 | 100 Mile House | D | 2,030 | 10.1% | 22 of 105 | +65% |
| 29 | Port Edward | D | 442 | 10.0% | 57 of 191 | +74% |
| 30 | Belcarra | V | 702 | 9.9% | 59 of 191 | +71% |
| 31 | Revelstoke | C | 9,464 | 9.9% | 15 of 90 | +87% |
| 32 | West Vancouver | D | 47,929 | 9.9% | 2 of 48 | +92% |
| 33 | Colwood | C | 22,794 | 9.6% | 3 of 48 | +87% |
| 34 | Tahsis | V | 418 | 9.4% | 61 of 191 | +63% |
| 35 | Radium Hot Springs | V | 1,489 | 9.4% | 62 of 191 | +63% |
| 36 | Langley | C | 35,444 | 9.3% | 5 of 48 | +81% |
| 37 | Elkford | D | 3,030 | 9.2% | 26 of 105 | +50% |
| 38 | Hope | D | 7,183 | 9.1% | 17 of 90 | +73% |
| 39 | Sechelt | D | 11,558 | 9.0% | 18 of 90 | +70% |
| 40 | Pemberton | V | 3,620 | 8.7% | 28 of 105 | +43% |
| 41 | View Royal | T | 12,795 | 8.7% | 19 of 90 | +64% |
| 42 | Chase | V | 2,591 | 8.7% | 29 of 105 | +42% |
| 43 | Lake Country | D | 17,637 | 8.6% | 6 of 48 | +68% |
| 44 | Maple Ridge | C | 105,925 | 8.6% | 2 of 22 | +84% |
| 45 | Castlegar | C | 9,465 | 8.5% | 20 of 90 | +62% |
| 46 | Sun Peaks | V | 1,546 | 8.5% | 30 of 105 | +40% |
| 47 | Vancouver | C | 740,454 | 8.5% | 1 of 10 | +68% |
| 48 | Oak Bay | D | 18,626 | 8.4% | 7 of 48 | +65% |
| 49 | Sparwood | D | 4,486 | 8.4% | 31 of 105 | +38% |
| 50 | Bowen Island | D | 4,501 | 8.4% | 32 of 105 | +38% |
| 51 | Canal Flats | V | 889 | 8.4% | 69 of 191 | +45% |
| 52 | Highlands | D | 2,753 | 8.3% | 33 of 105 | +36% |
| 53 | Comox | T | 15,884 | 8.2% | 8 of 48 | +60% |
| 54 | Midway | V | 671 | 8.1% | 71 of 191 | +40% |
| 55 | Lake Cowichan | T | 3,757 | 8.1% | 34 of 105 | +32% |
| 56 | Richmond | C | 239,584 | 8.0% | 2 of 10 | +58% |
| 57 | Port Alberni | C | 19,671 | 7.9% | 10 of 48 | +55% |
| 58 | Warfield | V | 1,729 | 7.9% | 36 of 105 | +30% |
| 59 | Rossland | C | 4,355 | 7.9% | 37 of 105 | +30% |
| 60 | Mackenzie | D | 3,442 | 7.9% | 38 of 105 | +30% |
| 61 | Saanich | D | 126,011 | 7.9% | 4 of 22 | +69% |
| 62 | Duncan | C | 5,745 | 7.8% | 22 of 90 | +47% |
| 63 | Pitt Meadows | C | 20,892 | 7.7% | 11 of 48 | +50% |
| 64 | North Cowichan | D | 34,525 | 7.5% | 12 of 48 | +46% |
| 65 | Kimberley | C | 9,037 | 7.5% | 26 of 90 | +42% |
| 66 | Cumberland | V | 4,974 | 7.4% | 40 of 105 | +21% |
| 67 | Cranbrook | C | 22,703 | 7.3% | 14 of 48 | +43% |
| 68 | Qualicum Beach | T | 9,640 | 7.3% | 27 of 90 | +38% |
| 69 | Parksville | C | 15,371 | 7.2% | 15 of 48 | +41% |
| 70 | Port McNeill | T | 2,402 | 7.2% | 41 of 105 | +18% |
| 71 | Taylor | D | 1,415 | 7.2% | 80 of 191 | +24% |
| 72 | Nanaimo | C | 111,845 | 7.1% | 5 of 22 | +54% |
| 73 | Anmore | V | 2,508 | 7.1% | 42 of 105 | +17% |
| 74 | Squamish | D | 28,578 | 7.1% | 16 of 48 | +38% |
| 75 | Granisle | V | 357 | 7.0% | 81 of 191 | +22% |
| 76 | Campbell River | C | 38,300 | 7.0% | 17 of 48 | +37% |
| 77 | Harrison Hot Springs | V | 2,148 | 6.9% | 43 of 105 | +12% |
| 78 | White Rock | C | 25,057 | 6.8% | 18 of 48 | +34% |
| 79 | Alert Bay | V | 465 | 6.8% | 84 of 191 | +18% |
| 80 | Summerland | D | 12,343 | 6.8% | 29 of 90 | +29% |
| 81 | Victoria | C | 103,888 | 6.8% | 6 of 22 | +46% |
| 82 | Logan Lake | D | 2,337 | 6.7% | 44 of 105 | +10% |
| 83 | Chilliwack | C | 105,520 | 6.6% | 7 of 22 | +43% |
| 84 | Penticton | C | 39,068 | 6.6% | 19 of 48 | +29% |
| 85 | McBride | V | 646 | 6.6% | 86 of 191 | +14% |
| 86 | Dawson Creek | C | 13,635 | 6.6% | 30 of 90 | +25% |
| 87 | Powell River | C | 14,947 | 6.5% | 32 of 90 | +23% |
| 88 | Nakusp | V | 1,740 | 6.4% | 47 of 105 | +5% |
| 89 | Lions Bay | V | 1,375 | 6.4% | 89 of 191 | +10% |
| 90 | Courtenay | C | 32,869 | 6.3% | 23 of 48 | +24% |
| 91 | Surrey | C | 703,531 | 6.2% | 3 of 10 | +23% |
| 92 | Prince George | C | 85,944 | 6.2% | 8 of 22 | +33% |
| 93 | Montrose | V | 1,072 | 6.2% | 91 of 191 | +7% |
| 94 | Port Moody | C | 38,285 | 6.1% | 24 of 48 | +20% |
| 95 | Quesnel | C | 10,253 | 6.1% | 33 of 90 | +16% |
| 96 | Abbotsford | C | 175,358 | 6.1% | 4 of 10 | +21% |
| 97 | Salmon Arm | C | 20,891 | 6.0% | 25 of 48 | +18% |
| 98 | Fernie | C | 7,086 | 6.0% | 34 of 90 | +13% |
| 99 | Kelowna | C | 167,654 | 5.9% | 5 of 10 | +18% |
| 100 | New Westminster | C | 92,124 | 5.9% | 9 of 22 | +26% |
| 101 | Lumby | V | 2,257 | 5.8% | 50 of 105 | -5% |
| 102 | Kamloops | C | 108,793 | 5.7% | 10 of 22 | +24% |
| 103 | Gibsons | T | 5,090 | 5.7% | 35 of 90 | +9% |
| 104 | Vanderhoof | D | 4,545 | 5.7% | 51 of 105 | -7% |
| 105 | Central Saanich | D | 18,184 | 5.7% | 26 of 48 | +11% |
| 106 | Sidney | T | 13,445 | 5.6% | 38 of 90 | +6% |
| 107 | North Saanich | D | 12,986 | 5.6% | 39 of 90 | +6% |
| 108 | Langford | C | 59,664 | 5.6% | 11 of 22 | +20% |
| 109 | Sooke | D | 17,248 | 5.5% | 27 of 48 | +8% |
| 110 | Fruitvale | V | 2,068 | 5.5% | 52 of 105 | -9% |
| 111 | Kent | D | 7,093 | 5.5% | 41 of 90 | +4% |
| 112 | Sicamous | D | 2,854 | 5.4% | 54 of 105 | -11% |
| 113 | Spallumcheen | D | 5,843 | 5.4% | 42 of 90 | +3% |
| 114 | Golden | T | 4,433 | 5.4% | 55 of 105 | -11% |
| 115 | Port Coquitlam | C | 67,724 | 5.4% | 12 of 22 | +16% |
| 116 | Clinton | V | 707 | 5.3% | 93 of 191 | -8% |
| 117 | Vernon | C | 49,527 | 5.3% | 28 of 48 | +4% |
| 118 | Coldstream | D | 11,380 | 5.3% | 43 of 90 | +1% |
| 119 | North Vancouver | C | 66,624 | 5.2% | 13 of 22 | +13% |
| 120 | Peachland | D | 6,302 | 5.2% | 45 of 90 | -2% |
| 121 | Fort St. John | C | 24,383 | 5.2% | 30 of 48 | +1% |
| 122 | Ladysmith | T | 9,926 | 5.2% | 46 of 90 | -2% |
| 123 | Terrace | C | 13,648 | 5.1% | 47 of 90 | -3% |
| 124 | Tumbler Ridge | D | 2,663 | 5.1% | 57 of 105 | -16% |
| 125 | Invermere | D | 4,305 | 5.1% | 59 of 105 | -17% |
| 126 | Creston | T | 5,976 | 5.0% | 53 of 90 | -6% |
| 127 | Armstrong | C | 5,643 | 4.9% | 54 of 90 | -6% |
| 128 | Whistler | D | 15,090 | 4.9% | 31 of 48 | -4% |
| 129 | Trail | C | 8,539 | 4.9% | 55 of 90 | -7% |
| 130 | New Hazelton | D | 666 | 4.9% | 97 of 191 | -16% |
| 131 | Burnaby | C | 299,682 | 4.8% | 6 of 10 | -4% |
| 132 | Mission | C | 47,280 | 4.7% | 32 of 48 | -9% |
| 133 | North Vancouver | D | 97,845 | 4.6% | 14 of 22 | -2% |
| 134 | Zeballos | V | 136 | 4.5% | 101 of 191 | -22% |
| 135 | Langley | D | 163,885 | 4.4% | 7 of 10 | -12% |
| 136 | West Kelowna | C | 40,274 | 4.3% | 35 of 48 | -16% |
| 137 | Delta | C | 124,670 | 4.3% | 15 of 22 | -7% |
| 138 | New Denver | V | 527 | 4.1% | 103 of 191 | -29% |
| 139 | Nelson | C | 12,126 | 4.0% | 58 of 90 | -25% |
| 140 | Grand Forks | C | 4,308 | 3.9% | 64 of 105 | -35% |
| 141 | Valemount | V | 1,082 | 3.8% | 104 of 191 | -33% |
| 142 | Lantzville | D | 4,276 | 3.7% | 66 of 105 | -39% |
| 143 | Clearwater | D | 2,500 | 3.5% | 69 of 105 | -42% |
| 144 | Ashcroft | V | 1,744 | 2.9% | 75 of 105 | -53% |
| 145 | Salmo | V | 1,310 | 2.4% | 112 of 191 | -58% |
| 146 | Coquitlam | C | 173,599 | 2.3% | 9 of 10 | -55% |
| 147 | Silverton | V | 196 | 2.2% | 115 of 191 | -62% |
| 148 | Esquimalt | D | 19,512 | 1.3% | 43 of 48 | -75% |
| 149 | Kaslo | V | 1,141 | 1.1% | 124 of 191 | -82% |
| 150 | Chetwynd | D | 2,484 | 1.0% | 84 of 105 | -83% |
| 151 | Port Hardy | D | 4,201 | 0.8% | 87 of 105 | -87% |
| 152 | Keremeos | V | 1,779 | -1.4% | 96 of 105 | -122% |
| 153 | Slocan | V | 488 | -2.7% | 142 of 191 | -147% |
Municipalities with Incomplete Data
The following 8 municipalities are excluded from this ranking due to missing or insufficient data points.
| Municipality | Type | Reason for Exclusion |
|---|---|---|
| Barriere | D | Stale or missing fiscal reporting |
| Daajing Giids | V | Insufficient historical data points |
| Greenwood | C | Stale or missing fiscal reporting |
| Hazelton | V | Stale or missing fiscal reporting |
| Kitimat | D | Stale or missing fiscal reporting |
| Northern Rockies | D | Insufficient historical data points |
| shíshálh Nation Government District | D | Insufficient historical data points |
| Wells | D | Stale or missing fiscal reporting |