Client website · Trades

B&B Contractors

B&B Specialty Contractors handles six trades across the Greater Toronto Area. I designed, wrote and built a focused three-page site that turns visitors into estimate requests, and the owner reports 17 jobs from it so far.

ClientB&B Specialty Contractors
StatusClient project · Live
My rolePage design, build, copy, deployment

The short version

What it is

The website for a GTA contractor covering drywall, paint, flooring, trim, windows, doors and exteriors, with one clear route to a free estimate.

What I built

Page design, service copy and a Next.js build: one typed service list feeding every page, page-level metadata and structured data, an email-first estimate route, and a ready-to-enable estimate form with validation and Redis rate limiting.

Why it stands out

Proportion: the right amount of website for a small business, delivered cleanly, with results the owner can count in jobs.

17Jobs from the websiteReported by the owner, 2 October 2026
6Service groups
3Pages

Results reported by the owner. Scope from the delivered build.

01 · The journey

Explain the work.
Then ask for the inquiry.

Service area and the estimate action appear first, so visitors can establish fit before reading further. Each service then answers the question a homeowner actually has: do you do my kind of job?

Step 1 · Establish fit

B&B Specialty Contractors homepage with the service area and a free estimate action at the top.

Step 2 · Recognise the job

Windows and Doors service section: installation only, a list of included work and typical projects such as window replacements and new entry doors.
  1. Installation only. The scope limit sits where it matters.
  2. What is included. Four concrete inclusions, not adjectives.
  3. Typical projects. Visitors recognise their own job.

Step 3 · Ask for an estimate

Free estimate page with email, a 24-hour response and the Greater Toronto service area, then three steps: send the basics, schedule a look, get a written quote.
  1. Email, as the owner prefers. The primary action matches how the business works.
  2. Service area. Greater Toronto Area, stated before anyone writes.
  3. What happens next. Description, site visit or video walkthrough, then a written quote.
02 · Build

One service list.
Two levels of detail.

The homepage cards and the detailed service rows draw from the same typed list. Each card links straight to its matching section, so updating a service never means reconciling two copies.

Every page has its own title, description and canonical URL, plus business and breadcrumb structured data. Unconfirmed details such as opening hours and review ratings are left out rather than guessed.

Content model

  1. Six service recordsTitle, image, descriptions, scope limit, inclusions, typical projects
  2. Homepage overviewSelected services: title, image, short copy
  3. Services pageAll six with full detail

Simplified from the implementation.

03 · Decisions

Built for the way
the owner works.

Email first.

Chose
The public estimate route is email, as the client preferred.
Instead of
Imposing a form the owner did not want to manage.
Trade-off
Less structured intake, but a contact route the business is comfortable using.

Ready to scale.

Chose
A complete estimate form with validation, rate limiting and notifications, ready to switch on.
Instead of
Forcing a form on the business from day one.
Trade-off
The owner keeps the email workflow they prefer, with the upgrade already built.
04 · Where it stands

A useful business site,
kept proportionate.

Delivered
  • Home, Services and Free Estimate pages
  • Six services from one typed list
  • Email-first estimate route with clear next steps
  • Page metadata and structured data
  • Deployed to the live domain
Result

17 jobs generated by the website in total, latest figure confirmed 2 October 2026.

Need a clearer path from your services to an estimate request? Start a conversation

All projects ↗
Contact

Available for select projects and opportunities

Have a website that needs to win work?

alex@jardinestudio.com

Let’s work together. Have a project in mind or a role you’re hiring for? I’d like to hear about it.

Open email app
Toronto, Canada · --:--Working remotelyLinkedIn (opens in a new tab)