The brief
Beaver Movers is a moving company in Ottawa, Ontario, owned by Andrei Duk. It runs residential and commercial moves across the city and the surrounding region, with its own crews and trucks.
Ottawa is a crowded market for movers. A household planning a move compares several companies in an afternoon, reads reviews, checks whether the address and the insurance look real, and gives the job to whoever answers first and sounds trustworthy. Demand is seasonal, peaks around month-ends and lease turnovers, and most of the competition buys from the same lead marketplaces.
The engagement opened on 13 July 2026 with a written review of the live beavermovers.ca site, checked page by page against a strategy draft the client already had. The draft was built entirely on Meta ads, with segments, offers and a 90-day plan. The review kept most of it and changed three things.
The first was a price the company was already publishing and nobody was buying: a labour-only tier, two movers without a truck, from $89 per hour with a three-hour minimum, on the company's own pricing page and absent from the draft. For anyone who already has a rental truck or a trailer, that is the cheapest way into the company, and a natural first step before an upsell to the crew-and-truck packages at $119 and $149 per hour.

The second was the reviews page, which answered 404, a hole in exactly the thing a customer goes looking for. The draft scheduled review collection for month three; the review moved it to week one, because review-led ad creatives need reviews to exist first.
The third was a set of Toronto and Montreal corridor campaigns. The review put them on hold until the client confirmed that his crews would take those jobs, since an ad promising "no broker handoff" cannot route a move to a stranger. He confirmed the same day that he takes requests from any city, and the corridors went back into the plan. The engagement covered Meta only; Google Ads and Local Services Ads went to the backlog.
What the site lacked was a way to turn an anonymous visitor into a named enquiry with a date, a route and a size attached, fast enough for the owner to call while the person is still choosing.

What we built
A seven-screen quote quiz
The quiz runs on its own page, where the ads send people. A start screen with the price promise, then four questions, one per screen, each answered with a single tap: where the person is moving from, where to, when, and how big the home is. The fifth screen asks for a name and a phone number, the sixth thanks them and gives the company's number for anyone in a hurry. A progress road across the top moves the beaver truck one segment per answer.
The look comes straight from the client's live WordPress theme: the Crackajack display face, the lime and sky-blue palette, the mascot truck. An earlier palette invented for the quiz was rejected, fairly, and the tokens were taken from the theme instead, so a person arriving from an ad lands on something that looks like the company they just saw.



Built for the in-app browser
Most paid social traffic opens inside the Facebook or Instagram app, in a browser with a short, shifting viewport. Three things broke there in testing and were fixed before launch in July 2026. The page height now follows window.innerHeight, which the in-app browser reports reliably, and the layout compresses in three steps so that no screen scrolls on a viewport down to 480 pixels tall. Buttons stayed highlighted after a tap because touch screens keep the hover state, so hover styles apply only on devices with a real pointer. And the submit button failed inside that browser, so the lead send was rebuilt: one retry, and if the network still drops, the answers are parked on the phone so the lead is never lost silently.
Leads in Telegram, with the answers attached
Every completed quiz posts into the client's Telegram group within seconds, carrying the answers: from, to, when, size, name and phone. The owner reads the context before he dials, so the first call starts with the job. The bot token lives in a small server script and never reaches the browser; the deploy script refuses to publish if a token ever appears in the page. On 22 October 2026 the posting bot was reissued under the studio's own account.
Meta Conversions API with event deduplication
Each lead also goes to Meta server-side through the Conversions API, carrying the same event id as the browser pixel event, so Meta counts each lead once. The browser pixel loads only after the visitor accepts cookies; the server-side event goes out for every lead, so campaign optimisation keeps a signal either way.
CRM
A CRM workspace for Beaver Movers was set up on 16 August 2026, so each request can carry a status after the first call.
The ads
Meta, across Facebook and Instagram, pointed at the quiz. Audience: Ottawa, aged 30 and over.
The creatives used the client's own material: photographs and video from real jobs (the crew loading, the trucks, wrapped furniture) plus the owner himself on camera, because a face attached to a moving company answers the trust question faster than any claim about it. A later set was aimed at commercial moving, a different buyer and a different size of job. The quiz's closing screen says plainly that the estimate is a starting range and that rates vary by date and availability, which keeps the published prices honest in the end-of-month peak.
When the quiz link is shared in a chat or a post, it unfurls with its own card in the client's style.

What happened
The first weeks
The media buyer reported the following on 7 August 2026, covering the period since launch: $164.23 spent, 16 leads, a cost per lead of $10.26 against the campaign's target of $10 per lead, 9,606 impressions, 135 clicks, a click-through rate of 1.41% and a cost per click of $1.22. On 10 August total ad spend since launch was reported at $177.12, running at roughly $15 to $20 a day.
The client kept his own count alongside that. By 31 July: 7 leads, 3 contacted, 2 booked moves. On 1 August a quiz lead arrived, the crew had room the same evening, and the move was completed that day. On 10 August he wrote that the flow and the quality of leads for 29 July to 5 August suited him.
Three months of requests
The quiz writes every submission to a log on its own server. On 30 October 2026 we counted that log: 210 lines from 28 July onwards, of which 2 were test entries and 14 were repeat submissions from a phone number already in the log. That leaves 194 quote requests in a little over 13 weeks, counted once per phone number. The weekly chart above shows the 13 full weeks; the week of 26 October had 10 requests by the morning of the 30th.
The count covers every quiz submission, whatever brought the person there. 95 of the 194 carried a Meta click cookie, and since the page reads that cookie only after a visitor accepts cookies, 95 is a floor for ad-driven requests.
The answers say who is asking. Asked when they plan to move, 77 picked next month, 50 just researching, 26 within two weeks, 22 this month and 19 this week. Two-bedroom homes were the largest group at 69, then one-bedroom and three-bedroom at 53 each, 12 studios and 7 homes of four bedrooms or more. Asked where they were moving to, 97 said within the same city; Toronto came up 6 times and Montreal 3.
On 3 September the client wrote that the quality of leads had dropped. The urgency question is the quiz's main quality signal, and it shows the split plainly: 45 requests from people moving within two weeks, 50 from people still researching. The first group needs a call in minutes; the second needs a reason to remember the company in a month.
Several leads never answered the phone, even though each had filled in seven screens by hand. The client calls first and messages after, and he still lost contact with some of them. He also buys leads on another platform, where he reports a no-answer rate of around 40%, so this is a property of the category as much as of the channel.
The people behind it
Andrei Duk came to Canada from Ukraine after the full-scale invasion. So did Maksym Stepanenko, who founded Marketing MIX. The working language between the studio and the client is Russian and Ukrainian; everything facing the client's customers is English and French.
What we would do next
Route by urgency. The when-are-you-moving answer already arrives with every lead. A "this week" or "within two weeks" request should ring the owner's phone, while a "just researching" request gets a text with the estimate and a follow-up dated to the month they named.
Speed to lead. The no-answer rate is the largest single loss in the funnel, and the fix is mechanical: an automatic message the moment the quiz is submitted, so the person has the company's name in their phone before the first ring, and a second attempt placed on a schedule.
A review flow. The reviews page still answered 404 on 30 October 2026. A Google review request sent on move day, while the crew is still in the driveway, feeds the map pack, the ads and the AI assistants people now ask for shortlists.
Google Local Services Ads. Movers are an eligible Local Services category in Canada, and the format charges per lead and leans on reviews and responsiveness, which makes it the natural next channel once the review flow runs.
Seasonality. Moving demand in Canada peaks in summer and around month-ends and lease turnovers. Budget planned against that calendar, with creatives ready before the peak, buys more moves for the same money.
Related
The full playbook for this trade: marketing for moving companies. The same quiz mechanism, written up for movers in another city: quote quiz for movers in Vancouver. For the build itself: landing page development. For the campaigns: targeted ads. For the review that started it: marketing strategy development.
Project lead: Marketing MIX. Client: Beaver Movers (beavermovers.ca), Ottawa, Ontario. Year: 2026. Published with the client's permission.

