Confidential ยท Strategy Brief

Van Every Chiropractic, 2026 Marketing Strategy

The full-stack acquisition plan: a measurement-and-targeting engine, a Google-led channel mix, the compliant way to use pixel data, the emerging AI-search frontier, and an honest buy-vs-build map for the cortextOS fleet, built through an Opus↔Codex adversarial loop.

Prepared for: Dr. Zach Conner, DC Date: June 19, 2026 Method: Opus 4.8 strategist × 2 Codex (GPT-5.5) adversarial passes Goal: $600K → $1M+ /yr

1Executive Summary

What this plan actually argues, in one screen.

The headline: VE’s fastest, safest path to $1M+ is a Google-led, intent-and-reputation engine, Local Services Ads, high-intent Search, and local/AI-search authority, with the genuine competitive moat being offline conversion feedback (telling the ad platforms which clicks became real, paying patients), review velocity, and front-desk speed-to-lead. Meta and YouTube play a supporting awareness role. The headline-grabbing “condition-page remarketing” idea is reframed, not deleted, because of platform policy, not HIPAA.

$22 to 38
LSA cost-per-lead (best channel)
~42
net-new patients/mo for $1.5M
6 to 12:1
LTV : CAC headroom
450+
Google reviews (top-1% asset)
The six moves that matter most
  1. Launch LSA first, lowest CPL, exploit the 450-review moat.
  2. Wire offline conversions, feed booked/showed/new-patient back to Google. This, not a new channel, is the real unlock.
  3. Run condition intent in Search (contextual), not retargeting audiences.
  4. Engineer review velocity, condition-specific, named-outcome reviews.
  5. Win local AI-search by authority, reviews + third-party mentions + schema. (Google removed AI Overviews from local-health queries, this is a gift.)
  6. Build the intelligence layer; buy the reliability layer.
Where Codex changed the plan

The v1 plan’s centerpiece was building Meta/Google remarketing audiences from who-viewed-which-condition-page. Codex’s verdict: that does not work, not because of HIPAA (your decision settles that), but because Meta and Google independently classify condition-page and condition-video signals as sensitive/health regardless of how you label the audience. Renaming it “Website Visitors 30d” changes nothing. The compliant high-intent condition channel is Search, where the user’s own query supplies the intent. Full detail in §3 and §10.

Highest-conviction recommendation

Make “closed-loop attribution” the first thing you build, before scaling any spend. Call tracking (CallRail/WhatConverts) + a daily ChiroHD reconciliation that pushes booked → showed → new-patient → care-plan back into Google Ads as offline conversions. Every dollar of media gets 2 to 3× more efficient once the algorithms optimize to real revenue instead of button-clicks, and it’s the one advantage competitors almost never build.

2The Targeting Thesis, Measurement vs Activation

The pixel/remarketing engine, rebuilt around what platforms actually permit.

The original instinct is sound: intent data is VE’s most under-exploited asset. Someone reading the sciatica page at 11pm is a high-value prospect. The mistake is assuming you can retarget that person with sciatica ads. You can’t, and the workaround of renaming the audience doesn’t survive contact with Meta’s and Google’s automated health-content detection (§3).

The fix is an architectural one that every sophisticated healthcare advertiser uses: split the pipe into Measurement and Activation.

Measurement pipe (internal truth)

Collect everything you legitimately want to know, which condition pages, dwell time, funnel stage, in your own analytics (GA4 internal views + BigQuery + a lightweight first-party lead DB). Use it to understand demand, prioritize content, and brief creative. Redact health context before anything leaves for an ad platform.

Activation pipe (what platforms see)

Send platforms only generic, conversion-oriented events, Lead, Schedule, Contact, with no condition in the URL, title, or parameters. Do the condition matching where it’s allowed: in Search keywords and contextual placements, where the user’s query is the signal, not a profile you built about them.

Server-side tagging + CAPI (the durable foundation)

Browser pixels are increasingly blocked (ITP/Safari, ad-blockers, cookie decay). Server-side tagging via a first-party subdomain restores match quality and gives you a redaction chokepoint. Architecture:

Web GTM (browser) Server GTM @ tag.vanevery.com redact health context GA4 / Google Ads / Meta CAPI

Event-ID deduplication & match quality (EMQ)

Fire each conversion from both the browser pixel and CAPI with a shared event_id so Meta counts it once. Generate it browser-side with crypto.randomUUID() and carry it through hidden form fields / scheduler callbacks. Push EMQ up with hashed email/phone captured at form submit (post-consent), plus fbp, fbc, IP and user-agent.

// Compliant Meta CAPI payload, note: NO condition data
{
  event_name: "Lead",
  event_time: 1718800000,
  event_id: "shared-uuid-browser+server",   // dedup key
  action_source: "website",
  event_source_url: "https://www.vanevery.com/contact",  // generic page only
  user_data: { fbp, fbc, client_ip_address, client_user_agent,
               em: sha256(email), ph: sha256(phone) },
  custom_data: { value: 200, currency: "USD" }
}
// Stripped/avoided: content_name, content_category, search_string,
// page_title, condition/symptom/body_part, form free-text, /sciatica URLs
Codex, the browser-pixel trap

Server-side redaction is necessary but not sufficient. If the browser pixel fires on /sciatica with auto-advanced-matching on, Meta receives the sensitive URL before your server container ever touches it. Disable the browser pixel’s automatic event capture and advanced matching on condition pages; route those pages’ events through the server container only, post-redaction.

GA4 + Consent Mode v2

Wire all four signals explicitly: ad_storage, analytics_storage, ad_user_data, ad_personalization. On condition pages, default ad_personalization to denied and set allow_ad_personalization_signals:false. Enhanced Conversions fire only when ad_user_data is granted, using normalized hashed email/phone from submitted leads. GA4 still measures behavior internally; you simply never turn condition cohorts into ad-platform audiences.

The honest version of “intent targeting”

You wantedWhy it breaksThe compliant equivalent that still works
Sciatica-page-visitor remarketing audienceHealth signal, any labelSearch/PMax on “sciatica relief Royal Oak”, query supplies intent
Retarget condition-video viewers (4.5M views)Health-derived audienceUse videos as landing/creative & organic SEO/GEO assets; retarget only generic site/booking events
Lookalikes off patient list by conditionSensitive source listBroad local geo + generic conversion optimization; LAL only off consented, non-condition lead lists if counsel approves
“Funnel stage” behavioral audiencesOften health-codedGeneric Schedule/Lead events & offline conversion stages feeding bid optimization

3Platform Policy & Regulatory Reality

How to do it right, landscape and risk-management options, not legal advice.

Framing

Your decision, that tracking non-active-member public-site visitors raises no HIPAA/PHI concern, settles the HIPAA question. But HIPAA is only one of three gates. The operational constraints are the other two: ad-platform policy (Meta/Google) and FTC/state privacy law. This section is the landscape so you can make informed risk calls. It is not legal advice; a healthcare-marketing attorney should sign off before launch.

Gate 1, Meta’s sensitive-data & CAPI rules

Gate 1 (cont.), Google’s personalized-advertising policy on health

Sharper than Meta. Google prohibits targeting, remarketing, Customer Match, similar-audience modeling, or personalized delivery based on sensitive health interests or medical conditions. Google inspects page content, URLs, list source rules, list names, ad copy, and landing pages. A list called “Website Visitors 30d” populated by condition-page visitors is still a health-derived audience; hashing does not cleanse it. The clean exception is Search: the user’s live query is contextual intent, not a profile, so condition keywords are fine even though condition audiences are not.

Gate 2, FTC / HHS posture on tracking pixels & health data

This is the gate that has produced $100M+ in healthcare-pixel penalties since 2023, and it’s where your “unauthenticated public visitor” reasoning is actually strongest, with two important caveats.

The good news for VE’s position: AHA v. Becerra

Supports your decision

HHS OCR’s 2022 bulletin claimed that an IP address + a visit to an unauthenticated health-condition page could itself be PHI. A federal court vacated exactly that rule (“the Proscribed Combination”) on June 20, 2024 in AHA v. Becerra; HHS dropped its appeal Aug 29, 2024, so the vacatur is controlling law through 2026. Translation: IP + a public condition-page view is not per se PHI, which aligns with your risk decision for non-active-member public browsers.

The two caveats that still bite

None of this blocks the plan. It says: keep pixels off authenticated pages, run a real consent banner (Consent Mode v2), redact health context server-side, and have counsel confirm the consent + disclosure posture before launch. The measurement/activation split (§2) is precisely the architecture that satisfies these gates.

Critical correction: CAPI does not cure any of this

Common misconception

Server-side does not exempt you. If your server sends {event:"ViewContent", url:"/neck-pain", user_data:{em:<hash>}} to Meta, your server just transmitted health-interest + identifier to a non-BAA third party, same exposure, different origin. Meta will not sign a BAA and explicitly shifted liability to advertisers in Jan 2025. CAPI is for durability and match quality, not compliance cover. The protection comes from what you redact, not where the call originates.

How to do it right, the risk-managed pattern

Do

Search for condition intent Generic Lead/Schedule events Server-side redaction chokepoint Consent Mode v2 + clear cookie banner Offline conversions (booked/showed), no diagnosis Broad local-geo prospecting on Meta Claims-reviewed ad copy

Don’t

Condition-page visitor audiences Condition-video viewer retargeting Send condition URLs/titles to platforms Lookalikes off patient/condition lists Treat LDU as health cover “Still suffering from sciatica?” diagnose-in-copy

Codex, claims review

Chiropractic ad copy can’t imply guaranteed cures, diagnose the viewer, or overstate typical outcomes. “Still suffering from sciatica?” is riskier than “Chiropractic appointments in Royal Oak.” Run creative through a claims check, the fleet can do a first-pass automatically against a banned-claims list.

4The Google Playbook

Where the highest-intent, lowest-CAC demand lives. Lead here.

LSA mechanics, and the #1 hidden cost lever

Search, bid strategy by budget (Codex-validated)

Monthly / volumeStrategyNote
<$2K or <15 conv/moManual CPCDon’t let AI burn limited budget in learning
$2 to 3K, 15 to 30 convMaximize Conversions (no tCPA)Setting tCPA too early kills the campaign
$3K+, 30 to 50+ convAdd tCPA guardrail~3-week runway + ~60 conv before edits; keep changes <20 to 30%

Condition-segmented ad groups (back pain, sciatica, sports injury, prenatal, wellness); CPCs $3.20 to 6.40 segmented vs $4.50 to 9.80 broad. BMM is dead (folded into Phrase). Dynamic number insertion is essential, 40 to 60% of paid calls are existing patients and inflate conversion rates ~47% if unclassified. AI Max for Search: hold until ~300+ monthly conversions.

PMax & YouTube

PMax, add in month ~4 once Search clears 50 conv/mo and call tracking is clean; always with brand exclusions + existing-patient exclusions, real video assets (auto-generated underperforms), and a branded Search campaign running alongside. Channel-level reporting went live Nov 2025. YouTube, Video Action Campaigns auto-upgraded to Demand Gen (Apr 2026; ~40% efficiency gain). Run contextual condition placements/topics (allowed), not per-condition remarketing lists (banned, §5). $50 to 100/day minimum to optimize; lead with the outcome before the 5-sec skip.

Channel priority & logic

  1. Local Services Ads (LSA), activate first. ~$22 to 38/lead, pay-per-lead, “Google Screened” (background check + license verify). VE’s 450+ reviews are a direct ranking input, a moat competitors can’t buy overnight.
  2. High-intent Search, tightly themed condition + local + insurance angles (e.g. “chiropractor that takes Blue Care Network Royal Oak”, low competition, high qualification). This is the compliant home for condition intent.
  3. Google Business Profile (organic but ad-adjacent), the single highest-ROI local surface; map-pack clicks convert.
  4. YouTube / Demand Gen, broad local awareness & the condition-video library as creative + organic asset, not a retargeting source.
  5. PMax / AI Max, later, with brand exclusions; auto-qualifies for new AI Mode placements. Watch for brand-demand cannibalization.
Codex, bid-strategy reality (low volume)

Don’t jump to tight tCPA. Automated bidding gets unstable below ~15 to 30 meaningful conversions/mo per campaign (50+ is solid). Seed with Maximize Conversions, consolidate campaigns, use phrase/exact + strong negatives, then graduate to tCPA. Optimize in stages: (1) calls >60 to 90s & form leads → (2) qualified lead / booked → (3) arrived new-patient → (4) care-plan / membership started. Import offline conversions with gclid/gbraid/wbraid. Don’t let Google optimize forever to cheap button-clicks.

Local-healthcare gift

Google removed AI Overviews from local healthcare queries (confirmed 2026). “Chiropractor near me” reverts to map-pack + organic, so the zero-click erosion hammering other industries doesn’t hit VE’s core terms. Local SEO + LSA + GBP are the durable high-ROI core, not a channel under threat.

5The Meta Playbook (FB + IG)

A supporting awareness & generic-demand role, not the targeting engine.

The one nuance that unlocks the video library, engagement audiences

There’s a real, defensible exception to the “no retargeting” rule, and it matters because of VE’s 4.5M video views. On-platform engagement audiences (people who watched VE’s videos on FB/IG, page engagers) are built from Meta-native engagement, not from pixels, customer lists, or off-site health events, and are not hit by the H&W data-layer restrictions. This is the most defensible warm audience VE has. But there’s a precise line:

Codex, the practitioner’s rule

Meta engagement audiences are usable as neutral brand-engagement signals; Google condition-video remarketing is not usable at all; and anything named, segmented, seeded, or messaged around a specific condition becomes health-derived targeting that gets disabled.

TacticVerdictWhy
Meta audience: “watched VE educational/testimonial videos” (neutral, grouped)DefensibleOn-platform engagement, no condition encoded
Meta lookalike off all VE video/page engagersMost defensible LALNeutral, aggregated seed
Meta audience: “sciatica video viewers,” “neck-pain viewers”DisabledName/definition encodes a condition (Sept 2025)
Per-condition YouTube remarketing lists in Google AdsNot allowedGoogle bans consumer-health remarketing outright
YouTube contextual placements/topics/keywords (Google)AllowedContext, not a personal health profile

Too permissive = “retarget every condition video viewer by condition” (recreates health targeting). Too restrictive = “Meta can never retarget video viewers” (leaves VE’s best asset idle). The win is neutrally-named Meta video-engagement audiences + lookalikes, with condition-matching done in creative served to broad local audiences.

Benchmarks (directional)

Meta chiro CPL ~$8 to 20/lead; healthcare CPM ~$27 (peaked $38.70 Jan 2026); Reels ~26% cheaper CPC than Feed. Retargeting warm CPM $6 to 12, CVR 5 to 12%. Full-funnel split ~70% prospecting / 20% testing / 10% retargeting.

Hard line

No condition-page or condition-video retargeting on Meta. No lookalikes off patient/condition lists. Meta is for broad local demand generation + generic appointment conversion, measured by booked patients via offline feedback, not vanity CPMs.

6The Emerging AI-Search & ChatGPT Frontier

What’s real in 2026, what’s hype, and where VE gets in early.

The landscape (confirmed, June 2026)

DevelopmentStatusRelevance to VE
ChatGPT Ads launched (US, Free/Go), self-serve Ads Manager open May 2026, no spend minimum, contextual, CPC ~$3 to 5, CPM ~$25ConfirmedCatches research-mode users (“how to fix neck pain”), not map-pack intent. $500 to 1K test, not a pivot.
Google AI Overviews removed from local-health queriesConfirmedBiggest single fact here. Local SEO/LSA stay durable for VE’s core terms.
Google AI Mode ads (Conversational Discovery + Highlighted Answers); PMax/AI Max auto-qualifyConfirmed (May 2026)May matter faster than ChatGPT ads, rides Google’s existing intent graph. Captured by running PMax/AI Max.
Perplexity abandoned ads (Feb 2026), subscription-onlyConfirmedThe only way into Perplexity is organic GEO. No pay-to-play.
llms.txt, ~10% adoption; Anthropic & Perplexity confirmed read it; most AI bots skip itLow ROIVE already has it. Leave it; don’t invest further. Near-zero clinic ROI.

What actually moves AI citations (GEO signals, evidence-ranked)

Highest-leverage GEO action for VE

Because of the local-health carve-out, the win is not llms.txt or AI-written blog volume. It’s local authority + reputation: drive Google review velocity with condition-named outcomes; earn third-party local mentions (Royal Oak chamber, Oakland Press/Patch, gyms, running clubs, employer wellness pages, podcasts); publish condition pages with named-doctor expert quotes; lock complete LocalBusiness/Chiropractic + Physician + FAQPage schema; keep it fresh. GEO for VE = local SEO + digital PR + structured expert content.

ChatGPT Ads, the disciplined play

Don’t shift budget from LSA/Search. After attribution is solid, run a $500 to 1K/mo, 60 to 90-day controlled test against contextual problem queries (“chiropractor vs physical therapy,” “desk-job neck pain”), to educational landing pages with fast booking + insurance clarity + local proof. Judge by booked consults and new patients, not CPC. If you can’t trace ChatGPT click → call/form → appointment → patient, don’t buy it yet.

AI-search visibility monitoring (build this loop)

Monthly, run a fixed prompt set across ChatGPT, Gemini, Claude, Perplexity, and Google AI Mode, “best chiropractor in Royal Oak MI,” “chiropractor for sciatica near Royal Oak,” “Van Every reviews,” plus competitor-comparison prompts, logging whether VE appears, which sources are cited, sentiment, and competitors named. The fleet can fully automate this (it already has Perplexity + multi-model access). Paid trackers if desired: Profound, Scrunch AI, Otterly.AI, Peec AI; BrightLocal/Whitespark for local pack.

Codex, over/under-hyped for a single clinic

Over-hyped: llms.txt, ChatGPT ads as a near-term Google replacement, AI-Overview optimization for “chiropractor near me” (carve-out), schema as magic, AI-generated content volume (dilutes trust). Under-hyped: offline-conversion quality, call tracking + call scoring, review recency/specificity, Google AI Mode ads, and front-desk workflow discipline.

7Buy vs Build, the AI Execution Layer

Build the intelligence layer; buy the transport and reliability primitives.

The fleet can replace a lot of GoHighLevel’s feature surface, but “near-zero cost” is the wrong frame. The true cost of a bespoke build is on-call ownership: monitoring, deliverability, consent handling, edge cases, and recovery when ChiroHD or a browser flow changes. A missed-call-text-back down for two hours isn’t a bug, it’s lost patients. The question isn’t “can the fleet build it?” It’s “who wakes up when SMS delivery silently degrades?”

BUILD (fleet)

  • Content, social scheduling, email campaigns (Brevo)
  • RAG-assisted copy & carousel production
  • Landing pages on reliable stack
  • First-party lead DB (Postgres/Supabase)
  • Attribution warehouse + dashboards
  • Brand-voice nurture logic
  • Campaign QA, weekly analysis, GEO/SEO briefs
  • AI-search monitoring loop

BUY (reliability)

  • Google Ads, LSA, Meta; ChatGPT ads (test only)
  • Call tracking: CallRail / WhatConverts / CTM
  • SMS/voice transport: Twilio / Telnyx (don’t hand-roll carrier/A2P compliance)
  • Server-side pixel infra: Stape (~$20 to 100/mo)
  • Error/uptime: Sentry, Healthchecks.io
  • Optional turnkey review tool: Birdeye / GatherUp

BORDERLINE

  • Missed-call text-back, build only as monitored production infra
  • Review requests, build only with a reliable “completed visit + consent” trigger
  • Appointment-triggered automations, gated by ChiroHD

GHL @ ~$300/mo is cheap operational insurance if VE wants one vendor to own the CRM plumbing rather than becoming the vendor itself.

ChiroHD is the architecture constraint

“No API” is not a footnote. To get appointment/lead data out for offline conversion tracking, in order of preference: (1) native scheduled exports/reports; (2) parse ChiroHD notification emails into structured events; (3) Playwright RPA for back-office daily reconciliation only, never the real-time path; (4) a front-desk “mark status after visit” checklist. Avoid live screen-scraping as a critical dependency. Treat ChiroHD as clinical truth, reconciled daily, and lean on CallRail/WhatConverts to bridge calls/forms/click-IDs back to Google Ads.

Speed-to-lead, the reliable way

CallRail missed-call webhook signed ingest endpoint immutable event → Postgres queue job Twilio SMS (A2P 10DLC, deterministic template) delivery-status webhook fail → human alert

Cheap, monitored stack: Cloudflare Workers/FastAPI ingest · Postgres/Supabase state · Redis/BullMQ or Temporal jobs · Twilio/Telnyx SMS · Sentry + Healthchecks.io liveness · Metabase/Looker reporting. Templates are deterministic, not AI-generated at send time. Don’t make n8n the sole critical path unless it’s hosted, monitored, and has retry/dead-letter you trust.

Reliable review requests

Needs: verified-visit trigger, suppression rules (no request after a bad outcome/complaint/refund/recent prior request), consent & opt-out tracking, delivery status, GBP-first link routing, staff override, audit log, natural-looking throttling, and no review gating (don’t pre-screen for happy patients, that’s against Google’s policy). If ChiroHD can’t emit a clean “completed appointment,” a daily export or front-desk checklist beats brittle automation.

Codex, where it changed my mind

My v1 said “fleet replaces GHL for near-zero cost.” Corrected: build the intelligence layer, buy the transport/reliability primitives. The fleet’s edge is brand-voice content, analysis, QA, and the monitoring/attribution brain, not being the pager-duty owner of carrier-grade SMS. Replacing GHL means becoming the vendor; only do it where you’ll truly own production.

8Budget & Economics

Mapped to VE’s real unit economics, with a reality check on the math.

Unit economics (VE actuals)

New-patient exam$200
Consult$50
Avg care plan$2,500
Est. LTV~$2,275 to 2,500
Target CAC$80 to 150 (LSA/Search)
LTV : CAC6 to 12 : 1
Codex, CAC reality check

$80 to 150 CAC is realistic for LSA + tight Search, but naive as a blended target across Meta/YouTube/PMax. $7K ÷ 42 net-new = ~$167 each before no-shows, junk leads, and care-plan-acceptance drop-off. So: concentrate spend on the proven low-CAC channels first; treat Meta/AI-search as small, measured tests. The way you protect the CAC is offline-conversion feedback + front-desk close-rate, not more channels.

Recommended allocation, $7K/mo (ramp model)

ChannelMonthlyRolePrimary KPI
Local Services Ads$2,500Lowest-CPL core; lead hereBooked patients / lead
Search (condition + insurance + brand)$1,800Compliant high-intent homeQualified lead → booked
Meta (broad local + generic conv.)$1,200Awareness & generic demandNew-patient source quality
YouTube / Demand Gen$500Broad local awarenessAssisted conversions
Tooling (Stape, call tracking, monitoring)$300Attribution backboneMatch rate / data quality
Emerging test (ChatGPT ads / AI Mode)$700Measured 60 to 90d test onlyTraceable bookings

Ramp to $8K once CAC holds <$150 blended and offline conversions are live. Marketing budget target = 8 to 12% of gross in growth mode. Don’t scale spend before attribution is closed-loop.

The non-media levers (often beat media)

Membership/care-plan conversion (3 to 5× LTV) and reactivation of existing patients are $0-CAC revenue. Front-desk speed-to-lead, missed-call recovery, no-show reduction, and care-plan close-rate can outperform any media optimization. Model these alongside ad spend, they’re the cheapest path to $1M.

930 / 60 / 90-Day Rollout

Attribution first, then channels, then scale. Measure before you ramp.

Days 0 to 30, Foundation & closed-loop attribution
  • Stand up attribution first: call tracking (CallRail/WhatConverts), server-side GTM @ tag.vanevery.com, GA4 + Consent Mode v2, Meta CAPI with redaction + event_id dedup. Build the daily ChiroHD reconciliation → offline conversion feed.
  • Apply for LSA + Google Screened (background checks take time, start day 1).
  • Complete GBP (every field, 20+ photos, services, seeded Q&A, appointment URL); launch the condition-named review script + reliable review-request automation.
  • Cutover the modern site (DNS) to activate schema/GEO; add text testimonial pages.
  • Launch: LSA + brand Search + a small broad-local Meta awareness set. Claims-review all copy.
Days 31 to 60, Intent & demand expansion
  • Condition-segmented Search (the compliant intent home) + insurance-angle keywords; seed bidding on Max Conversions.
  • Meta broad-local prospecting with KST-formula creative; collab reels with Dr. Saylor.
  • YouTube/Demand Gen broad awareness; launch membership funnel landing pages.
  • Start the monthly AI-search visibility monitoring loop; begin local digital-PR / third-party-mention outreach.
Days 61 to 90, Optimize, test the frontier, scale winners
  • Graduate Search to tCPA once volume supports it; layer offline-conversion stages (booked → showed → new-patient → care-plan).
  • Test PMax/AI Max (brand-excluded) to catch AI Mode placements; run the $500 to 1K ChatGPT-ads controlled test.
  • Full attribution dashboard live (source → revenue). Ramp budget to $8K only if blended CAC <$150.
  • Double down on review velocity + third-party mentions (the durable GEO + local moat).
What to measure (not just CPL)

New-patient source quality and incrementality (LSA/brand/PMax can cannibalize existing demand), call answer-rate & speed-to-lead, booked, to, showed rate, care-plan close-rate, and revenue-per-channel. CPL is a leading indicator; booked paying patients is the scoreboard.

10Adversarial Review Notes, What Codex Changed

This plan was built Opus ↔ Codex. Three GPT-5.5 adversarial passes at xhigh reasoning materially reshaped it.

Pass 1, targeting & compliance
  • Killed the centerpiece: condition-page remarketing audiences fail on platform policy, not HIPAA. Renaming the audience changes nothing.
  • New thesis: separate Measurement from Activation; condition intent belongs in Search, not retargeting.
  • Added the real ad-tech depth: event_id dedup, EMQ, the browser-pixel-defeats-redaction trap, LDU is not a health mode, staged bid optimization, tCPA volume thresholds.
  • Surfaced what was missing: legal/claims review, front-desk ops modeling, incrementality controls.
Pass 2, automation & AI-search
  • Corrected buy-vs-build: “fleet replaces GHL near-free” → build the brain, buy the reliability. Replacing GHL = becoming the vendor.
  • Named ChiroHD’s no-API as the architecture constraint; gave the offline-data extraction ladder.
  • Specified the reliable speed-to-lead & review-request architectures.
  • Disciplined the AI frontier: ChatGPT ads = $500 to 1K test, not a pivot; highest-leverage GEO = local authority + reviews + third-party mentions; llms.txt is near-zero ROI.
Pass 3, engagement-audience reconciliation

A targeted pass resolved a real conflict between two research findings: the policy research said on-platform video-engagement audiences survive Meta’s H&W restrictions (“most defensible warm audience”), while the Google/Meta playbook wanted per-condition YouTube remarketing lists. Codex drew the precise line (§5): neutrally-named Meta video-engagement audiences + lookalikes are defensible; Google condition-video remarketing is banned; anything named/segmented/seeded/messaged around a condition becomes health-derived targeting. This rescued VE’s 4.5M-view library as a usable asset instead of writing it off entirely.

Net effect: the strategy shifted from an aggressive pixel-remarketing engine to a Google-intent + local-authority + closed-loop-attribution engine, with Meta (incl. defensible video-engagement audiences), YouTube, and AI-search as disciplined supporting tests. The single highest-conviction add, offline conversion feedback, came directly out of the adversarial loop. On your pixel decision: the research supports the HIPAA half of it (AHA v. Becerra vacated the IP+unauthenticated-page-is-PHI rule, §3), but the binding operational constraint turned out to be ad-platform policy, not HIPAA, so the plan keeps the data-capture you approved while moving condition activation into the channels that permit it.

Method & sources: Opus 4.8 strategist; 3 × codex exec --model gpt-5.5 -c model_reasoning_effort=xhigh adversarial passes (text-only, no computer-use); 3 parallel WebSearch/WebFetch research agents. Key sources: OpenAI (ChatGPT ads); Search Engine Land/Journal (AI Overviews, Perplexity, Demand Gen); Princeton GEO study; Foley Hoag / LiveRamp / Freshpaint (Meta H&W rules); Google Ads policy + GA4 docs; FTC primary sources (GoodRx/BetterHelp/Cerebral/HBNR); Quarles/Goodwin (AHA v. Becerra, OCR); LeadGulls/BlueGrid/DigitalApplied (chiro LSA/Search/YouTube/Meta benchmarks); and VE internal research dossiers (channel CPLs, unit economics, GEO checklist). Benchmark figures are directional industry aggregates, not platform guarantees; verify before quoting as hard numbers, and obtain healthcare-marketing counsel before launch.