Jump to the 20 competitor examples ↓

Dog Academy — Meta ads for leads that buy: the plan (round 1)

2026-09-28 · research and planning only. Nothing was launched, nothing changed on Meta, and one approved test lead was partly submitted. Every section links to its detailed file in this folder.

The plan in 12 lines

  1. Destination: Dog Academy's own lead-gen form, the website quiz, in a Meta version.

    • At most 5 screens before contact details.
    • The ad's pain is pre-selected from a ?pain= link parameter.
    • A pick-a-time scheduler sits inside the form, with no login wall and no fake loader.
    • The Trained for Life, service-dog and insurance questions move after contact, or drop.
  2. Optimization: the sale (operator, 2026-09-29). The event is Purchase from a pay link on dogacademy.org, under Sales → Website → Purchase. Never Schedule, Lead or the form fill.

  3. Why the pay link is required. Meta can only train a Website campaign on on-site events within 7 days of the click. So the customer pays on dogacademy.org through the pay link the rep sends on the call. Phone sales, consultations held and bookings are reported through CAPI.

  4. Budget: $10k = $250/day for 40 days in 3 waves.

    • One ABO campaign: statics $150/day (4 concepts), video $100/day (2 concepts).
    • Only ZIPs with trainer coverage; Facebook and Instagram only; creative enhancements off.
  5. Money line (provisional): break-even at a 5.5% close rate is about $27 per lead, $76 per booked consult and $484 per kept sale. Matthew's real margin replaces these.

  6. What $10k can and can't prove: whether Meta pays back at account level, and at what close rate. It cannot rank concepts on sales.

  7. What wins in this category:

    • a real, named trainer on camera, filmed on a phone, 9:16, about 38 s;
    • it opens on the city or the pain;
    • it offers a free first step;
    • it never shows the programme price.

    Video is 67% of local ads that have run 90+ days.

  8. The gap Dog Academy can own: the trainer inside the client's home, coaching the owner. Only 2 of 30 durable videos show it. Socialization is also nearly unused: 11% of our form answers, 2 ads in the market.

  9. The pitch against the market:

    • Against apps: "a trainer at your door". Apps openly sell against trainers: "PRIVATE TRAINER $100–$300 → $27".
    • Against board & train: "your dog learns in your home".
    • Against regression: "lifetime lessons".
  10. Offer line (never a price): a free evaluation / free 30-minute consultation, no card. That is the market's language; nobody calls it a "meet & greet". If a lifetime plan fits: up to 8 in-person lessons at your door (1 a week), lifetime unlimited virtual lessons (up to 2 a week), and the full online course library.

  11. Tracking today is nearly blind.

    • The quiz sends Meta no event at any step, only page views and automatic clicks.
    • There is no CAPI.
    • Meta's automatic matching stores the dog's name as the owner's last name.
    • The CAPI build is fully specified for DA's developer.
  12. Blockers:

    • Meta access to DA's Business;
    • Matthew's numbers: margin, stage rates, lead-to-sale lag, trainer-coverage ZIPs, who runs the consult, how payment is taken;
    • DA's developer;
    • a DA-controlled phone number to finish the test lead.

1. What the market does

Lane Coverage What runs (durable = 90+ days) Offer and CTA File
Local trainers83 advertisers, 12 metros, 397 active adsVideo is 67% of 90+ day runners. The named owner-trainer is on camera in 36 of 56 top ads. The standard opener is "[City] dog owners" plus a pain question.Free evaluation (28 advertisers), board & train (24), speed promise (23), lifetime support (14). Destinations: website 43, Instant Form 26, chat 11. 10 state a price, e.g. $75–$100 intro and "lifetime training $1,497".competitors/local/LOCAL.md
Apps and courses17 advertisers, 21 pages; Woofz alone runs about 1,000 adsThey churn fast. The durable course sellers run: Dogo "regret getting a puppy" at 535 days, Doggy Dan 432, DogsThat "What if your dog isn't ignoring you?" Long-runner formats: multi-version 52%, video 30%, image 17%.Free course or webinar and installs. Four advertisers sell against hiring a trainer.competitors/apps/APPS.md
National networks25 checked, 15 advertising, 737 active ads. Sit Means Sit runs 167 across 30+ franchise pages; K9 Training Institute 160; Tip Top K9 103; Dog Wizard 85; Zoom Room 81; Dog Training Elite 4856% of 90+ day ads contain video. Single-format static:video:carousel is 36:58:6. The closest model to DA is Tip Top K9: one national page, "Hey <City> dog owners", the same trainer scripts re-shot per city.The free step is called "free evaluation" (111 ads) or "free consultation" (55). Nobody says "meet & greet". Price is hidden. The risk reversal is lifetime support (101) or a guarantee (80). Pains named: ignoring commands 54%, barking 26%, jumping 25%, new puppy 25%, pulling 20%.competitors/national/NATIONAL.md
Video content30 durable videos (median 198 days) + 20 more analysedReal trainer in 17. Phone footage in 13. 9:16 in 21. Median 38 s. Hooks: city call-out 8, pain named 7, problem shown 6. Proof: live demo 14, same-dog before/after 5.9 of 20 service ads offer a free evaluation or consult; none states a programme price.videos/VIDEO-BREAKDOWN.md
Funnels18 teardowns, 16 from a live adContact comes within 0–1 screens for 13 of 15. DA shows 16 screens first. The best pattern is "pick your time first".Only Bark Busters promises a callback time (24 h).funnels/FUNNELS.md

Pains in durable ads vs our form.

Competitor examples (20 live ads, captured 2026-09-28)

"Days live" measures durability, not sales. The notes on why each ad lasts are our own read. We copy the move, never the words or pixels.

Bark Busters (Houston) ad
National

Bark Busters (Houston)

Video 9:16, 17 s · 374 days live · Meta Library 2085653408635728

On screen: "WHEN A GUEST WALKS IN… MOST DOGS WOULD BE BARKING, JUMPING AND PACING." Shot through the client's front door.

Why it lasts (our read, not sales data): It shows the exact home moment owners dread, then the calm result, with natural sound.

What we take: The in-home "door test", filmed by our trainer in a real client's home (script V02).

Dog Training Elite ad
National

Dog Training Elite

Video · 871 days live · Meta Library 953108883214300

Headline: "Get a FREE In-Home Dog Training Evaluation". A branded truck arrives, then an in-home session.

Why it lasts (our read, not sales data): "The trainer comes to you" is shown, not said, and the free step is named plainly.

What we take: The trainer arriving at the door, with the free evaluation in the headline.

The Dog Wizard ad
National

The Dog Wizard

Static (multi-version) · 338 days live · Meta Library 1096499402562862

On image: "ATTENTION CHATTANOOGA DOG OWNERS" and "FREE PHONE OR IN-PERSON EVALUATIONS".

Why it lasts (our read, not sales data): City call-out plus a free-evaluation band: simple, local, and it lasts.

What we take: City call-out plus a free-consult band on statics in metros where we have trainers.

Sit Means Sit (Portland) ad
National

Sit Means Sit (Portland)

Video · 537 days live · Meta Library 657050567053240

Opens on an owner being yanked by the dog. Free consultation offer.

Why it lasts (our read, not sales data): The pain is on screen in the first second, before any logo or claim.

What we take: Open on the pulling moment itself (our pilot V09). Not their "#1" claim.

All Dogs Unleashed (Tampa) ad
National

All Dogs Unleashed (Tampa)

Video (multi-version) · 346 days live · Meta Library 1382502626866980

An owner testimonial at pick-up: "…and the jumping." Board & train, guarantee and lifetime support.

Why it lasts (our read, not sales data): A real owner naming the problem that got fixed.

What we take: Owner testimonial in their own words (V05), but filmed at home on their own walk.

Sit Means Sit (NW Michigan) ad
National

Sit Means Sit (NW Michigan)

Multi-version · 621 days live · Meta Library 546404688402456

Seven dogs holding a "place" on cots, with "Contact us today for a free demo and evaluation."

Why it lasts (our read, not sales data): A visible skill demo proves competence, and the free step closes the ad.

What we take: One real demo moment plus a free-consult end card.

Kingdom K9 USA (San Diego) ad
Local

Kingdom K9 USA (San Diego)

Static · 310 days live · Meta Library 1485061055897876

"SAN DIEGO DOG OWNERS, STOP SCROLLING!" / "Have you been trying to train your stubborn dog for what seems like FOREVER with little or no results?"

Why it lasts (our read, not sales data): City call-out plus a failed-alternative pain, then a free evaluation and lifetime support: the most durable local static.

What we take: Our first static brief: trainer photo, pain checklist, free-consult band. San Diego is also DA's Google market.

Bigmikedts (Los Angeles) ad
Local

Bigmikedts (Los Angeles)

Video · 257 days live · Meta Library 870697795565560

"🚨 Los Angeles Dog Owners 🚨 — This one's for you!" A trainer talks to camera.

Why it lasts (our read, not sales data): The city opener stops locals, and the trainer speaks in his own voice.

What we take: V01 trainer call-out with a city opener, one cut per covered metro.

John K9 ad
Local

John K9

Video · 190 days live · Meta Library 1268728142048865

"If you've ever felt frustrated walking your dog, dealing with constant pulling on the leash, ignoring…"

Why it lasts (our read, not sales data): It stacks the everyday pains in one breath.

What we take: The pain-stack opener: ignoring, pulling and jumping are 45% of our form answers.

Carlisle K9 (Houston) ad
Local

Carlisle K9 (Houston)

Static · 122 days live · Meta Library 1521132679502193

"Dog owners of Greater Houston, we see you." / "Rated 5★ by 300+ owners". Free evaluation.

Why it lasts (our read, not sales data): A local empathy line plus a real review count.

What we take: Local empathy plus DA's real review count, used only where accurate.

Art of the Dog Canine Academy ad
Local

Art of the Dog Canine Academy

Video · 122 days live · Meta Library 1003495205503438

"Walking your dogs shouldn't feel like a wrestling match." / "Stop Being Dragged Down the Street".

Why it lasts (our read, not sales data): It names the lived moment, not the category.

What we take: Lived-moment language for our pulling concepts.

Dog Max (Denver) ad
Local

Dog Max (Denver)

Multi-version · 45 days live · Meta Library 3974244392881648

"Lifetime Dog Training Support". It sells lifetime training against dogs slipping back.

Why it lasts (our read, not sales data): Regression is a real fear, and "lifetime" answers it.

What we take: "Lifetime lessons" as the answer to regression: Trained for Life's strongest line. Never the price.

Dogo ad
Apps

Dogo

Video (multi-version) · 535 days live · Meta Library 2065481830580626

"REGRET GETTING A PUPPY?" A selfie-style confession.

Why it lasts (our read, not sales data): It says the feeling owners won't say out loud.

What we take: The confession opener for puppy overwhelm (V08), with a real owner.

Dogo ad
Apps

Dogo

Static (multi-version) · 240 days live · Meta Library 1266203765370801

"Regret getting a puppy?" plus problem tiles: constant biting, crate crying, leash pulling…

Why it lasts (our read, not sales data): Owners find their own exact problem in a grid.

What we take: A pain-tile static mapped to our 9 form pains.

Doggy Dan ad
Apps

Doggy Dan

Static · 432 days live · Meta Library 762834419615931

"FREE DOG REACTIVITY WEBINAR — CLAIM YOUR SPOT!"

Why it lasts (our read, not sales data): Free value for a painful niche, reactivity.

What we take: Reactivity as its own pain lane. Our free step is the consult.

Will Atherton ad
Apps

Will Atherton

Video (multi-version) · 619 days live · Meta Library 1768351697065503

"If you're a new puppy owner…" A trainer with a puppy, to camera.

Why it lasts (our read, not sales data): A real trainer's face and a clear call-out of who it's for.

What we take: Persona call-outs (new puppy owners) in trainer-led videos.

Pupford (Zak George) ad
Apps

Pupford (Zak George)

Video · 118 days live · Meta Library 2499997700737314

"If your dog is pulling, barking, biting, jumping…" Free 30-day course.

Why it lasts (our read, not sales data): A known trainer, a pain stack and a free offer.

What we take: The pain stack, spoken by our own trainer.

Tom Davis Dog Training ad
Apps

Tom Davis Dog Training

Static · 57 days live · Meta Library 2175727003352861

"PRIVATE TRAINER $100–$300" struck through, then "THE SYSTEM $27".

Why it lasts (our read, not sales data): It sells DIY against hiring a trainer: the objection our buyers hear.

What we take: The counter: "videos didn't stick, so a trainer at your door plus lifetime lessons" (V06).

Tip Top K9 (Kansas City) ad
Video

Tip Top K9 (Kansas City)

Video 16:9, 45 s · 95 days live · Meta Library 2244309482640973

"Hey, what's up, guys? I'm Joey from Tip Top K9 Kansas City…" A named local owner-trainer.

Why it lasts (our read, not sales data): A named local trainer and city on one national page. The closest model to Dog Academy.

What we take: One page, many cities: the same script re-shot by DA trainers in each covered metro.

Dog Training Elite (Los Angeles) ad
Video

Dog Training Elite (Los Angeles)

Video 9:16, 57 s · 76 days live · Meta Library 2367328837009012

"Right now, you might be feeling frustrated. Maybe your dog pulls on the leash, ignores commands, jumps on guests…"

Why it lasts (our read, not sales data): Every common pain in the first 5 s, then the future "in just a few weeks".

What we take: The pain-stack talking head, with our real trainer instead of a presenter.

2. The lead-gen form for Meta traffic (funnels/FUNNELS.md §3)

Screen Content
1Main problem (pre-selected from ?pain=, headline matched to the ad). Includes "Growls, snaps or has bitten", routed honestly.
2Zip, with an honest coverage result shown before contact: "✓ In-person trainers cover 92101", or "In your area, training starts with live video lessons".
3Dog's name and age.
4"How soon does {dog}'s {pain} need to stop?" "Just researching" goes to self-booking plus email, not an instant call.
5Pick a time for the free 30-minute call, plus "what you'll leave with" and the value stack with no price.
6Name, mobile, email on one screen, with separate appointment and marketing text consent.
AfterA confirmation page with the time, who calls and from which number, add-to-calendar and reschedule. Then an optional "help your trainer prepare" panel for the old steps.

One "what happens next" promise everywhere. Today the homepage says "a concierge call" and the form says "a virtual meet & greet". Matthew must confirm who runs the call.

What the test lead showed (test-lead/TEST-LEAD.md):

3. CAPI for the custom CMS: the build, step by step (capi-spec/DEV-SPEC.md, QA-RUNBOOK.md)

Full step-by-step instructions for DA's developer (code, QA runbook): vps-327b7201.vps.ovh.us/admaker/dog-academy-capi/

  1. Meta setup (DA admin):

    • Brett gets access to the Business, dataset 481578137302100 and the ad account;
    • a system user and token (a secret on the server);
    • domain verification on every layout.
  2. Fix the pixel:

    • base code on every layout, including the program pages; Heyflow stays off Meta or gets the pixel;
    • replace tk-fb.js with standard events that carry an eventID;
    • stop automatic matching from reading the dog's name as the owner's.
  3. Capture identity at quiz start and on the lead:

    • fbclid → _fbc, set server-side with Meta's Parameter Builder for PHP;
    • _fbp, IP and user agent;
    • hashed email, phone, name and zip;
    • external_id = DA's lead ID.

    All of these are stored on the lead record (schema migration in the spec).

  4. Server sender: CapiService, a queued job with an outbox, retries and backoff, idempotency, and a 7-day age guard. Target under 1 hour from event to Meta.

  5. Events:

    Event action_source Sent by
    Leadwebsitepixel + CAPI, shared event ID
    Schedule (self-booked)websitepixel + CAPI, shared event ID
    Agent-booked Schedulephone_callCAPI
    Consultation completedphone_call or otherCAPI
    Phone Purchasephone_callCAPI
    Pay-by-link Purchasewebsitepixel + CAPI, event ID = order ID
    • No negative events. Consider a "sale kept" stage for refunds.
    • Never send service-dog, veteran, health or call-note data.
  6. Stage feed: an authenticated webhook in the Laravel app that the CRM, dialer or billing system calls. Fallbacks: a daily CSV/Sheet import, or Zapier/Make.

  7. QA and go/no-go:

    • Test Events for every event;
    • dedup working;
    • EMQ targets met;
    • stage coverage;
    • a 7-day CRM↔Meta reconciliation;
    • one end-to-end test lead with a real DA phone number.
  8. Gate 0 in Ads Manager (a draft, never published): does Leads → Website offer "Maximize number of qualified leads"? If it does, a CRM-staged challenger cell becomes possible.

4. Account plan: top and bottom of funnel (account-plan/ACCOUNT-PLAN.md)

5. Creative production process

Statics. These run in a Dog Academy creative thread, per the 2026-09-27 rule.

  1. find-printing-ads picks sources from this round's catalogs.
  2. write-brand-hooks: competitors' working hooks, copied, then cranked 2×.
  3. make-printing-format-statics: one-pass whole ads, each built from its own source ad, with rendered-pixel gates and a review board.

The first static to brief is the durable local format: a trainer photo, a pain checklist and a free-consult band.

Video (video-process/):

Copy rules for every ad:

6. Execution timeline

When Dog Academy (Matthew, developer, trainers) AdMaker (us)
Week 0 (now)Meta access; data pack; developer gets DEV-SPEC.md; send the trainer filming brief; a DA phone number for the test leadOpen the DA creative thread; hooks + wave-1 statics; Gate 0 check in Ads Manager once access lands
Week 1Developer: pixel fixes + CAPI on staging + the Meta version of the form; trainers film the V09 pilotStatics to the review board; edit the pilot; build the account objects as drafts
Week 2QA gate: Test Events, dedup, EMQ, end-to-end test leadVerify the QA gate; launch wave 1 (statics) only when every gate passes
Weeks 3–4Stage feed live (consult completed, sales)Wave 1 read; wave 2 adds video (V09 + V05)
Weeks 5–6—Wave 3; retargeting only if the pool gate opens; the $10k verdict on CRM sales

7. Open inputs (who owes what)