The GoHighLevel Command Center
One page for the whole engine: the cleanup, the 2026 research, the live inventory, the audit, and now the fixes we've applied plus a new survey-tracking finding. GHL is our backend plumbing — the funnels live on Cloudflare, and Claude Code is now wired straight into GHL via API. Skim the headlines; open anything for depth.
We deleted the dead funnels and left the live plumbing untouched.
The old GHL Funnel Builder pages weren't in use — the real funnels are custom HTML on Cloudflare. We removed the four dead pages together, one at a time, and kept everything the live site actually depends on.
Deleted — dead pages
- ×Test LAS — a leftover test.
- ×HVAC Strategy Session (Booking Funnel) — superseded by the REV strategy calendars.
- ×HVAC War Room Live Event (Webinar Funnel) — the standalone page; the embedded webinar form is a separate object and stays.
- ×Local Authority Score (GHL version) — already replaced by Ethan's live Cloudflare quiz.
Kept — live & off-limits
- ✓The 5 REV strategy calendars (Chris, Anthony, Justin, Alexander, Round Robin) — embedded in the site.
- ✓All forms & pop-ups — market report, webinar, playbook, do-not-sell.
- ✓Pipelines + triggers + email/SMS sequences — the sales team runs on these.
- ✓myanchorworks.com email + branded-link domain, and las.myanchorworks.com.
The one link fix (handed to Ethan). The live quiz's two "Book Strategy Session" buttons pointed at an old test page (goanchorworks.com/strategy-session). We drafted & sent Ethan the fix: repoint both to myanchorworks.com/strategy-session/. Until it's live, that button lands people on the homepage — so it's mildly urgent.
The booking-domain decision. Personal booking links closers send from GHL will live on book.myanchorworks.com — one clean brand, better deliverability — instead of a second domain. goanchorworks.com stays owned but redirects.
How the best operators run GoHighLevel in 2026.
Deep research into the modern way to run GHL — as backend plumbing behind best-of-breed tools, paired with Claude Code. Tap a tab.
The shift
GHL leaned hard into AI (Conversation AI, Workflow AI, Voice AI) and tightened compliance. The big story for operators isn't features — it's that the rules for sending got stricter, and unregistered messaging now silently fails.
What it means for us
Legacy API v1 keys were retired Dec 31, 2025 — everything moves to Private Integration Tokens (v2). SMS without A2P registration is now blocked by carriers, not just throttled.
The pattern (it's ours)
Using GHL as a headless backend — custom funnels on Cloudflare, Clay for enrichment, Reply.io for outbound, and GHL only for CRM + automation + messaging — is a named, respected setup. You're already doing it.
The one rule
Every external funnel feeds GHL through an inbound webhook. On entry it must map UTMs, stamp a source tag, and carry email-or-phone (GHL requires one). That wire is the whole game.
Honest limit: the API/MCP cannot build workflows — automations stay a hands-in-GHL job. Don't plan to script them.
What's real
The official GHL MCP server works with Claude Code (per sub-account, scope-limited). It's a strong read-first audit & reporting co-pilot — pull contacts, opportunities, fields, and build dashboards off the data.
What's hype
It is not a rebuild tool. Treat AI-agent access as read-mostly; keep write scopes tight and rotate tokens ~every 90 days.
Tags vs fields
Tags = temporary state. Custom fields = permanent facts. Kill duplicate tags, pick one naming convention, and never encode a permanent trait as a tag.
Workflows & pipelines
Name with department prefixes, version workflows instead of editing live ones, and snapshot before any deletion. Fewer, clearer pipelines beat many overlapping ones.
Needs SPF + DKIM + DMARC (aligned) on a dedicated sending subdomain. Mandatory since Feb 2024; since late 2025 unauthenticated mail is rejected, not delayed. Keep spam complaints under 0.3%.
SMS
A2P 10DLC = the carrier registration that lets business texts through. Without a registered Brand + Campaign, carriers block 100% of your texts. Needs a consent checkbox and a working STOP.
The headline: our headless setup is legit. The work isn't a rebuild — it's guarding the one webhook wire and passing the deliverability gates.
What's actually inside the account, counted live.
One agency, one sub-account (AnchorWorks · Miami). Everything below was read straight from the live account on Jul 9.
Two, both on Cloudflare
myanchorworks.com — email sending + branded-link domain (lc.). Keep.
goanchorworks.com — the old test domain; being retired to a redirect once Ethan's link fix ships. The live site never depended on it.
Consolidated to the real engine
Demand → Conversion (SDR) → Revenue (AE) is the flow. The two strays — "Sales Pipeline" (default) and "LAS HVAC Funnel" (legacy) — were deleted, and the missing Client Success pipeline was built (5 stages, no-lost-deals "Nurture (Paused)" instead of a Lost bucket). ✅
Hyper-critical — but fair. Strong bones, a few loose ends.
Climbing. Today we consolidated the pipelines, built Client Success, confirmed deliverability, and fixed the tag typo — the heavy levers. That moved it B+ → A−. What still stands between here and a clean A: the launch-gated P1s (webhook test + clearing test data), the tag naming pass (queued for the API), and the new survey-tracking gap in the next chapter.
What's genuinely good (don't touch)
SMS ready
A2P 10DLC compliant & verified — the #1 silent killer, already handled.
Email domain
Dedicated sending domain set up and listed clean.
Attribution
Full UTM + gclid + fbclid capture. You'll know where every lead came from.
Custom fields
94 fields, 10 folders, structured Leads→Sales→Scale scoring.
Security
Modern API v2 tokens; the KPI dashboard token is read-only.
Naming system
Workflows use real department prefixes (DEM / LAS / OPS / REV).
The findings — ranked, tap to open
The live quiz posts to a GHL inbound webhook, and the LAS — Master Intake workflow maps it into contacts. The repo showed slightly different field names than the GHL fields — if the mapping is off, quiz answers land nowhere with no error.
las.myanchorworks.com, open that contact, confirm every field populated — before spending a dollar on traffic.Everything in the account is test data. Harmless now — but the moment real leads arrive, test records poison your reporting (fake conversion rates, inflated counts).
GHL sets DKIM + return-path on the sending subdomain, but DMARC lives on the root domain. Since 2024 (hard-enforced late 2025), Gmail/Yahoo reject unauthenticated bulk mail.
_dmarc.myanchorworks.com exists (p=none, reports to Chris); SPF on lc. includes Mailgun + LeadConnect; DKIM active in GHL. Only future tweak: move DMARC to p=quarantine after a couple weeks of monitoring.Was 5 pipelines with 2 redundant, and no Client Success despite you expecting one.
24 tags, three naming styles, a typo (memember), and overlapping LAS staging schemes.
✅ Done: fixed the typo (→ "new community member"); confirmed the LAS Archetype field already exists (the doctrine "trait = field, not tag" is structurally in place).
snake_case — tags, field keys, and event names one style (matches the tracking layer). The ~15 renames + retiring the redundant archetype/stale tags are queued for the GHL API (LeadConnector MCP) after a Claude Code restart — far cleaner than the browser UI.5 users; 3 are AGENCY-ADMIN (full access to everything incl. billing). Owner + tech lead make sense; review whether everyone else needs agency-level vs account-admin. Also: two closers with calendars (Justin Laird, Alexander Dragomer) aren't users yet.
Every question — even if they don't finish. Right now we track none of it.
You asked whether we capture each LAS survey answer (and completion), even for people who bail. I read the live quiz + the KPI repo — short answer: no. Everything fires once, at the very end.
The lead leak: if someone types their name, email & phone and then abandons mid-quiz, we get nothing — not the contact, not a single answer.
Today — one dump at the end
- ×One webhook, fired only on the results page.
- ×Contact info read at the end — abandoners send nothing.
- ×No per-question, start, or partial events.
- ×Zero analytics on the quiz — no GA4, GTM, Pixel, dataLayer.
What we want — progressive capture
- ✓Capture the lead on the first form's submit.
- ✓Send each answer as they go (partial captured).
- ✓
quiz_started/question_answered/quiz_completedevents. - ✓GTM + GA4 (+ Pixel) installed so it all lands.
The fix — who owns what
Instrument the quiz
Fire the lead on form-1, send each answer, add start/complete events. Task 1 (form-1 capture) stops the leak.
Install GTM + GA4
On the site + las. subdomain; create the Meta Pixel. Reconcile with the GHL tracker so page-views don't double-count.
Add GHL fields
las_completed + las_last_question_reached so partial POSTs have somewhere to land. Queued for after restart.
Store the events
A Supabase las_events table for per-question + completion, fed from GA4.
TRACKING-TODO.md
Email drafted → ethan@
Field keys stay snake_case
The checklist to clear before your first real lead.
Work straight down this list. Green = done in this session.
- Dead GHL funnels removed done
- Booking domain chosen — book.myanchorworks.com done
- DMARC / SPF / DKIM confirmed on myanchorworks.com done
- Pipelines consolidated; Client Success pipeline built done
- Ethan repoints the LAS "Book Strategy Session" link → verify live
- Progressive survey tracking shipped — every question + partials captured P1
- Live test submission through the quiz → data confirmed landing on the contact P1
- All test contacts + opportunities cleared P1
- Tag naming standardized to
snake_case; redundant archetype/stale tags retired via API las_completed+las_last_question_reachedfields created via API- book.myanchorworks.com stood up & closer calendars republished there
Every source doc behind this page.
This page is the summary. The full write-ups live next to it in the Automations bench.
The Checklist
The running to-do list — every phase, checked off as we went.
Open MarkdownBest Practices 2026
The deep research brief — plain-language, sourced, with an audit checklist.
Open MarkdownThe Inventory
Live account state + every keep/delete decision + the domain strategy.
Open MarkdownThe Audit
Every finding ranked P1/P2/P3 with a plain-language what & why & fix.
Open MarkdownThe Repo Study
What we learned studying the Brain, Website, LAS & Briefing Room repos.
Open Markdown · newSurvey Tracking Review
The lead-leak finding in full — what fires today, the gaps, and the fix plan.
Open Markdown · newEthan — LAS Tracking Spec
The hand-off task list for the quiz instrumentation (also pushed to the LAS repo).
Open