Weekly Cohort Funnel
Current week + last 2 weeks. Cohort matures over the 7-day trial — current week marked PENDING until full cycle closes.
| Stage | Count | Rate | Cost/event |
|---|---|---|---|
| New Visitors | 201 | — | — |
| Trial Attempts | 22 | 10.9% | $30 |
| Trials Activated | 7 | 31.8% | $97 |
| Paid Conversions | 2 | 28.6% | $339 |
| CC Declines | 4 | — | — |
| Stage | Count | Rate | Cost/event |
|---|---|---|---|
| New Visitors | 172 | — | — |
| Trial Attempts | 5 | 2.9% | $108 |
| Trials Activated | 4 | 80.0% | $135 |
| Paid Conversions | 1 | 25.0% | $541 |
| CC Declines | 5 | — | — |
| Stage | Count | Rate | Cost/event |
|---|---|---|---|
| New Visitors | 158 | — | — |
| Trial Attempts | 12 | 7.6% | $54 |
| Trials Activated | 5 | 41.7% | $131 |
| Paid Conversions | 0 | 0.0% | — |
| CC Declines | 4 | — | — |
Stages: visitors → trial attempts (CC entered) → trials activated → paid conversions. Rates show next-stage conversion. Cost-per-event = (30-day trailing ads spend) / (count). All-time benchmark rates (Apr-Jul 2025 peak): visitor→attempt 7.93%, attempt→trial 56.27%, trial→paid 28.38%, visitor→paid 1.27%.
Monthly Trajectory
Month-over-month rollup since marketing relaunch (2026-05-03). CAC trajectory + trial→paid rate trend.
| Month | Visitors | Attempts | Trials | Paid | Spend | CAC | Trial→Paid |
|---|---|---|---|---|---|---|---|
| May 2026 | 761 | 59 | 24 | 3 | $2,540 | $846 | 12.5% |
Cumulative averages (post-relaunch window)
Weekly Breakdown (since 5/3 relaunch)
Flat table view of every week since marketing relaunch — pair with the Funnel tab's cohort cards for at-a-glance scanning.
| Week | Visitors | Attempts | Trials | Paid | CC Declines | Spend | CAC | Trial→Paid |
|---|---|---|---|---|---|---|---|---|
| ✅ Apr 27–May 3 | 104 | 1 | 0 | 0 | 1 | $71 | — | — |
| ✅ May 4–May 10 | 235 | 19 | 8 | 0 | 0 | $591 | — | 0.0% |
| ✅ May 11–May 17 | 201 | 22 | 7 | 2 | 4 | $679 | $339 | 28.6% |
| 🟡 May 18–May 24 | 172 | 5 | 4 | 1 | 5 | $541 | $541 | 25.0% |
| 🟡 May 25–May 31 | 158 | 12 | 5 | 0 | 4 | $656 | — | 0.0% |
Channel Performance
Acquisition channel breakdown from GA4 (last 30 days). Once attribution finishes baking + HubSpot fields populate, this expands to per-channel CAC + payback.
Where our paid customers came from (since 5/3 relaunch)
Source of truth: HubSpot per-contact attribution (utm_source + hs_analytics_source). REAL channel data, not GA4 event counts.
| Paid Date | Customer | Channel | Campaign | Amount |
|---|---|---|---|---|
| 2026-05-13 | Bernard Jr Hird S | Paid Search | 2026-q2_skiptrace_services | $65 |
| 2026-05-17 | Aryeh Levin | Offline (no web attribution) | INTEGRATION | $65 |
| 2026-05-18 | Nathan Alonzo | Paid Search | 2026-q2_intent_tools | $65 |
All signups by channel (60 total since 5/3)
From HubSpot — every contact created since marketing relaunch, grouped by first-touch attribution source.
| Channel | Signups | Converted to Paid | Sample customers |
|---|---|---|---|
| Direct | 14 | 0 | ahmedelromy100, Ron, Berny +11 |
| Paid Search · 2026-q2_intent_tools | 11 | 1 | tia, Dewayne dewaynerobinson, matthewfowler234 +8 |
| UTM · google | 9 | 0 | Melvin Singleton, ReAnn, Aline Dias +6 |
| Paid Search · 2026-q2_skiptrace_services | 9 | 1 | waqasbloch066, Audrey D, bobbysbailbonds +6 |
| Organic Search | 9 | 0 | damian reichling, Chris Daniello, Boston +6 |
| Offline · INTEGRATION | 5 | 0 | tyoung0197, rene forbi, Aryeh Levin +2 |
| Offline · EMAIL_INTEGRATION | 1 | 0 | Bob B |
| Organic Search · Google referrer | 1 | 0 | Allison Pickens |
| UTM · chatgpt.com | 1 | 0 | Marco |
GA4 raw sessions/users/conversions (last 30d) — known inflated by bot traffic + cross-domain dupes
| Channel (GA4) | Sessions (30d) | Users | GA4 Conversions |
|---|---|---|---|
| Direct | 540 | 258 | 4.0 |
| Paid Search | 470 | 413 | 40.0 |
| Unassigned | 61 | 53 | 67.0 |
| Organic Search | 56 | 46 | 2.0 |
| Referral | 51 | 14 | 5.0 |
| 25 | 7 | 4.0 | |
| Cross-network | 12 | 12 | 0.0 |
| Organic Social | 12 | 12 | 0.0 |
| Paid Other | 2 | 1 | 0.0 |
⚠️ Don't trust these numbers for decisions. GA4 reports raw events including bot traffic (G11 deferred, ~25% non-US sessions), cross-domain duplicates (theinvestnest.com + app.theinvestnest.com may double-count), and the "Conversions" column counts ALL conversion events (trial + signup + purchase), not just paid customers. The HubSpot attribution tables ABOVE are the real picture.
Recent Signups + Activation
User-level activation view (was your Notes column, now first-class). Last 30 days, sorted newest first.
Recent signups (last 30 days) with activity from request_logs + has-paid-real-money cross-check against Stripe. Names from auth.first_name/last_name, fall back to email prefix if missing. The qualitative Notes column ("stopped at cc screen", etc.) lands via inbox-process skill + manual annotations layer. PostHog adds session replay when Cluster 3 ships.
| Signed Up | Name | Status | Events (30d) | Last Activity | |
|---|---|---|---|---|---|
| 2026-05-29 | melvin | melvin@allstarzandassociates.com | incomplete | — | — |
| 2026-05-29 | tia | tia@bluebonnethouses.com | incomplete | — | — |
| 2026-05-28 | hallr.crownstone | hallr.crownstone@gmail.com | trial | — | — |
| 2026-05-28 | bdiasaline | bdiasaline@gmail.com | trial | 1 | 2026-05-28 |
| 2026-05-28 | tyoung0197 | tyoung0197@gmail.com | incomplete | — | — |
| 2026-05-27 | rogerio.cardoso | rogerio.cardoso@nortonrealestate.com.br | trial | 100 | 2026-05-27 |
| 2026-05-26 | ozeelnour95 | ozeelnour95@icloud.com | incomplete | — | — |
| 2026-05-26 | oropezafranjavier | oropezafranjavier@gmail.com | incomplete | — | — |
| 2026-05-26 | a71pickens | a71pickens@gmail.com | trial | 606 | 2026-05-26 |
| 2026-05-26 | northsideproperties.co | northsideproperties.co@gmail.com | trial | 3 | 2026-05-26 |
| 2026-05-25 | jilliansellsemeraldcoast | jilliansellsemeraldcoast@gmail.com | incomplete | — | — |
| 2026-05-25 | ahmedelromy100 | ahmedelromy100@gmail.com | incomplete | — | — |
| 2026-05-24 | one | one@mediaral.com | trial | 1,679 | 2026-05-24 |
| 2026-05-20 | waqasbloch066 | waqasbloch066@gmail.com | incomplete | — | — |
| 2026-05-20 | coastland_trodden107 | coastland_trodden107@simplelogin.com | free | 102 | 2026-05-27 |
| 2026-05-19 | esokurenko+user_test27 | esokurenko+user_test27@waverleysoftware.com | free | 212 | 2026-05-19 |
| 2026-05-18 | damianreichling06 | damianreichling06@gmail.com | free | 156 | 2026-05-19 |
| 2026-05-16 | rdewayne56 | rdewayne56@gmail.com | incomplete | — | — |
| 2026-05-16 | propertysolutions61 | propertysolutions61@yahoo.com | free | 27 | 2026-05-16 |
| 2026-05-16 | highmarketpropertygroup | highmarketpropertygroup@yahoo.com | incomplete | — | — |
| 2026-05-16 | adee0983 | adee0983@gmail.com | free | 2 | 2026-05-16 |
| 2026-05-16 | matthewfowler234 | matthewfowler234@gmail.com | incomplete | — | — |
| 2026-05-15 | pmasalesgroup | pmasalesgroup@gmail.com | incomplete | — | — |
| 2026-05-15 | 1140cjd | 1140cjd@gmail.com | free | 299 | 2026-05-15 |
| 2026-05-15 | jlg5423 | jlg5423@gmail.com | incomplete | — | — |
| 2026-05-12 | melissa.monschke123 | melissa.monschke123@icloud.com | free | 175 | 2026-05-12 |
| 2026-05-12 | morrorobert195 | morrorobert195@gmail.com | incomplete | — | — |
| 2026-05-12 | monschke.melissa | monschke.melissa@gmail.com | incomplete | — | — |
| 2026-05-12 | monschke.melissa41 | monschke.melissa41@gmail.com | incomplete | — | — |
| 2026-05-12 | monschkemelissa42 | monschkemelissa42@gmail.com | incomplete | — | — |
| 2026-05-12 | bobbysbailbonds | bobbysbailbonds@gmail.com | incomplete | — | — |
| 2026-05-11 | arsheahboston09 | arsheahboston09@gmail.com | free | 51 | 2026-05-11 |
| 2026-05-11 | jefff2267 | jefff2267@gmail.com | incomplete | — | — |
| 2026-05-11 | jimmycork16 | jimmycork16@gmail.com | incomplete | — | — |
| 2026-05-11 | nathan.alonzo | nathan.alonzo@yahoo.com | premium 💰 paid | 396 | 2026-05-14 |
| 2026-05-11 | talkingcollegebaseball | talkingcollegebaseball@gmail.com | incomplete | — | — |
| 2026-05-11 | capably_postage407 | capably_postage407@simplelogin.com | free | 87 | 2026-05-19 |
| 2026-05-11 | sirofficial | sirofficial@mail.ru | incomplete | — | — |
| 2026-05-11 | txlnewlf | txlnewlf@gmail.com | incomplete | — | — |
| 2026-05-10 | rene.forbi44 | rene.forbi44@gmail.com | incomplete | — | — |
| 2026-05-09 | tanthonystewart | tanthonystewart@yahoo.com | incomplete | — | — |
| 2026-05-09 | wilmer.reynaldo.arredondo.zavala | wilmer.reynaldo.arredondo.zavala@gmail.com | incomplete | — | — |
| 2026-05-09 | paul | paul@30aluxurylistings.com | free | 2 | 2026-05-09 |
| 2026-05-08 | karenjhosff05 | karenjhosff05@gmail.com | incomplete | — | — |
| 2026-05-08 | driggs08 | driggs08@gmail.com | incomplete | — | — |
| 2026-05-08 | dannmartin5000 | dannmartin5000@gmail.com | incomplete | — | — |
| 2026-05-07 | dmikel0358 | dmikel0358@gmail.com | free | 101 | 2026-05-07 |
| 2026-05-07 | shawe6660 | shawe6660@gmail.com | free | 19 | 2026-05-07 |
| 2026-05-07 | nodegeist | nodegeist@gmail.com | incomplete | — | — |
| 2026-05-06 | atlantaassetrecovery | atlantaassetrecovery@gmail.com | premium 💰 paid | 102 | 2026-05-06 |
System Health
GHA cron status + integration credential health. Catches the "cron silently failed" pattern that surfaced 2026-05-25.
🚨 Reconciliation anomalies (cross-source drift detection)
| Severity | Category | Description |
|---|---|---|
| warning | attribution | GA4 reports 122 conversions in last 30d vs Stripe true new paid = 3 (ratio 40.7×). Gap is structural — GA4 'conversions' includes trial + signup + premium events; only Stripe true new paid is real money. Google Ads bidding optimizes against GA4 — verify Premium-only Primary vs Trial Activation Secondary per attribution-architecture-canonical §7. |
Anomalies surfaced by data_truth.py reconcile() — automatic cross-check between Stripe, Postgres, HubSpot. Empty = system in sync.
GHA cron health (last 50 runs grouped by workflow)
| Workflow | Latest status | Last run (UTC) | Next scheduled (UTC) |
|---|---|---|---|
| Business State Audit — weekly L2 check | success | 2026-05-28 14:37 | 2026-06-02 11:00 |
| Capability Synthesis — weekly L1 aggregator | success | 2026-05-27 16:01 | 2026-05-31 12:00 |
| Capability Watch — daily 4-stage scan | success | 2026-05-29 13:41 | 2026-05-31 10:30 |
| Customer Health Audit — weekly L2 per-customer check | success | 2026-05-28 14:55 | 2026-06-02 11:45 |
| Daily Report — TIN business state pull | success | 2026-05-30 10:44 | 2026-05-31 09:00 |
| DevOps Watchdog — daily loop self-audit | success | 2026-05-29 16:40 | 2026-05-30 13:00 |
| Funnel Dashboard — daily regenerate + deploy to Cloudflare Pages | in_progress | 2026-05-30 10:52 | 2026-05-31 09:15 |
| Marketing Channel Audit — weekly L2 check | success | 2026-05-28 14:45 | 2026-06-02 11:15 |
| Memory Mirror — sync stores to git daily | success ⚠️ 2/5 recent fails | 2026-05-29 12:48 | 2026-05-31 10:00 |
| OIDC Smoke Test (Anthropic Workload Identity Federation) | success ⚠️ 2/5 recent fails | 2026-05-28 00:45 | — |
| X Capability Watch — daily X.com watchlist scan | success | 2026-05-29 14:14 | 2026-05-30 11:15 |
Integration credentials (presence check — no values displayed per Standing Rule #6)
| Integration | Status |
|---|---|
| Stripe | ✅ Configured |
| ChartMogul | ✅ Configured |
| HubSpot | ✅ Configured |
| Intercom | ✅ Configured |
| Anthropic | ✅ Configured |
| Google Ads | ✅ Configured |
| GitHub | ✅ Configured |
| Postgres prod | ✅ Configured |
| Cloudflare | ✅ Configured |
| X / Twitter | ✅ Configured |
