Skip to content

Local services · Alberta

A roofing website that was fast, findable and built to expand.

Coastal Craft Roofing serves Edmonton, Calgary, Red Deer and Central Alberta. The rebuild fixed the technical foundation first, then added the structure and content needed to compete for roofing searches across several cities.

Coastal Craft Roofing website homepage
Market
Roofing · Alberta
Website launched
April 1, 2026
Scope
Technical SEO, site architecture and content expansion
Engagement
Ongoing SEO

The starting point

The business had work, reviews and a service area worth competing in. What it did not have was a website search engines could read quickly or expand into. Mobile performance was poor enough to affect real users: the largest element on the page took over nine seconds to appear on a mobile connection.

A slow, thin site limits two things at once. Prospects leave before the page renders, and there is no structure for search engines to index beyond a handful of pages. Fixing the second without fixing the first would have been wasted effort, so the technical foundation came first.

What we did

Foundation first, then coverage.

The work ran in a deliberate order. Each stage removed a constraint that would have limited the next one.

  1. 01

    Technical rebuild

    Rebuilt the site on a fast foundation and corrected the render path, image handling and layout stability issues that were holding mobile performance down.

  2. 02

    Service and city architecture

    Gave each service and each served market its own page with distinct intent, so the site had somewhere specific to rank instead of one page competing for everything.

  3. 03

    Content expansion

    Built out the roof repair, emergency repair, soffit/fascia/siding and reviews content, each answering the question a searcher actually asked.

  4. 04

    Internal linking and measurement

    Connected the pages into a clear topic structure and set up Search Console reporting so the next priorities come from recorded data rather than opinion.

Results

The results, dated and sourced.

Three kinds of proof: what the business got, what Google recorded, and what the rebuild did to the site's speed. Each is dated and sourced separately, because they measure different things.

What the SEO produced for the business

Latest 28 days · entering month 5 of the retainer
organic leads in the latest 28 days
77
organic session-to-lead conversion (77 of 314 sessions)
24.5%
roofing queries ranking #1, with 420+ in the top 10
42
Domain Rating in four months, measured in Ahrefs
0.6 → 21

$62,000–$67,000 in profit over the last 28 days, attributed by the owner to the SEO work.

The owner hired an additional crew to keep up with the demand the new leads created.

Sources: leads, sessions and conversion from Google Analytics 4; rankings from Google Search Console; Domain Rating from Ahrefs. The profit figure is a client-confirmed commercial result, shared with the owner’s permission.

A tracked lead is a form submission or a click-to-call recorded as a GA4 conversion, not a confirmed sale. Rankings and conversion vary by query, searcher, location and period, and 28 days is not a guarantee of future periods. The profit figure and its attribution to the SEO work are the client’s own; supporting records are held by the client.

Technical performance, rebuilt

March 5 vs. March 24, 2026
Mobile performance
Mobile LCP
Desktop performance

Source: Google PageSpeed Insights / Lighthouse lab tests.

Lighthouse lab results vary by run and device. These values describe tested technical performance, not traffic, rankings, leads or revenue.

Search performance since launch

Google Search Console
Two matched 28-day windows anchored to the April 1, 2026 launch: Apr 1 – Apr 28, 2026 against Jul 23 – Aug 19, 2026.
MetricFirst 28 daysLatest matched 28 days
Clicks59239
Impressions4,69024,600
Recorded search queries2081,000+
Average position39.521.8
CTR1.3%1.0%
Cumulative clicks
Cumulative impressions
Recorded queries

Source: Google Search Console, Performance on Search results, Search type: Web. Cumulative figures cover April 1 – August 19, 2026 (141 days).

These windows show post-launch growth, not performance against the former website. Average position is an aggregate across queries, pages, countries and devices, and CTR declined as reach expanded. Google caps the query export at 1,000 rows, so the later query figure is a known minimum.

How to read these numbers

Impressions grew faster than clicks, and click-through rate fell from 1.3% to 1.0% across the two windows. That is the normal shape of an expanding search footprint: the site started appearing for a much wider set of queries, including many where it ranks on page two or three and earns few clicks. A falling CTR alongside rising clicks is not a problem to hide; it tells us where the next round of work goes.

Average position improved from 39.5 to 21.8, but that number is an aggregate across every query, page, country and device. It is not a ranking that any single keyword holds, and we do not present it as one.

These windows also compare the new site to itself over time. They do not measure the new site against the old one, because the old site's data was not collected on a comparable basis.

What happens next

The engagement is ongoing. The current priorities follow the same evidence shown above: convert the high-impression, low-click queries into pages that match what those searchers actually want, and keep expanding coverage in the markets where recorded demand justifies it.

Start here

Want to know what your site would record?

Send us the website and the markets you serve. We'll tell you what the foundation looks like, what search demand actually exists, and whether ongoing SEO is the right investment.