Lead quizzes for two trades: a Montreal cabinet painter and an Ottawa renovation contractor
In 2026 we built lead funnels for two owner-run trades businesses: Mr. Gary, a painter in Montreal who moved into on-site kitchen cabinet painting, and Korvex Construction, a renovation and exterior construction company in Ottawa. Both started with Meta ads and a short quiz, and both later got a full bilingual site. The setups are close enough to compare, and the bugs were useful. All numbers below come from the clients' own CRM and lead logs, with test entries removed.
The starting point
Neither business had a website. Mr. Gary lived on a Facebook page, an Instagram account and word of mouth; the owner films his own jobs on his phone. Korvex had an Instagram account full of before-and-after reels, a Facebook page, reviews on HomeStars and Google, and one route for a person who wanted a price: a direct message.
For a trade, speed to the lead decides most of the outcome. One of the first notes in the Mr. Gary working chat was about ad hours: run the ads when someone is free to reply within a couple of minutes.
The quiz pattern
Both quizzes follow the same rules:
- every screen fits a phone without scrolling, including the short viewport of the Facebook and Instagram in-app browser;
- the phone field defaults to +1 and the number on the page is a tap-to-call link;
- the last screen asks for contact details, after the person has already answered the job questions;
- a completed quiz posts into the owner's Telegram with the answers numbered and one-tap WhatsApp and Telegram links to the person.
The server side is small. The form posts to our own endpoint, which validates the payload, writes a lead log, sends the Telegram card and fires a Lead event to Meta through the Conversions API with the same event_id the browser pixel used. A minimal version:
// browser: one id for both the pixel and the server event const eventId = crypto.randomUUID(); fbq('track', 'Lead', {}, { eventID: eventId }); await fetch('/api/lead', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ ...answers, event_id: eventId }), }); Meta then counts each lead once and the campaign optimises on real submissions. The Telegram bot token and the Conversions API token stay on the server.
What the numbers looked like
Mr. Gary. The CRM holds 92 requests between 30 March and 24 August 2026, 89 of them while the spring campaigns ran (30 March to 9 May). 82 came through the quiz and 10 through the form on the landing page. The busiest week brought 22. Quiz requests from 3 to 29 March went straight to Telegram before the CRM was connected, so they are outside that count.
Korvex. The three live quizzes logged 67 leads between 14 August and 26 October 2026. The feature-wall quiz alone brought 21 leads from Meta ads in 17 days: 14 from Facebook, 6 from Instagram and 1 from Threads. The budget question in the first quiz showed the demand early: of 45 leads, 21 picked "Under $5,000" and 14 picked "Need guidance". Most people wanted fences, French drains, waterproofing and basements, done as soon as possible.
The full write-ups, with screenshots of each quiz and site, are on our site: the Mr. Gary cabinet painting case and the Korvex Construction case.
The bug that cost three leads
On 2 October we removed one step from the Korvex premium quiz. The page changed, and the server script that receives the form still required the fields from the removed step. Three real submissions that morning were rejected and never reached the client.
The fix made those fields optional. The rule we kept: a change to a quiz's steps is a change to both the page and the server script, and both are tested together in a sandbox before the change ships.
Other things we would repeat
- Lead forms against the quiz. For a few days in April we ran a Meta lead-form campaign next to the quiz traffic for Mr. Gary. Lead forms are cheaper per request and bring more spam and more time spent warming people up, which matters most for a job that costs thousands of dollars. 82 of the 92 requests in the CRM came through the quiz.
- Show the source in the lead card. Since 24 October each Korvex lead in Telegram shows the platform and the ad the person came from, with the ad's picture, so the owner sees which creative brought which enquiry.
- Check the language of demand. A free search study for Mr. Gary put French commercial queries about cabinet painting in Quebec at roughly three times the English ones. The spring campaigns had been English-only.
- Build the site from the owner's own material. Both sites use the owners' job photos, captions and reviews quoted word for word.
The sites that followed
Korvex got a bilingual site on its own domain on 28 September 2026: a page per service, 23 project pages, a reviews page and 64 service-in-area pages for eight Ottawa areas. In its first month, 130 of its pages appeared in Google Search. Mr. Gary got a 116-page English and Quebec French site built around kitchen cabinet painting, with redirects from every old address already configured, waiting on a domain switch.
If you run a trade and want to see what a quiz like this would ask your customers, our website cost estimate is built the same way.