A good service area is the set of places where you can arrive quickly, do the work at your normal margin, and build enough local proof to win searches. In Greater Victoria that usually means owning two to five neighbouring municipalities, not advertising to all 13 at once. This guide walks through a method any owner can follow with a spreadsheet and an afternoon.
We write guides like this as a marketing service. VictoriaAgency.ca is not a contractor; we help businesses decide where to sell, not do the work itself.
Why the capital region needs a plan, not a radius
Most businesses draw a 30-kilometre circle on a map and call it their service area. Around Victoria that circle tends to cross water, include islands you can't easily reach, and treat a ten-minute hop from Fernwood to Oak Bay the same as a rush-hour trip to Sooke.
The region is formally the Capital Regional District: 13 municipalities and three electoral areas. Population is very uneven. According to Statistics Canada's 2021 counts, Saanich had 117,735 residents, Victoria 91,867 and Langford 46,584, while Highlands had 2,482. A plan that weighs every municipality equally will waste effort.
Search also works against blanket coverage. Google says local results depend on relevance, distance and prominence. You can improve relevance and prominence, but you can't change where you are. So the realistic goal is to be overwhelmingly strong near your base, and selectively visible further out.
Step 1: Pull last year's jobs
Export or list every job, sale or booking from the last 12 months. For each one, note:
- the municipality (and neighbourhood if you know it)
- the job value
- the gross margin, or your best estimate
- the travel time from your base or the previous job
- how the customer found you: referral, Google, repeat, ad, other
If you run a storefront, use customer postal codes from your point-of-sale system or loyalty programme instead of job addresses.
Fifty rows is enough to see a pattern. Two hundred is better.
Step 2: Group by municipality
Total up three numbers per municipality: number of jobs, total margin and average margin per job. Then add total travel hours.
Here's an example for a two-crew fencing and deck company based in View Royal:
| Municipality | Jobs | Total margin | Avg margin | Travel hours |
|---|---|---|---|---|
| Langford | 34 | $47,600 | $1,400 | 26 |
| Colwood | 21 | $27,300 | $1,300 | 15 |
| Saanich | 18 | $25,200 | $1,400 | 30 |
| View Royal | 12 | $15,600 | $1,300 | 6 |
| Sooke | 7 | $9,800 | $1,400 | 18 |
| Oak Bay | 4 | $6,400 | $1,600 | 10 |
| Central Saanich | 3 | $3,900 | $1,300 | 9 |
The averages look similar, so the difference is in volume and travel.
Step 3: Price the travel
Travel is a cost that rarely shows up on a quote. Work out what an hour of crew time actually costs you: wages, benefits, vehicle and fuel. Say it's $95 an hour for a two-person crew.
Now subtract travel cost from total margin:
- Langford: $47,600 − (26 × $95) = $45,130
- Saanich: $25,200 − (30 × $95) = $22,350
- Sooke: $9,800 − (18 × $95) = $8,090
- Central Saanich: $3,900 − (9 × $95) = $3,045
Per job, Sooke falls from $1,400 to about $1,156, and Central Saanich from $1,300 to about $1,015. Neither is a disaster, but both are worth less than a Colwood job, and every hour on the highway is an hour you can't spend on a closer site.
Step 4: Sort into three tiers
Using those numbers, put each municipality into one of three groups.
- Core areas where you have volume, short travel and good margin. In the example: Langford, Colwood and View Royal. These get your strongest effort: Google profile service areas, dedicated website pages, review requests that mention the place, and most of your ad budget.
- Growth areas where you have some jobs and acceptable margin, but less volume. Saanich and Sooke here. These get a website page each and a modest test budget in ads.
- Opportunistic areas where you'll take a job if it comes but won't market. Oak Bay and Central Saanich in this example. These appear in your profile only if you genuinely serve them regularly.
Step 5: Match each tier to channels
| Tier | Google profile | Website page | Reviews | Paid ads |
|---|---|---|---|---|
| Core | Listed | Detailed page with local jobs | Ask every customer; encourage mention of the place | Most of the budget |
| Growth | Listed | Shorter page with a few examples | Ask every customer | Small, tracked tests |
| Opportunistic | Optional | Mention on a broader page | Ask as normal | None |
The detailed core pages are the ones that make the difference. Write about real jobs in those places, the housing or business types you see there, typical access issues and how fast you can get there. Our local search service builds these pages; you can also write them yourself using this structure.
Step 6: Write it down and review it quarterly
Put your tiers on one page and share it with whoever handles your marketing, even if that's you on Sunday evening. Then review every three months:
- Did core areas produce more enquiries than last quarter?
- Did a growth area earn its way up to core?
- Did a core area cool off, perhaps because a competitor moved in?
Seasonality matters too. A roofer's best areas in November may differ from a landscaper's in May. Our seasonal marketing calendar covers how to adjust through the year.
Special cases in the capital region
Island and rural areas
Salt Spring Island, the Southern Gulf Islands and the Juan de Fuca electoral area need different handling. Ferry or long road travel means minimum job sizes, scheduled visit days and clear communication. If you serve them, say exactly how on your website: which islands, how often, and what that does to price and timing.
The core-to-West Shore commute
Many businesses based in the core serve the West Shore, and vice versa. Highway 1 traffic changes travel time sharply by hour. Schedule West Shore jobs to avoid peak flows if you can, and be honest on your pages about arrival windows.
Storefronts
A shop or clinic doesn't drive to customers, but the same thinking applies. Check where customers come from, and focus local search and ads on the areas within easy reach. A Sidney bakery's customers are mostly from the Peninsula; a downtown Victoria clinic may draw from across the core.
Mistakes to avoid
- Copying a competitor's area list. Their base and crew size aren't yours.
- Treating all 13 municipalities as equal. Population and travel differ hugely.
- Writing near-identical town pages. They add nothing and can hurt you. See our areas page for how different the parts of the region really are.
- Forgetting to recheck. Service areas should change as your crews, prices and competitors change.
Where to go from here
Once you've picked your tiers, the next steps are a Google profile that reflects them and website pages that support them. If you'd like help with either, see services or contact us with your table. We'll tell you what we see.
Frequently asked questions
How many municipalities should a small business target?
Two to five is typical for a trades business with one or two crews. Pick the ones where you already have jobs, can arrive quickly and earn your normal margin after travel.
Should I list every area on my Google Business Profile?
List the areas you actually serve. Listing places you rarely go dilutes your relevance and brings calls you'll have to turn down.
How do I know if an area is profitable?
Subtract travel time, priced at what your crew's hour actually costs, from each job's margin. If an area's average job barely covers the drive, it isn't worth marketing to.