Halifax commercial real estate

We provide commercial real estate services including leasing, investment sales, project management and property management in Halifax
Avison Young Halifax offers a full suite of commercial real estate services to best meet the needs of our clients in and around the province of Nova Scotia. As one of the premier CRE firms in the area, Our experienced team of commercial real estate advisors cover all major industry sectors, including office, industrial, retail, mixed-use, development, and investment. Our mix of around-the-corner knowledge and multinational expertise allows us the ability to provide you with top-tier, uniquely personal service regardless of your market or location.
At Avison Young, we believe in creating positive impact wherever we go.
There is a vital role for commercial real estate to create healthy, productive workplaces for employees, cities that are centres of prosperity for its citizens, and built spaces and places that create a net benefit to the economy, the environment and the community.
Our nimble, agile team has global insight, local market expertise and access to some of the smartest tools in the industry – all at the ready to work on creating your competitive advantage. As a private company, you collaborate with empowered partners who are always invested in your success.
Halifax commercial real estate services
Avison Young’s brokerage team in Halifax has consistently completed major leasing and investment sales transactions across all asset types. We’ve worked on the behalf of tenants, landlords, investors, vendors and buyers alike, including many large national and international corporate clients.
Whether you are an owner, investor, occupier or developer, we deliver results aligned with your strategic business objectives. Our Halifax commercial real estate advisors are here to support your initiatives, add value, and build a competitive advantage for your organization.

Find Halifax properties for sale or lease
Search Avison Young’s Halifax commercial real estate listings for sale and lease to find the right commercial property for you. Our investment and leasing opportunities include office, industrial, warehouse, retail, multifamily and hospitality properties. We also offer specialized spaces for healthcare, automotive, self-storage and more.
-
Grafton Park Apartments
1537 Brunswick StreetHalifax, NS B3J 2G1For Sale
Multifamily
-
Apartment Portfolio - 90 Units
Nova Scotia Apartment PortfolioDartmouth, NSFor Sale
Multifamily
-
18 A Rosedale DriveDartmouth, NS B3A1L8
For Lease
Industrial
-
100 Highfield Park DriveDartmouth, NS B3A 4X2
For Sale
Retail
Halifax commercial real estate news
-
Queensbury Rules Tenant StoryApril 29, 2022
- Halifax
For "?size" left-hand operand: Expected an extended-hash or sequence or extended collection, but this has evaluated to a string (wrapper: f.t.SimpleScalar): ==> linkToken [in template "20302#20342#PERSPECTIVE-THOUGHTLEADERSHIP-ITEM" at line 35, column 11] ---- FTL stack trace ("~" means nesting-related): - Failed at: ${linkToken?size} [in template "20302#20342#PERSPECTIVE-THOUGHTLEADERSHIP-ITEM" at line 35, column 9] ----
1<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService") />
2<#assign user = userLocalService.getUserById(permissionChecker.getUserId()) />
3
4<#setting date_format="long">
5<#-- Retrieve the display date meta data field of the web content -->
6<#assign displayDate = .vars['reserved-article-display-date'].data>
7<#-- Save the original page locale for later -->
8<#assign originalLocale = locale>
9<#-- Set the page locale to the portals default locale -->
10<#setting locale = localeUtil.getDefault()>
11<#-- Parse the date to a date object -->
12<#assign displayDate = displayDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
13<#-- Set the page locale back to the original page locale -->
14<#setting locale = originalLocale>
15
16<#assign assetCategoryServiceUtil = serviceLocator.findService("com.avisonyoung.portal.ui.service.AssetCategoryServiceUtil") />
17<#assign globalGroupId = company.getGroupId() />
18<#assign articleId = .vars['reserved-article-id'].data>
19<#assign getNewsType = assetCategoryServiceUtil.
20 getArticleCategoryTitlesByVocabulary("Local News Type", articleId, companyId, groupId, locale) />
21<#assign getServicesType = assetCategoryServiceUtil.
22 getArticleCategoryTitlesByVocabulary("Services", articleId, companyId, groupId, locale) />
23<#assign getMarketType = assetCategoryServiceUtil.
24 getArticleCategoryTitlesByVocabulary("Markets", articleId, companyId, groupId, locale) />
25
26<#assign cdnCgiPath = "https://www-cdn01.avisonyoung.com/cdn-cgi/image/q=50">
27
28<li>
29 <#if (Link?? && Link.getData()?has_content )>
30 <#assign linkTarget = "target='_blank'" />
31 <#assign linkToken = Link.getData() />
32 <#elseif ( (PDF?? && PDF.getData()?has_content) && !(Link?? && Link?has_content) )>
33 <#assign linkTarget = "target='_blank'" />
34 <#assign linkToken = PDF.getData() />
35 ${linkToken?size}
36 <#else>
37 <#assign linkTarget = "" />
38 <#assign linkToken = "https://www.avisonyoung.ca/web/halifax/news-item/-/article/2023/10/30/retail-market-snapshot" />
39 </#if>
40 <a href="${linkToken}" ${linkTarget}>
41 <span><em>
42 <#if (getNewsType?size > 0)>
43 <#list getNewsType as getNewsTypeX>
44 ${getNewsTypeX}
45 </#list>
46 </#if>
47 </em></span>
48 <#if (validator.isNotNull(Image.getData()))>
49 <figure>
50 <div>
51 <#assign imgThumb = Image.getData() />
52 <img src="${cdnCgiPath}${imgThumb}" alt="">
53 </div>
54 <figcaption>
55 <div class="ay-blog-tile-title">${Content.getData()}</div>
56 <#--<div class="ay-blog-tile-blurb">
57 <#if (SubTitle?? && SubTitle?has_content)>
58 ${SubTitle.getData()}
59 </#if>
60 </div>-->
61 </figcaption>
62 </figure>
63 </#if>
64 <div class="ay-blog-post-td">${displayDate?date?string}</div>
65 <ul class="ay-blog-tile-post-tags">
66 <#if (getServicesType?size > 0)>
67 <li>
68 <#list getServicesType as getServicesTypeX>
69 ${getServicesTypeX}
70 </#list>
71 </li>
72 </#if>
73 <#if (getMarketType?size > 0)>
74 <li>
75 <#list getMarketType as getMarketTypeX>
76 ${getMarketTypeX}
77 </#list>
78 </li>
79 </#if>
80 </ul>
81 </a>
82
83</li>
For "?size" left-hand operand: Expected an extended-hash or sequence or extended collection, but this has evaluated to a string (wrapper: f.t.SimpleScalar): ==> linkToken [in template "20302#20342#PERSPECTIVE-THOUGHTLEADERSHIP-ITEM" at line 35, column 11] ---- FTL stack trace ("~" means nesting-related): - Failed at: ${linkToken?size} [in template "20302#20342#PERSPECTIVE-THOUGHTLEADERSHIP-ITEM" at line 35, column 9] ----
1<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService") />
2<#assign user = userLocalService.getUserById(permissionChecker.getUserId()) />
3
4<#setting date_format="long">
5<#-- Retrieve the display date meta data field of the web content -->
6<#assign displayDate = .vars['reserved-article-display-date'].data>
7<#-- Save the original page locale for later -->
8<#assign originalLocale = locale>
9<#-- Set the page locale to the portals default locale -->
10<#setting locale = localeUtil.getDefault()>
11<#-- Parse the date to a date object -->
12<#assign displayDate = displayDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
13<#-- Set the page locale back to the original page locale -->
14<#setting locale = originalLocale>
15
16<#assign assetCategoryServiceUtil = serviceLocator.findService("com.avisonyoung.portal.ui.service.AssetCategoryServiceUtil") />
17<#assign globalGroupId = company.getGroupId() />
18<#assign articleId = .vars['reserved-article-id'].data>
19<#assign getNewsType = assetCategoryServiceUtil.
20 getArticleCategoryTitlesByVocabulary("Local News Type", articleId, companyId, groupId, locale) />
21<#assign getServicesType = assetCategoryServiceUtil.
22 getArticleCategoryTitlesByVocabulary("Services", articleId, companyId, groupId, locale) />
23<#assign getMarketType = assetCategoryServiceUtil.
24 getArticleCategoryTitlesByVocabulary("Markets", articleId, companyId, groupId, locale) />
25
26<#assign cdnCgiPath = "https://www-cdn01.avisonyoung.com/cdn-cgi/image/q=50">
27
28<li>
29 <#if (Link?? && Link.getData()?has_content )>
30 <#assign linkTarget = "target='_blank'" />
31 <#assign linkToken = Link.getData() />
32 <#elseif ( (PDF?? && PDF.getData()?has_content) && !(Link?? && Link?has_content) )>
33 <#assign linkTarget = "target='_blank'" />
34 <#assign linkToken = PDF.getData() />
35 ${linkToken?size}
36 <#else>
37 <#assign linkTarget = "" />
38 <#assign linkToken = "https://www.avisonyoung.ca/web/halifax/news-item/-/article/2023/01/09/retail-market-snapshot-q1-2023" />
39 </#if>
40 <a href="${linkToken}" ${linkTarget}>
41 <span><em>
42 <#if (getNewsType?size > 0)>
43 <#list getNewsType as getNewsTypeX>
44 ${getNewsTypeX}
45 </#list>
46 </#if>
47 </em></span>
48 <#if (validator.isNotNull(Image.getData()))>
49 <figure>
50 <div>
51 <#assign imgThumb = Image.getData() />
52 <img src="${cdnCgiPath}${imgThumb}" alt="">
53 </div>
54 <figcaption>
55 <div class="ay-blog-tile-title">${Content.getData()}</div>
56 <#--<div class="ay-blog-tile-blurb">
57 <#if (SubTitle?? && SubTitle?has_content)>
58 ${SubTitle.getData()}
59 </#if>
60 </div>-->
61 </figcaption>
62 </figure>
63 </#if>
64 <div class="ay-blog-post-td">${displayDate?date?string}</div>
65 <ul class="ay-blog-tile-post-tags">
66 <#if (getServicesType?size > 0)>
67 <li>
68 <#list getServicesType as getServicesTypeX>
69 ${getServicesTypeX}
70 </#list>
71 </li>
72 </#if>
73 <#if (getMarketType?size > 0)>
74 <li>
75 <#list getMarketType as getMarketTypeX>
76 ${getMarketTypeX}
77 </#list>
78 </li>
79 </#if>
80 </ul>
81 </a>
82
83</li>
For "?size" left-hand operand: Expected an extended-hash or sequence or extended collection, but this has evaluated to a string (wrapper: f.t.SimpleScalar): ==> linkToken [in template "20302#20342#PERSPECTIVE-THOUGHTLEADERSHIP-ITEM" at line 35, column 11] ---- FTL stack trace ("~" means nesting-related): - Failed at: ${linkToken?size} [in template "20302#20342#PERSPECTIVE-THOUGHTLEADERSHIP-ITEM" at line 35, column 9] ----
1<#assign userLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.UserLocalService") />
2<#assign user = userLocalService.getUserById(permissionChecker.getUserId()) />
3
4<#setting date_format="long">
5<#-- Retrieve the display date meta data field of the web content -->
6<#assign displayDate = .vars['reserved-article-display-date'].data>
7<#-- Save the original page locale for later -->
8<#assign originalLocale = locale>
9<#-- Set the page locale to the portals default locale -->
10<#setting locale = localeUtil.getDefault()>
11<#-- Parse the date to a date object -->
12<#assign displayDate = displayDate?datetime("EEE, d MMM yyyy HH:mm:ss Z")>
13<#-- Set the page locale back to the original page locale -->
14<#setting locale = originalLocale>
15
16<#assign assetCategoryServiceUtil = serviceLocator.findService("com.avisonyoung.portal.ui.service.AssetCategoryServiceUtil") />
17<#assign globalGroupId = company.getGroupId() />
18<#assign articleId = .vars['reserved-article-id'].data>
19<#assign getNewsType = assetCategoryServiceUtil.
20 getArticleCategoryTitlesByVocabulary("Local News Type", articleId, companyId, groupId, locale) />
21<#assign getServicesType = assetCategoryServiceUtil.
22 getArticleCategoryTitlesByVocabulary("Services", articleId, companyId, groupId, locale) />
23<#assign getMarketType = assetCategoryServiceUtil.
24 getArticleCategoryTitlesByVocabulary("Markets", articleId, companyId, groupId, locale) />
25
26<#assign cdnCgiPath = "https://www-cdn01.avisonyoung.com/cdn-cgi/image/q=50">
27
28<li>
29 <#if (Link?? && Link.getData()?has_content )>
30 <#assign linkTarget = "target='_blank'" />
31 <#assign linkToken = Link.getData() />
32 <#elseif ( (PDF?? && PDF.getData()?has_content) && !(Link?? && Link?has_content) )>
33 <#assign linkTarget = "target='_blank'" />
34 <#assign linkToken = PDF.getData() />
35 ${linkToken?size}
36 <#else>
37 <#assign linkTarget = "" />
38 <#assign linkToken = "https://www.avisonyoung.ca/web/halifax/news-item/-/article/2022/05/27/industrial-market-snapshot" />
39 </#if>
40 <a href="${linkToken}" ${linkTarget}>
41 <span><em>
42 <#if (getNewsType?size > 0)>
43 <#list getNewsType as getNewsTypeX>
44 ${getNewsTypeX}
45 </#list>
46 </#if>
47 </em></span>
48 <#if (validator.isNotNull(Image.getData()))>
49 <figure>
50 <div>
51 <#assign imgThumb = Image.getData() />
52 <img src="${cdnCgiPath}${imgThumb}" alt="">
53 </div>
54 <figcaption>
55 <div class="ay-blog-tile-title">${Content.getData()}</div>
56 <#--<div class="ay-blog-tile-blurb">
57 <#if (SubTitle?? && SubTitle?has_content)>
58 ${SubTitle.getData()}
59 </#if>
60 </div>-->
61 </figcaption>
62 </figure>
63 </#if>
64 <div class="ay-blog-post-td">${displayDate?date?string}</div>
65 <ul class="ay-blog-tile-post-tags">
66 <#if (getServicesType?size > 0)>
67 <li>
68 <#list getServicesType as getServicesTypeX>
69 ${getServicesTypeX}
70 </#list>
71 </li>
72 </#if>
73 <#if (getMarketType?size > 0)>
74 <li>
75 <#list getMarketType as getMarketTypeX>
76 ${getMarketTypeX}
77 </#list>
78 </li>
79 </#if>
80 </ul>
81 </a>
82
83</li>
Halifax office market snapshot
Get in-depth office market reports and insights from commercial real estate experts in Halifax.

Halifax commercial real estate consultants
Halifax office contact information
Contact a commercial real estate advisor in Halifax
Our commercial real estate brokers and advisors leverage data-driven intelligence paired with deep Halifax knowledge. Connect with us to discuss how we can help you drive more value from your assets.
Join thousands of people who get regular Halifax commercial real estate updates by email.
Avison Young (Maritimes) Inc.; DBA Avison Young is an independently owned and operated affiliate of Avison Young.