Scroll down
Discuss your project with me
Back to cases

CNB Decks

CNB Decks — custom decks & fences, Toronto

One-page WordPress site for a GTA deck-and-fence builder: bold dark design, estimate form in the hero, nine services, before/after block, gallery, thank-you page and GA4 call and form events.

Estimate form in the hero · 9 services
Year
2026
Duration
1 week
Industry
Home services — decks, fences & outdoor living
Country
Canada (Toronto & GTA, ON)
Services
Web Development
CNB Decks — desktop homepage
Desktop · 1440 px
CNB Decks — mobile homepage
Mobile · iPhone

Project overview

CNB Decks builds custom decks, fences, pergolas and railings across Toronto and the GTA — composite, cedar, PVC and pressure-treated. The business needed one thing from its website: turn a visitor into a free-estimate request or a phone call, on a phone, in under a minute.

So the site is a single page with one job. A dark, high-contrast layout in the brand’s black-and-red, a hero that puts the estimate form next to the headline instead of three screens below, nine numbered services, a before/after block, a project gallery, two client testimonials and a red call band — every section ends in the same two actions: request an estimate or call 437-217-5519.

My role in the project

I personally worked on this project from the design brief to the live site. The areas I owned and delivered directly:

  • Page structure and conversion logic: hero with the estimate form, trust badges (Licensed · WSIB · $5M liability), services, projects, why-us, reviews, call band, contact
  • Custom WordPress theme built from the approved design — no page builder, no bloat
  • ACF Pro fields for every text, photo, gallery item, review and phone number, so the owner edits the site without touching code
  • Contact Form 7 form styled to the design, with a thank-you page redirect so requests count as conversions in Google Ads and GA4
  • Analytics events layer: phone clicks by location (header, hero, call band, footer, floating button), form submits, form errors, thank-you views
  • Mobile layout: sticky header, floating call button, form under the buttons on phones

What I built

  • Hero with the headline, four trust badges and a white estimate card (name, phone, email, project details) — on mobile the card drops under the buttons
  • Services block with nine numbered cards: composite, pressure-treated, PVC and cedar decks, pergolas, privacy screens, fences, railings, deck repairs
  • “Projects” section with a before/after pair and a photo gallery whose captions come straight from the media-library caption field
  • “Why us” list, two verified testimonials, a red full-width call band
  • Contact section with the phone, a checklist of what the estimate includes and the same form
  • Theme settings page: phone number (auto-formatted into every tel: link), logo, menu, badge line, copyright, floating-button toggle, thank-you redirect, GA4 / GTM ID
  • Auto-setup on first login: the theme creates the landing page, the thank-you page and the CF7 form filled with the approved copy — the site looks finished the moment the theme is activated

The whole thing runs on a lean custom theme with self-hosted assets, Anton and Archivo for the typography, and a debug mode (?cnbdebug=1) that prints every analytics event to the console so the owner can verify tracking without a developer.

Full homepage, desktop

CNB Decks — full-page website screenshot

Tech stack

  • WordPress
  • Custom theme
  • ACF Pro
  • Contact Form 7
  • GA4 / GTM events

Want a similar project done?

Tell me about the task. I will personally look at your project and suggest the right way to deliver it.

Discuss your project with me