Réparation Toiture Montréal · Roof repair · SEO · 2026
How Réparation Toiture Montréal doubled its organic sessions
Organic sessions went from 523 to 1,367 on matched months, and 3,111 across the full year. A second metric originally planned for this page did not survive re-verification, so it is not on this page.


2.6×
organic sessions
523 → 1,367 on matched months
The results, up top — every number is in the strip below
2.6×
organic sessions
523 → 1,367 matched months
3,111
sessions in the full year
twelve months to Jul 2026
12 mo
measurement window
matched month against month
1
channel
organic search
+55%
organic clicks
31 → 48, matched months


01 — The challenge
A crowded repair trade and a mixed set of signals.
Réparation Toiture Montréal serves roof-repair demand across Montreal — urgent, weather-driven and heavily contested by contractors and lead aggregators alike.
The site's organic performance turned out to be genuinely mixed. Session growth is real and substantial. Search-console impressions over the same matched months are down 23%, which almost certainly reflects a narrowing of visibility to more relevant queries, but that cannot be proven, so we neither claim it as a win nor hide it.
“Every agency I have dealt with sends a report where everything is green. I would rather know which number is actually working.”
He gets that here. Sessions grew; search impressions did not, and this page says so rather than in a footnote. A case study that only reports the metric that went up is an advertisement.
02 — Our approach
Fewer, better-targeted pages for a weather-driven trade.
Work concentrated on the searches that indicate an actual repair job rather than general roofing interest — leaks, storm damage, specific materials, urgency language — and on making those pages genuinely better than the aggregator listings competing for them.
Technical and on-page fundamentals were brought up to standard: structure, titles, headings, local markup and mobile speed, since a repair search made from a phone in bad weather has no patience at all.
Repair-intent searches — leaks, storm damage, urgency language — now land on pages built to beat the aggregator listings competing for them.


03 — What we did
Repair-intent focus, fundamentals, stricter measurement.
Including the part where the measurement contradicted the pitch.
Repair-intent focus
Targeted jobs, not roofing interest
Leaks, storm damage, specific materials and urgency language — the searches that indicate someone with a problem and a budget, rather than someone reading about roofs.

Fundamentals
Fast pages for a phone in bad weather
Structure, titles, headings, local markup and mobile speed. A repair search made in a storm has no patience for a slow page.

Two sources, read together
GA4 and Search Console side by side
Matched windows only, both sources compared directly, so every figure published here holds up against the other tool rather than just the friendlier one.

Repair intent, not roofing interest
Leaks, storm damage, urgency
Coverage concentrated on searches that indicate an actual job, and on making those pages genuinely better than the aggregator listings competing for them.


04 — The results
Sessions 523 → 1,367 matched; 3,111 for the full year.




The stack we ran it on
GA4
Analytics
Google Search Console
SEO
Ahrefs
SEO
Screaming Frog
SEO
WordPress
CMS
Google Business Profile
Local
AgencyAnalytics
Reporting
Looker Studio
Dashboards


Farrukh Ahmed CPA — Local SEO launch
position 50 → 17 · +166% desktop map impressions


Food Allergy Institute — Paid media and booked consultations
243 → 1,012 consultations/mo · cost per landing page view −30%


National Consumer Panel — UGC-driven acquisition & paid media
CPI −30% · CPA −20%


National Debt Relief — UGC, performance creative & influencer strategy
CVR +25% · CAC −30%


New Balance — Casting, post-production & influencer marketing
7 athletes · 750k audience


"Their transparency, attention to detail, and collaborative approach made them feel like an extension of our own team."



















































































































































































.webp)
.webp)


