Sample audit

What a free audit actually looks like

A painting contractor in a large US metro launched a new campaign this month. Below is the audit I would have sent him — same format, same depth, built only from what anyone can see in the Meta Ad Library.

Company name and city withheld. Every finding is real.

What they're running

Fourteen ads, all launched the same day. Video creative, five different lengths. One offer: 20% off, book for October–November. Twelve of the fourteen open Messenger. One goes to a scheduling page. One has no destination listed.

What's working

Two things, and they're worth keeping.

The owner names himself in the first line of the ad. Most contractor ads are written by a company about a company. This one has a person in it, and that's the cheapest trust available.

The offer is tied to a season and a booking window, not an open-ended "call today." Homeowners understand a schedule filling up.

01

Fourteen ads are splitting one budget

Five of the fourteen are already flagged as low delivery — under 100 impressions each.

Meta needs roughly 50 conversions per week in an ad set before it stops guessing and starts optimising. With fourteen ads competing inside it, the data is spread so thin that no single ad earns a clear verdict. The campaign stays in learning indefinitely, and the ads that lose the internal auction early simply stop being shown.

What I'd do: cut to three ads. Keep the two strongest videos and one new angle. Same spend, three times the data per ad.

02

All fourteen carry identical copy

Word for word, across every ad.

Running fourteen variants only pays off if something differs. Here the only variable is video length, so the budget buys one answer — which length people watch — and nothing about the offer, the price, the objection, or the call to action.

What I'd do: hold the video constant and vary the first line instead. Price-led against problem-led against timeline-led. That's the test worth paying for.

03

The copy promises a booking, the button opens a chat

The ad says "click Get Quote to schedule your free quote." On twelve of the fourteen, that button opens Messenger.

Someone who taps expecting a calendar gets a blank chat window instead. Most of them close it. The one ad that goes to the actual scheduling page is the only one measuring what the copy promised.

What I'd do: send everything to the scheduling page, or rewrite the copy to match Messenger. Either works. The mismatch doesn't.

04

The strongest claim breaks one tap away

The ad lists "210+ 5-star ratings on Google."

Tap the page name and you land on a Facebook page with three reviews and no rating at all. A homeowner checking a contractor before a $6,000 job does exactly that — and the biggest number in the ad quietly stops counting.

What I'd do: ask ten recent customers for a Facebook review this week. It costs nothing and it's the difference between a claim and a proof.

05

The discount is doing the work the job should do

20% off is the loudest thing in the ad. Nothing else describes the work.

Discount-led ads bring in the people who compare quotes, not the people who compare contractors. Those leads are cheaper and they book worse — which is exactly how a contractor ends up believing ads don't work.

What I'd do: run one ad with no discount at all. A finished exterior, the neighbourhood, the timeline. Compare cost per booked estimate against the discount ad after two weeks. The answer is usually uncomfortable.

If he only did three things

  1. Cut fourteen ads down to three.
  2. Point them all at the scheduling page.
  3. Get ten reviews on the Facebook page.

None of it requires more budget. The first two take under an hour.

What your audit looks like

The same thing. Written, specific to your ads, free, no call.

From your public ads I can see your offer, your creatives, where the click goes, and what local competitors are running. If you also give me view access, the audit adds budget structure, frequency, tracking, and what a lead and a signed job actually cost you.

Get my free audit →
← Back to the homepage