Meta and AppLovin both came in 5–7x over the CAC ceiling. The lesson was not "wrong channel" — it was that the two products need two completely different growth engines. This playbook splits them and builds each one out to the tactic, the tool, and the script.
MoveGuard Adult serves large dogs (25–75 lb) that already show or fear joint decline — stiffness getting up, slowing on stairs, aging big breeds. That means there is a stream of people actively searching for a solution every single day. Our entire job for Adult is to be present, trusted, and easy to buy at the moment of that search. This is the opposite discipline from Growth. We do not need to create belief; we need to win the click and the comparison.
Interruption feeds are a poor fit even for Adult, because you pay to shout "joint support!" at a scrolling audience that is 98% not shopping for it right now. Capture channels invert the economics: the buyer raises their hand first, so intent is free and CVR is multiples higher.
Ranked by speed to profitable sales, not by size of eventual ceiling. Work top down.
| # | Channel | Why it fits Adult | Time to first profit | Priority |
|---|---|---|---|---|
| 1 | Amazon (SP/SB PPC + organic) | Highest purchase intent on earth for "dog joint supplement"; trust + Prime remove the DTC friction that killed paid. | Days–weeks | DO FIRST |
| 2 | Google Search + Shopping / PMax | Warm keyword intent ("large breed joint chews"), branded defense, feed based Shopping. | 2–4 weeks | HIGH |
| 3 | SEO + AEO (symptom → solution content) | Owns the top of the intent funnel ("dog limping back legs") and gets cited in AI Overviews / ChatGPT answers. | 2–6 months | COMPOUND |
| 4 | Retargeting + Email/SMS + Reviews | Converts the warm audience the three engines above generate, cheaply. | Continuous | GLUE |
Adult is a demand capture product and Amazon is the largest demand capture surface we have. Treat this as the near term revenue engine while the organic assets compound.
This is exactly what the titan-weekly-scan and amazon-ppc-growth-loop skills automate: margin truth (CM1/CM2/CM3), n gram negatives, harvest pass, bid waterfall, SQP opportunity, four bucket triage. Point them at the Adult ASIN weekly and work the staged action queue.
Second engine. Google captures the desktop and "research before buy" slice that never opens the Amazon app. Structure:
The Google Ads connector needs re authorizing (OAuth cannot run in a headless session). Once live, pull real volumes + Google Trends for every keyword below and rank by volume × commercial intent ÷ competition before funding. Until then the tiers below are the strategic seed, not the buy list.
Adult is where organic search actually works, because the symptoms are searchable. Two jobs:
Publish authority content that intercepts the worried owner before they know what to buy:
In 2026 a large share of these questions are answered by AI Overviews and ChatGPT, not ten blue links. To be the cited source:
Organize spend and content by intent temperature. Hot = ready to buy (Amazon + Google Exact). Warm = comparing (Shopping + LP). Cool = symptom research (SEO/AEO + retarget).
| Tier | Intent | Seed keywords | Best channel |
|---|---|---|---|
| HOT | Transaction | dog joint supplement large breed · hip and joint chews for dogs · glucosamine chondroitin for dogs · senior dog joint supplement · dog mobility chews | Amazon SP Exact, Google Exact |
| WARM | Comparison | best joint supplement for [breed] · dog joint chews vs pills · green lipped mussel for dogs · vet recommended dog joint supplement | Shopping/PMax, SB, LP |
| COOL | Symptom / research | dog limping back legs · older dog stiff getting up · dog slowing down on stairs · when do [breed] get hip problems · dog arthritis signs | SEO, AEO, YouTube, retarget |
Price is not the problem; LTV framing is. A joint dog stays on the product for years. Build the math on 6–12 month subscription LTV, not first order, and the CAC ceiling opens up on every channel.
MoveGuard Growth serves large and giant breed dogs, 8–30 months old, with no joint symptoms. The buyer has no urgency, no pain, and — critically — does not Google a problem their healthy puppy does not visibly have. That single fact kills the SEO/Search playbook that works for Adult, and it is exactly why Meta and AppLovin burned money: they paid to interrupt people who had no reason to care yet.
Growth can only be won by reaching the right person at the one moment prevention feels relevant — the "I just got a giant breed puppy" moment — and wrapping the offer in authority, education, and trust. The rest of this tab is the machine for finding that person and starting that conversation, compliantly and at scale.
A new big breed puppy owner is, for a few weeks, hyper researching everything: food, crate size, training, "how big will he get." That window is when a growth stage joint product is not a hard sell — it is welcome, expected advice. Our whole job is to be in that window with a helpful voice, not an ad.
The reel that sparked this (@simplyougrow) tells a Ken Griffin story: a friend handed his pet insurance business to his 25 year old son, who used AI + social media to grow it, and it later sold for $1 billion. The mechanism, verbatim from the caption:
"Find people posting photos of their new puppies, use AI to identify the breed, and send them a personalized message congratulating them on their new dog while introducing them to pet insurance."
That is a three step pipeline: social listening → AI qualification → personalized 1:1 outreach at the exact life stage moment. It maps onto MGG perfectly — our qualifier is just narrower (large/giant breed and 8–30 months).
"Send them a personalized message" is doing enormous work in that sentence. At $1B licensed insurance scale that outreach was almost certainly paid, opt in, or licensed channels — or it happened years ago when Instagram still allowed DM automation. Today, cold DMing strangers from a bot gets the account banned in days and trips spam law. The reel sells the insight and hides the compliance reality. We keep the insight; we replace the naive outreach with an opt in mechanism that achieves the same thing legally (Section B).
#greatdanepuppy #canecorsopuppy #mastiffpuppy #bernesepuppy #newfoundlandpuppy #saintbernardpuppy #rottweilerpuppy #germanshepherdpuppy #greatpyreneespuppy #dobermanpuppy #leonbergerpuppy #largebreedpuppy #giantbreedpuppy #bigpuppy #newpuppy #puppygrowth
You do not need Apify to run this. Here is the honest build vs cost tradeoff. Recommended free stack is starred.
| Layer | Paid (fastest) | Free / low cost alternative | Notes |
|---|---|---|---|
| Instagram hashtag pull | apify/instagram-hashtag-scraper, apify/instagram-scraper |
★ Instaloader (open source, free) for hashtag + profile scraping · IG Graph API Hashtag Search (official, business account, 30 tags / 7 days) | Your Apify plan is currently maxed and blocking runs — raise it or start on Instaloader. |
| TikTok pull | clockworks/tiktok-scraper |
★ yt-dlp (free) for hashtag/user feeds · TikTok Research API (free, application required) | TikTok is the richest big dog content vein — worth a dedicated harvester. |
| Reddit pull | — | ★ Reddit API / PRAW (free, generous) or the public .json endpoints |
Fully free and ToS friendly. Best starting point — build here first. |
| Orchestration | Phantombuster, Bright Data | ★ Local cron + Python + this workspace | A nightly scheduled job writing to the queue file/sheet is enough to start. |
This is the "use AI to identify the breed" step and it is very doable. The qualifier keeps a post only if the dog is a large/giant breed and reads as a puppy/adolescent.
google/vit based dog breed model). Returns breed + confidence.def qualify(post): breed, conf = vit_dog_breed(post.image) size = SIZE_MAP.get(breed, "unknown") stage = life_stage(post.caption, post.hashtags) if size in ("giant","large") \ and stage in ("puppy","adolescent") \ and conf > 0.55: return keep(breed, size, stage, conf) return drop()
I can run the breed classifier live this session — give me one sample new puppy image (or a target hashtag to pull one from) and I will return breed + confidence + size class + a suggested personalization note, so you can see the exact output the queue will hold before we build the harvester around it.
Every qualified prospect becomes one row. This is the object the whole engine revolves around — a review list a human approves, never an auto fire cannon.
| Field | Type | Example | Purpose |
|---|---|---|---|
| id | string | ig_3421... | Dedupe key (platform + post id) |
| captured_at | datetime | 2026-08-04T06:12Z | Freshness; act inside the trigger window |
| platform | enum | ig · tiktok · reddit | |
| post_url | url | instagram.com/p/... | Where a human engages |
| author_handle | string | @daneymomma | Who to engage (public handle only) |
| author_followers | int | 1,840 | Creator vs civilian routing |
| breed_pred | string | Great Dane | From the ViT classifier |
| breed_confidence | float | 0.91 | Low conf → human confirm before routing |
| size_class | enum | giant | giant · large (others dropped) |
| life_stage_est | enum | puppy | puppy · adolescent |
| signal_tags | list | [newpuppy, 12weeks] | Why it qualified; personalization fuel |
| personalization_note | string | "Dane pup, growth plate stage" | Seed for the human comment |
| route | enum | engage | engage · creator · paid_audience · warm_dm |
| status | enum | new | new · engaged · replied · converted · skip |
| assigned_to | string | founder | Human owner of the touch |
| action_date | date | 2026-08-04 | SLA: act same day the post is fresh |
// one queue row as JSON { "id": "ig_3421889", "platform": "instagram", "post_url": "https://instagram.com/p/XXXX", "author_handle": "@daneymomma", "author_followers": 1840, "breed_pred": "Great Dane", "breed_confidence": 0.91, "size_class": "giant", "life_stage_est": "puppy", "signal_tags": ["newpuppy","12weeks"], "personalization_note": "Dane pup, growth plate stage", "route": "engage", "status": "new", "assigned_to": "founder", "action_date": "2026-08-04" }
You cannot legally or safely cold DM the queue at scale. But you can run automated, personalized DMs to anyone who comments a keyword on your post — because they initiated. This is the one Meta approved automation lane, and it delivers the reel's "personal message at the new puppy moment" without the ban risk.
The thing they opt in for. High value, breed relevant, and it naturally frames why early joint support matters — without a hard pitch. Working title (customer facing, clean copy):
"The Big Dog Growth Guide: what every large and giant breed puppy parent needs to know in the first 2 years"
Each hook is a founder or brand post whose caption invites a keyword comment. Customer facing copy below is written clean (no dashes), ready to use.
"90 percent of large breed puppy parents have no idea their dog's joints are most vulnerable BEFORE the first limp ever shows. Comment GROW and I will send you the free Big Dog Growth Guide our vet helped write."
"Got a giant breed pup and wondering how big he will actually get? I built a growth chart for the 12 biggest breeds. Comment CHART and it is yours free."
"The number one thing big breed puppy parents get wrong in year one: stairs and jumping too early. Comment GUIDE for the safe exercise by age cheat sheet."
"I started MoveGuard because my own big dog's joints scared me into learning everything. I put it all in one free guide for new giant breed parents. Comment GROW."
Distribute hooks as founder Reels, TikToks, and static posts. The identification queue tells you which hashtags and communities to post into and which creators to seed so the hooks land in front of the exact audience.
| Step | Trigger / action | What happens |
|---|---|---|
| 0. Setup | ManyChat + Instagram/Facebook connected | Keyword triggers armed: GROW, GUIDE, CHART |
| 1. Trigger | User comments the keyword on the hook post | ManyChat detects the comment automatically |
| 2. Public reply | Auto reply to their comment | "Just sent it to your DMs 💚 check your messages" |
| 3. Opt in DM | First automated DM | Confirms consent + delivers the guide link (see script) |
| 4. Qualify | One tap buttons in the DM | "What breed is your pup?" + "How old?" → tags the contact |
| 5. Value | Follow up DM (day 1) | One genuinely useful tip from the guide, no pitch |
| 6. Soft offer | Follow up DM (day 3) | Introduce MoveGuard Growth + first order incentive |
| 7. Nurture | Hand off to email/SMS (if opted in) | Long horizon: the dog is a multi year customer |
Hey! Thanks for commenting 🐾 Here is your free Big Dog Growth Guide, vet reviewed and made just for large and giant breed puppy parents: [link]
Want me to send you the breed specific growth chart too? Tap below.
Love it. Quick one so I send you the right stuff: what breed is your pup?
One thing most people miss: in giant breeds the growth plates stay open longer, so the joints are actually most vulnerable in these early months, long before any limp. The guide covers exactly how to protect them. How old is your pup now?
Since you have got a growing big breed, this is the exact window MoveGuard Growth was built for. It is the daily chew that supports the joints while they are still forming. Want to try it? New parents get [offer] on the first order and there is a 60 day promise, so it is zero risk to see how your pup does. [link]
Same targeting precision as the reel, sorted worst to best on risk. Live on the green rungs; never touch the red one.
| Method | Verdict | Why |
|---|---|---|
| Automated cold DMs to scraped strangers | NEVER | Violates Meta ToS, fast account ban, spam law exposure. This is the reel's hidden trap. |
| Cold email to scraped / guessed addresses | AVOID | CAN SPAM applies, tanks deliverability + reputation, CASL/GDPR risk for non US contacts. |
| Human, warm public engagement on their post | DO | Genuine non salesy comment from the founder account. Public, ToS fine, drives warm inbound. |
| Comment to DM opt in automation (Section B) | DO ++ | User initiates, Meta sanctioned, personalized at scale. The core engine. |
| Creator seeding (gift qualified micro creators) | DO | Their audience is 100% target. Scales the reel's premise with zero ban risk. |
| Paid custom / lookalike audiences from the signals | DO | AI targeted personal marketing through the legal paid pipe. |
Sections A and B cover the flow and the outreach. This is the build spec: what the classifier does internally, the free local model that runs it for $0, and the free tooling stack that replaces Apify.
Stage 3 is deterministic, not guesswork. Size comes from a breed → {giant, large, medium, small} lookup by adult weight. Life stage is text first: the caption usually states it outright ("12 weeks", "gotcha day", "he is 10 months", #greatdanepuppy), which beats guessing from pixels. Visual puppy proportions are only a weak secondary check. Anything below the confidence bar is held for a human, never auto actioned. (This is exactly the behavior we validated live: it nailed the Bernese, Great Dane and Rottweiler and correctly refused an ambiguous newborn.)
You do not need a paid vision API. Two local routes, both $0 marginal cost after install and both Apple Silicon (Metal) accelerated:
One model answers breed and puppy/adult and reasons over the caption in a single prompt. Best all rounder.
# 1. install Ollama (one command) brew install ollama # 2. pull a vision model sized to your Mac's RAM ollama pull moondream # ~1.7B, fine on an 8GB Air ollama pull qwen2.5vl:7b # sharper, wants ~16GB ollama pull llama3.2-vision # 11B, strongest, ~16GB+ # 3. ask it about a dog photo ollama run moondream \ "What dog breed is this? Puppy or adult? One line." ./post.jpg
In code, call the local API at http://localhost:11434/api/generate with the image base64 + a structured prompt, and parse the JSON back into the queue row.
A fixed 120 class softmax. Milliseconds per image, clean confidence number, ideal for high volume.
# install pip install torch torchvision \ transformers pillow # load a Stanford Dogs (120 breed) ViT, # run on Apple Silicon GPU (device="mps") # returns breed + softmax confidence
Pair with a tiny object detector (YOLO) for the detect stage. Deterministic output, no prompt drift.
On a MacBook Air, start with Ollama + moondream (small, fast, flexible, gives breed + age in one call). Move to qwen2.5vl:7b or llama3.2 vision if you have 16GB+ and want sharper breed calls. Use the ViT route only when you are pushing thousands of images a day and want raw speed. All three cost $0 per image once installed.
Apify's real product is managed maintenance (they fix scrapers when platforms change). The tradeoff of going free is that you take on that upkeep. The right move is not to reinvent scrapers from scratch, but to assemble proven free libraries and lean on the most stable, official sources first.
| Source | Free tool | Stability | Notes |
|---|---|---|---|
PRAW (official Reddit API) | ROCK SOLID | Free, generous limits, fully sanctioned. Breed subs + r/puppy101 + r/DogAdvice. Build here first. | |
Instaloader (open source) + IG Graph Hashtag Search (official) | MEDIUM | Instaloader: use a dedicated account, human paced volumes. Graph Hashtag Search is official and free (you already have Meta API access) but limited to 30 tags / 7 days. | |
| TikTok | yt-dlp · TikTokApi · TikTok Research API | MEDIUM | yt-dlp for metadata; Research API is official and free but needs application approval. Unofficial libs break periodically. |
| Orchestration | Python cron on your Mac, or your Hostinger VPS | FREE | A nightly job: harvest → classify (local model) → write queue. Zero platform cost. |
Build with code, using free libraries — do not pay Apify for this. Start with the two most stable, official sources (Reddit API + IG Graph Hashtag Search) so breakage is rare, then add Instaloader / TikTok as needed. Run at human paced volumes from a dedicated account to avoid blocks. Budget a little of your own time for the occasional fix when a platform changes — that upkeep is the only real cost, and it is far below Apify's bill.
The same pipeline serves both products, but they qualify on different signals — this is the piece most people miss.
| MoveGuard Growth (8–30 mo) | MoveGuard Adult (older, joints) | |
|---|---|---|
| Trigger | Life stage: new big breed puppy | Complaint / symptom: a visible problem |
| Signals | #greatdanepuppy, gotcha day, breeder litter tags, "how big will he get" | "my dog is limping", "senior dog struggling on stairs", "vet said arthritis", "slowing down" |
| Where | IG/TikTok hashtags, breed subs, breeder tags | Reddit (r/dogs, r/DogAdvice), FB help groups, forum threads |
| Classifier role | Breed → giant/large + puppy stage | Breed → giant/large + senior cues, but the complaint text is the real filter |
| Demand type | Creation (no pain yet) | Capture (already searching) |
Because Adult buyers are already looking for a fix, their highest ROI channel is often being present in search (Google + Amazon) and answering the question helpfully, not cold outreach. Same identification pipeline, different filter, payoff shifts toward capture.
The identification + DM engine is the spearhead. These build the owned audience and authority that make it convert — and they feed warm audiences into paid so you escape the CAC ceiling instead of fighting it.
Every big breed puppy passes through a breeder, and reputable breeders already say "start joint support early." Get MoveGuard into puppy go home packs via wholesale/affiliate; partner with AKC parent breed clubs. Exact buyer, exact moment, trusted messenger. The single highest leverage Growth channel.
A genuine big/giant dog authority hub (breed guides, growth calculator, feeding, training) that owns an emailable audience you never re buy. The interactive breed growth calculator is the highest intent, most linkable, most AEO citable asset — and the natural home of the magnet + quiz.
The cheapest high leverage organic play in 2026 and the perfect fit for a prevention product: "why I built this for big dogs." Trust is exactly what an asymptomatic sale needs. Start immediately on IG Reels, TikTok, YouTube.
"Big goofy dog" is a proven viral genre; the algorithm finds big dog lovers for free. TikTok Shop affiliates clip and sell on commission — performance based, no CAC risk.
Personalized by breed → returns a growth/joint risk read → recommends the product. This is the mechanism that manufactures the awareness of future risk the buyer does not feel yet. Reusable across every channel.
Create the "Big Dog Parents Club" (owned reach no ad can buy) and participate authentically in breed subs/groups. Value first; selling gets you banned.