123Couvreur · Roofing quote marketplace · Google Ads — Search · 2026
How a roofing quote marketplace launched paid search from zero
123Couvreur matches homeowners with roofers: three quotes, one decision. The paid-search question was whether a marketplace can buy roofing demand profitably in the same auction as the roofers themselves.

103
quote requests
five reported months, from launch
The results, up top — every number is in the strip below
103
quote requests
five reported months
~CA$128
per quote request
CA$13,202 ÷ 103
44
first-time phone calls
repeat callers excluded
CA$13,202
media spend
launch period
5
reported months
absolutes only, no growth claim
01 — The challenge
A marketplace bidding in the same auction as its own suppliers.
123Couvreur is a Greater Montreal roofing marketplace: a homeowner describes the job, and three vetted roofers respond with comparable quotes. The proposition is comparison and convenience, not roofing itself.
That is an awkward position in paid search. Individual roofing companies bid on the same keywords with the margin of an entire roof behind each click, while a marketplace earns a fraction of that. Winning means being clearly more useful on the results page than any single contractor can be.
“I am not trying to be the cheapest roofer on the page. I am trying to be the obvious first step — the place where you find out what a fair price even looks like.”
Illustrative quote — written by Web Tonic to put the results above in an owner’s words. It is not a statement provided by the client.
Which means the ads had to sell comparison, not roofing.
02 — Our approach
Sell the comparison, not the roof.
Ad copy was built around what a marketplace uniquely offers — three quotes, free, no obligation — rather than competing on roofing claims a single contractor makes better. Comparison-intent queries were separated from contractor-intent queries.
Call tracking distinguishes first-time from repeat callers, so the 44 first-time calls reported here exclude people already in the funnel. The quote-request form remains the primary conversion at 103.
Five reported months, no prior period. Everything on this page is an absolute, and the cost per quote request is stated plainly at roughly CA$128.
03 — What we did
Comparison-led copy, first-time call tracking, absolute reporting.
A launch account in an auction full of better-funded competitors.
Comparison-led ad copy
Advertised three quotes, not roofing expertise
The marketplace advantage is comparison. Ads led with it instead of competing on craft claims a single roofer will always make more convincingly.
Recreated Google Ads campaign table
Intent separation
Split comparison searches from contractor searches
Someone searching for a specific roofer is not a marketplace customer. Those queries were pushed out rather than paid for.
Recreated Google Ads search terms view
First-time call tracking
Counted new callers, not repeats
44 first-time calls, with repeat calls tracked separately and excluded from the headline figure.
Conversion action breakdown
Launch reporting
Published cost per quote request
CA$13,202 across five reported months, 103 quote requests, roughly CA$128 each — stated rather than buried.
Monthly quote-request volume
The stack we ran it on
Google Ads
Paid search
Google Ads Editor
Paid search
GA4
Analytics
Google Tag Manager
Tracking
CallRail
Call tracking
Google Search Console
Search
AgencyAnalytics
Reporting
Looker Studio
Dashboards


“Web Tonic did in six weeks what our last two agencies couldn't in a year — and for the first time we could see every dollar of it”










.webp)
.webp)


