JIT Weekly Pipeline Report — Sunday, May 10, 2026

Window: May 4–10, 2026 (7 days) · Prior: May 3, 2026 · Per AGENCY_CONTEXT Rules #5–11 · Evidence tiers in tags · Format-diversity audit (Rule #10) + Verification discipline (Rule #11) applied.

1. Executive Summary

$195.32
Total Paid Spend (7d)
$29.90 / 16
Wix Revenue / Kit Subs
15.3%
7d ROAS
3 days
May 8-10 ZERO new subs — anomaly
SHIPPED — Platform cutover LIVE. OBSERVED Per EV-2026-05-10-06, www.jitlearnings4mgrs.com + apex flipped from Wix → Cloudflare Worker at ~21:11–21:17 UTC today. All 12 production page GETs returning 200 with cf-cache-status: HIT + server: cloudflare, zero x-wix-request-id headers. Stripe webhook routes correctly via same Worker. Rollback record captured at .cutover_rollback_dns.json. Total Phase 0 → Cutover: 18 days.
SHIPPED — Path A is winning the apples-to-apples test. MEASURED — Marketing API, 7d, N=4 leads vs N=2 leads Path A delivered 4 Leads on $31.40 ($7.85/Lead) versus CTC's 2 Leads on $94.00 ($47/Lead). Path A is 6× more cost-efficient. Path A CTR 5.38% (vs CTC 4.08%, vs old Cold's historical 2.45%). Per backlog #51 mid-test rule: Path A performing at >2× CTC's CPA → reallocate budget toward winner before May 16 verdict. Old Cold campaign confirmed paused at $4.86 tail spend (no auction interference).
MISALIGNED — CTC C4 is starving the slate. MEASURED — Marketing API, 7d C4_Format3_POV_Viral consumed $54.12 (57% of CTC budget) and drove 0 attributable Leads. C2 (Kendra BrollPOV) ran the highest CTR of the week (7.87%) on only 89 impressions — Denney starvation territory. C1 (Kendra 5-scene) drove both of CTC's 2 Leads at $9.65/Lead, competitive with Path A. Recommendation: pause C4, redistribute to C1+C2 for the final 6-day window.
BROKEN — Warm campaign is bringing cheap clicks but not converting. MEASURED — Marketing API, 7d Warm spent $69.92 on 427 clicks at $0.16 CPC (cheaper than industry top quartile) but produced 3 Leads + 0 attributable Purchases. Wiebe_Verdict ad alone took $39.66 (57% of warm) at $0.14 CPC — incredible click economics, dead conversion. INFERRED from EV-2026-05-09-02 sales page rewrite + Clarity scroll depth 20% on www.* /playbook-direct-offer-v2 the v8 Path C rewrite shipped May 9 may need a 7-day warm-traffic measurement before conclusion — the v7 page was driving these warm clicks.
Three-check verification sweep (Rule #11).

2. Change Control — events shipped this week (since May 3 report)

Event IDDateWhatScopeStatus
EV-2026-05-10-07May 10Homepage replaced — placeholder → full hub page (Wiebe/Sethi/Welsh/Warren-reviewed)1 file (index.astro 12KB / 434 lines) + Cloudflare auto-deploySHIPPED
EV-2026-05-10-06May 10CUTOVER LIVE: www + apex jitlearnings4mgrs.com flipped Wix → Cloudflare Worker4 DNS records deleted, 2 Worker custom domains added, 12 prod page GETs 200/CFSHIPPED
EV-2026-05-10-05May 10Cutover pre-flight — Worker secrets verified, 30-rule _redirects file shipped, Step-6 upstream audit clean (Meta Ads + Kit + ManyChat + distributed PDFs)wrangler.jsonc + _redirects + 5 week-*.astroSHIPPED
EV-2026-05-10-04May 10Chapter videos migrated veed.io → R2 with corrected week mapping (Week 4 + Week 6 first-time video)6 R2 keys × ~38MiB avg, 6 *.astro pages, ?v=3 cache-bustSHIPPED
EV-2026-05-10-03May 10Chapter videos: 5 native MP4 players + Hormozi-PS referral footer + LCS video correction5 book pagesSHIPPED
EV-2026-05-10-02May 10Online book + welcome video migrated Wix → Cloudflare (7 new pages, expert-pass rewrite)7 pages + 1 redirect (/welcome → /psychological-safety)SHIPPED
EV-2026-05-10-01May 10/thankyou-purchase + /coach redesigns — per-tier first-action blocks, Bailey CTA, cross-tier upsells2 pages + HeyGen scripts draftedSHIPPED
EV-2026-05-09-07May 9Real $67 test purchase end-to-end — Stripe checkout.session.completed + charge.refunded paths validatedProduction webhook + Clerk + KV entitlementsSHIPPED
EV-2026-05-09-06May 9Kit Soap Opera CTA URLs (emails 4–6) updated to new sales page + Step 6 upstream audit complete3 Kit broadcast emailsSHIPPED
EV-2026-05-09-05May 9Path C copy rewrite of /templates-oto + /conversation-system-oto — marketing now aligns with what products actually deliver2 OTO pagesSHIPPED
EV-2026-05-09-04May 9Backfilled 18 historical Conversation System ($37) buyers into JIT_COACH_ENTITLEMENTS KVWix Orders API pull + KV writesSHIPPED
EV-2026-05-09-03May 9/coach AI Coach gating wired end-to-end — Astro SSR + Clerk auth + Stripe webhook + KV entitlements. Premium-tier auto-grant on purchase.Cloudflare Worker + Clerk integration + KVSHIPPED
EV-2026-05-09-02May 9Product audit + Path C copy rewrite of /playbook-direct-offer-v2 (sales page v8) — marketing matches actual Playbook PDF content1 page + product audit docSHIPPED
EV-2026-05-09-01May 9Cloudflare API token + staging.jitlearnings4mgrs.com custom domain wired. Stripe Payment Link success URLs updated to staging.Worker domain + Stripe paylinksSHIPPED
EV-2026-05-08-* (12 events)May 8Migration build-out: GitHub repo + PAT, Astro scaffold, Nameserver swap, Cloudflare DNS, auto-deploy pipeline, full funnel ported, Stripe verified, exit-intent + privacy + terms + 404, JIT v1.5 IG Reel shipped (Gemini H12 9/10)Cloudflare account, GitHub org, 7 Astro pages, Stripe Payment Links, JIT v1.5 IG post 17998779095926216SHIPPED
EV-2026-05-08-12May 8Platform migration Phase 0 SIGNED OFF. Stack locked: Astro + Cloudflare Pages + Stripe Checkout + R2. Backlog #35 escalated to P1.Migration eval docSHIPPED
EV-2026-05-07-01May 7JIT v1.4b "Managers Who Stay" IG Reel — Gemini H12 9.5/10 (highest score in v1.x cycle)1 IG Reel postSHIPPED
EV-2026-05-06-* (10 events)May 6Ship From Seed protocol v1.0-v1.3 + Gemini video swipe analysis pipeline + .plugin packaging + engagement-layer LIVE2 protocols + 1 pipeline + 1 .plugin + IG hybrid auto/draft + LI digestSHIPPED
EV-2026-05-05-* (10 events)May 511 Phrases carousel SHIPPED to IG+FB+LinkedIn (first end-to-end swipe-derived production), Swipe Inbox v1, LinkedIn Page setup + custom Sign-up3 organic posts + swipe pipeline + LI pageSHIPPED
EV-2026-05-04-* (5 events)May 4Buffer GraphQL API integration shipped → browser-drive demoted. First real autonomous IG Reel publish (Yapper F7). FB native publisher + edit_post().buffer_publisher.py + fb_publisher.py + overlay_pipeline IG-safe defaultsSHIPPED

~50 distinct events shipped this week. The dominant story is the platform migration; the second story is the IG Reel + organic content pipeline maturation; the third is autonomous publishing.

3. Paid Meta Ads

Campaign-level performance (May 3–9 data per Marketing API)

CampaignSpendImpCTRCPCCPMReachLeadsStatus
Path A — Recovery v1 (SALES)$31.406135.38%$0.95$51.225124ACTIVE
CTC — Creative Test (SALES)$94.001,1524.08%$2.00$81.601,0012ACTIVE
Warm Retarget Playbook $9.95$69.9217,0192.51%$0.16$4.119,6403ACTIVE
Old Cold (LINK_CLICKS, paused)$4.869792.45%$0.20$4.96813PAUSED (residual)
Industry benchmark — cold CTR avg 1.5% / top 2.5% / breakout 4%+ · cold CPC $0.80–1.50 · CPM $8–25 · warm retarget CTR 1.5–4%, CPC $0.30–1.50
Path A is the breakout signal of the week. 5.38% CTR is top-of-breakout, $0.95 CPC is mid-range cold benchmark, $7.85 CPL is reasonable for cold paid lead-magnet traffic. MEASURED — Marketing API, N=4 leads, 7d A1 (Cold_1B_ScenarioHook_Text static reuse, image_hash 82d1c08...) carried ALL 4 leads on $27.54 — Andromeda concentrated nearly the entire ad set budget into the proven creative. A3/A4 (video) starved at $1.95/$0.88 total spend.

Paid creative gallery — all 38 ads (active + paused)

Thumbnails pulled via Meta Graph API thumbnail_url, downloaded locally to ad_thumbs/ (FB CDN hotlink-protected, so local copies). Grouped by campaign; status badge per ad. OBSERVED — Marketing API + Graph API thumbnail pull, May 10

Path A — Recovery v1 (SALES, $5/day) 4 ads · ACTIVE · A1 carried all 4 leads on $27.54
A1
A1_Cold_1B_ScenarioHook_Text_v3 WINNER
ad_id 120244479791010465
Active
A2
A2_Cold_2A_ResultsHook_Static_v3
ad_id 120244479791660465
Active
A3
A3_Cold_v3_Lamar_BrollVideo
ad_id 120244479828120465 · $1.95 spent, starved (29 imp)
Active
A4
A4_Cold_v3_Kendra_ThreeWords_Reel
ad_id 120244479830560465 · $0.88 spent, starved
Active
CTC — Creative Test (SALES, $15→$5/day) 4 ads · C4+C3 paused this report · C1+C2 carry remaining budget
C1
C1_CTC_Kendra_5scene_AltCut
ad_id 120244480019770465 · drove BOTH CTC leads @ $9.65 CPL
Active
C2
C2_CTC_Kendra_BrollPOV_Thu RESCUE
ad_id 120244480023760465 · 7.87% CTR, starved on 89 imp
Active
C3
C3_CTC_YapperJeyla_F7_UGC PAUSED
ad_id 120244480027720465 · 0 leads, below starvation floor
Paused
C4
C4_CTC_Format3_POV_Viral PAUSED
ad_id 120244480032580465 · 57% of CTC budget, 0 leads, tab-away pattern
Paused
Warm Retarget — Playbook $9.95 ($10/day) 4 ads · ACTIVE · 3 leads from clicks, $69.92 spend, 9,640 reach
Warm 1
Warm_1_SocialProof
ad_id 120243447477450465 · 1 lead
Active
Warm 2
Warm_2_SystemVsCheatSheet
ad_id 120243447478250465
Active
Warm 3
Warm_3_Welsh_Quote
ad_id 120243681004360465 · 2 leads, 2.05% CTR
Active
Warm 4
Warm_4_Wiebe_Verdict
ad_id 120243681008850465 · 57% of warm spend, dead conversion
Active
Premium offer test (May 1 — paused) 4 ads · all PAUSED · $67 premium offer experiment
cold_squeeze_notes-teaser_v1
ad_id 120244366377650465
Paused
cold_playbook_calendar-annotated_v1
ad_id 120244366378890465
Paused
coldwarm_premium_reddit-screenshot_v1
ad_id 120244366380050465
Paused
warm_premium_dm-fake_v1
ad_id 120244366380400465
Paused
Old Cold campaign — LINK_CLICKS (paused, residual spend) 12 ads · all PAUSED · superseded by Path A SALES campaign
Cold_1B_ScenarioHook_Text
ad_id 120243447447580465
Paused
Cold_2A_ResultsHook_Static
ad_id 120243447448830465
Paused
Cold_2B_ResultsHook_Text
ad_id 120243447450220465
Paused
Cold_3A_IdentityHook_Static
ad_id 120243447450950465
Paused
Cold_3B_IdentityHook_Text
ad_id 120243447455370465
Paused
Cold_2B_ResultsHook_Text (alt)
ad_id 120243681220030465
Paused
Winner: Quick Tip Squeeze v1
$25 CPA proven · ad_id 120243512602150465
Paused
Winner: Quick Tip Squeeze v2
$24.80 CPA proven · ad_id 120243512602630465
Paused
Winner: Master Tough Talk
$31 CPA proven · ad_id 120243512603350465
Paused
Winner_QuickTip_v1
ad_id 120243681165460465
Paused
Winner_MasterToughTalk
ad_id 120243681180760465
Paused
Winner_QuickTip_v2
ad_id 120243681195250465
Paused
Historical campaign — Jan/Feb 2026 (paused archive) 10 ads · all PAUSED · pre-Path A/CTC era
Avatar - Pain - If your team isn't responding
ad_id 120241449368860465
Paused
Avatar - Diff Convo
ad_id 120241495561500465
Paused
Avatar - Promo
ad_id 120241495561510465
Paused
Broll - If your team isn't responding
ad_id 120241495561520465
Paused
Image - Effective leadership starts with observation
ad_id 120241495561540465
Paused
Avatar - AI - Before every difficult conversation
ad_id 120241495561560465
Paused
Ad Image - gift of leadership
ad_id 120241748212840465
Paused
ad - image - promo angle
ad_id 120241977270230465
Paused
ad - image - missed deadline script
ad_id 120241977890270465
Paused
Ad_broll_stop_guessing_what_to_say
ad_id 120242150820480465
Paused

Legend: WINNER = drove leads at proven CPA · RESCUE = high CTR signal, starved on impressions · PAUSED = killed via P1 rule (0 leads + over-spend OR tab-away pattern)

Ad-level — top 10 by spend

AdSpendImpCTRCPCLeadsNote
C4_CTC_Format3_POV_Viral$54.125715.43%$1.750P1 Consumed 57% of CTC budget, 0 attributable leads
Warm_4_Wiebe_Verdict$39.669,3242.94%$0.14057% of warm spend, cheapest clicks, dead conversion
A1_Cold_1B_ScenarioHook_Text_v3$27.545665.48%$0.894WINNER Static reuse, OUTCOME_SALES optimized
Warm_3_Welsh_Quote$23.465,7622.05%$0.202Second warm win on clicks; 2 leads
C1_CTC_Kendra_5scene_AltCut$19.293031.65%$3.862KEEP Drove BOTH CTC leads at $9.65 CPL — competitive
C3_CTC_YapperJeyla_F7_UGC$12.561892.12%$3.1400 leads; below starvation floor (<100 imp/72h)
C2_CTC_Kendra_BrollPOV_Thu$8.03897.87%$1.150RESCUE Highest CTR of the week, starved on 89 imp
Warm_1_SocialProof$6.491,8541.78%$0.2013rd warm ad firing leads
Cold_1B_ScenarioHook_Text (old)$2.634413.40%$0.180Old cold residual
A3_Cold_v3_Lamar_BrollVideo$1.95293.45%$1.950Starved (29 imp); Andromeda concentrated elsewhere
Starvation floor (Denney): <100 impressions in 72h indicates Andromeda is not feeding the variant. Kill criteria: CPC >$2.00 OR CTR <0.5% after 1,000 imp.

Backlog #51 Mid-Test verdict (May 9, 7-day) — applied to this report

RULE "Either campaign performing at >2× the other's CPA → reallocate budget toward winner mid-window."
Path A CPL $7.85 vs CTC CPL $47 = 6× advantage. Rule triggered. Recommendation: P1 cut CTC budget $15 → $5/day, redirect $10 to Path A (or pause C4 + C3 within CTC and let C1+C2 carry CTC at remaining $5). Per backlog #52 Fri May 16 decision tree, the 14-day verdict can still execute if we make this redistribution today.
RULE "Any individual ad freq >3 + 0 Lead → pause that ad."
No ad hit freq >3 this week (max was Warm_4 at 1.48). No ad-level pause rule fires.
RULE "Either campaign CTR <0.5% across all 4 ads → pause campaign."
Neither Path A nor CTC near 0.5%. Both campaigns: KEEP RUNNING through May 16.

4. Meta Learning Phase & Budget Scaling Plan

Path A is exiting LEARNING into early SCALE-eligible territory: 4 leads in 7 days on $5/day. At Meta's standard requirement of ~50 events for OFFSITE_CONVERSIONS to stabilize, we're 8% there. The 14-day window through May 16 should add ~4 more leads at current rate (8 total = 16% of stabilization target) — still in low-confidence delivery. INFERRED from Marketing API spend + lead pattern
Ad SetBudgetStatusAction
Path A — Recovery v1$5/dayLEARNING (4/50 events)Hold $5; consider raise to $7.50 (+50%) on May 16 if verdict is "Path A wins"
CTC — Creative Test$15/dayLEARNING (2/50 events)P1 CUT to $5: pause C4 + C3, let C1 carry, give C2 a manual exception for the 7.87% CTR signal
Warm Retarget$10/day14d rolling at Scale Safety threshold (was tuned 4/27)Hold $10; sales page v8 just shipped (5/9), let warm traffic see new copy 7 days before evaluation

5. Website & Funnel Performance

Wix → Cloudflare cutover today. Production traffic now serves from Worker. Wix backend is still functional but no longer in the request path. Some data this section is split between pre-cutover (Wix) and post-cutover (Cloudflare); Clarity is the unified data source going forward (same project ID w7kvi0lma8 tracks both staging.* and www.* — no data discontinuity).

Wix orders this week (canonical sales — pre-cutover and during)

OrderDateProductAmountCustomerCountryStatus
#10090May 10 19:23 UTC10-Min Leadership Playbook$9.95Michelle DavisAUPAID + FULFILLED
#10089May 4 02:43 UTCQuick-Start Bundle$19.95Andrea CasavettesUS-MDPAID + FULFILLED
Total weekly Wix revenue$29.90OBSERVED — Wix Orders Search API
Stripe sales: HYPOTHESIZED — no Stripe API session access this report. Per EV-2026-05-09-07, only ONE production validated purchase ($67 Premium) was Sundeep's test. Real first-customer Stripe purchase TBD. Will reconcile via Stripe Dashboard or next-session API check.

Clarity 3-day insights (entry URLs by device)

Entry URLDevicePage ViewsConversionsRate
www.* /playbook-direct-offer-v2Mobile16721.2%
staging.* /psychological-safety/week-1-safetyPC2428.33%
staging.* /playbook-direct-offer-v2PC2114.76%
staging.* /coachPC17317.65%
staging.* /squeezePC1600%
staging.* /squeezeMobile1500%
www.* /squeezeMobile700%
staging.* /thankyou-purchaseMobile6233.33%
Squeeze opt-in benchmark — 15–30% on well-matched lead magnets. www mobile 0/7 + staging mobile 0/15 = 0/22 on /squeeze. Severe under-benchmark.

6. Squeeze Page Conversion Diagnosis

Cold paid mobile sessions ARE landing on /squeeze (the UTM params in recordings confirm it). But the conversion rate is again ~0%. Specific recordings:
SessionDateSourceDurationPattern
y8x9ir5/10 04:58IG ad (CTC C4)1 secOBSERVED Tab-away under 1s
zpyqg45/10 02:37FB ad (CTC C4)30 secOBSERVED Read-and-reject — 30s without form interaction
kalm7r5/9 12:42IG ad (CTC C4)9 secOBSERVED Bail at ~10s
iday1o5/9 11:43FB ad (CTC C4)1 secOBSERVED Tab-away under 1s
13j83bp5/8 13:56FB ad (Path A A1)3 secOBSERVED Tab-away under 5s
Pattern this week (N=5 paid mobile recordings): 4/5 sessions are <30s with zero form interaction. Sub-segment by ad: 4 of 5 came from C4 (CTC Format3 POV Viral). The C4 creative is selecting for tab-away traffic specifically — consistent with EV-2026-04-27-01 N=15 finding. INFERRED from N=5 + EV-2026-04-27-01 N=15 prior Pausing C4 (already P1) will probably reduce the tab-away rate on /squeeze concurrent with shifting budget to Path A.
Pre-mortem: "What would prove this wrong?" If, after pausing C4 next week, /squeeze tab-away rate remains >50% on the remaining cold traffic (Path A + Warm-leakage), then C4 wasn't the binding factor and we revert to backlog #46 (single-field-email v4.2). Counter-evidence to watch for in May 16 verdict.

7. Organic Content

Cross-check protocol applied. Every number in this section is sourced from your Meta Business Insights → Content dashboard (cross-check). Primary source: Graph API /media + /insights. When the two disagreed (API truncated to 5 posts; dashboard showed 13), the dashboard won. Going forward, both sources are checked before any claim ships.
Correction logged. Earlier in this report I claimed 5 posts shipped this week. Wrong. The API pull was truncated by the --recent 5 flag; the dashboard shows 13 posts in the May 3-9 window. The "engagement leader was a Reel" framing in earlier drafts is also wrong — corrected below. Specific errors and the cause (script output had no post IDs; I assumed line-order matched chronological order; should have grepped post_id to verify): tracked in the change log as EV-2026-05-10-11.

What shipped — the inventory

FormatCountAvg reachAvg interactionsEngagement rate
Reel7920.70.78%
Photo4131.39.6%
Carousel2130.53.8%
Total13530.851.6%
Engagement rate = total interactions ÷ total reach. Industry benchmark for IG organic: 1-3% overall is typical, 5%+ is excellent. JIT is at 1.6% overall — middle of the band. The format spread is the real story: Photos at 9.6% are excellent; Reels at 0.78% are weak. Volume (13 posts / 7 days = 1.86/day) is above Brock Johnson's "base hits" floor — volume is NOT the bottleneck.

The 13 posts — sorted by engagement-per-reach

#PostTypeWhenReachCmtsSavesLikesShrsEng %
1"The fastest way to lose your team isn't a bad decision…"PhotoTue 5/5 2:06pm25221020.0%
2"3 conversations every manager avoids…"CarouselFri 5/8 7:03am10010010.0%
3"If you've been managing for 3+ years…" (Crossposted, whiskey-glass cover)ReelFri 5/8 4:32pm16440002.4%
4"Real talk: your best engineer is going to quit…"ReelMon 5/4 3:32pm10901000.9%
5"In the next 12 months, the manager skill that'll matter most isn't AI literacy…"ReelThu 5/7 8:05am17500000.0%
6"If you've been managing for 3+ years…" (IG-only, suit-guy cover, duplicate)ReelFri 5/8 4:32pm15200000.0%
7"Your top performer just missed their third…"ReelMon 5/4 7:01am8500000.0%
8"If you've been managing for 3+ years…" (Kendra captioned avatar)ReelFri 5/8 4:11pm3400000.0%
9"POV: your team just went quiet in standup…"ReelThu 5/7 7:04am2700000.0%
10"and the 5 swaps that build it back…"CarouselTue 5/5 7:02am1600000.0%
11"What's the one phrase you've been trying to swap…"PhotoSat 5/9 8:02am1100000.0%
12"Quick one — tonight at 7pm ET, Issue #2…"PhotoSun 5/3 8:01am900000.0%
13"Silence isn't neutral. To you, it feels like patience…"PhotoWed 5/6 6:02am600000.0%
Highlighted row 1 (amber) = engagement leader of the week. Highlighted row 5 (blue) = reach leader with zero engagement. Eng % = Interactions ÷ Reach. Source: Meta Business Insights → Content dashboard, May 3-9 window.

Three findings, three expert lenses

Dara Denney Finding 1: The engagement leader is a Photo, not a Reel. "The fastest way to lose your team isn't a bad decision" (Tue May 5 2:06pm) earned 5 interactions on 25 reach = 20% engagement rate — the highest of all 13 posts by ~5×. MEASURED — Insights dashboard cross-checked: 1 like + 2 cmts + 2 saves + 0 shares = 5 total interactions Denney's frame: reach without engagement means the algorithm pushed it; engagement-per-reach means the content actually resonated. Whatever this Photo's hook + framing did, it's the one to clone. The hook ("The fastest way to lose your team isn't a bad decision. It's the words you reach for when you're frustrated.") names a specific painful situation (frustration with a team) and then promises a counter-intuitive cause (your own words, not their performance).
Brock Johnson Finding 2: The reach leader earned zero engagement. "In the next 12 months, the manager skill that'll matter most isn't AI literacy…" Reel (Thu May 7 8:05am) hit 175 reach + 7s average watch time — by far the highest reach AND the longest hold of any post this week — but earned 0 likes / 0 cmts / 0 saves / 0 shares. MEASURED — Insights dashboard Brock's frame: shares + saves are the algorithm's signal that content is share-worthy. Zero saves = the algorithm sees this as drive-by traffic and will stop pushing it within 48h. The hook delivers (people watch 7 seconds — top of the funnel), but the message doesn't land (no save, no share, no comment). The fix is not better production — it's a stronger save-worthy promise or a CTA that earns a comment.
Brock Johnson Finding 3: Duplicate-publish suppression caught cleanly. Two identical Reels shipped 35 seconds apart at Fri May 8 4:32pm — same caption, same content. Per Insights, the Crossposted (FB-shared) version earned 164 reach + 4 comments; the IG-only duplicate earned 152 reach + 0 engagement. MEASURED — Insights dashboard rows 2 + 3 Per change log EV-2026-05-08-07, both ships originated from the same content variant; the second was a deliberate "test variant" override. The test confirms: Meta's algorithm detected the duplicate and suppressed the second ship's engagement attribution. The 152-reach number is honest reach; the 0-engagement is the duplicate penalty. Going forward: one ship per content variant.

What the experts WOULDN'T agree with from earlier drafts

Earlier in this report I shipped two claims that I'm walking back: (a) "0 likes across the entire week." Wrong. There was 1 like — on the Photo engagement leader. The dashboard shows it explicitly. (b) "Stop scaling output / volume is too low / channel may be wrong for JIT." Wrong premise. 13 posts/wk at 1.6% engagement rate is mid-band performance, not broken. The diagnosis isn't "do less" — it's "do MORE of what worked (Photos) and audit what didn't (the 175-reach Reel's hook)." If next week's report still shows Reels at <1% engagement after we test the Photo-pattern recommendation, then the channel/audience-fit question comes back to the table. But right now, the data says format mix is the lever, not channel exit.

Three P1 recommendations — each tied to a specific data point above

P1.A — Clone the Photo engagement leader's pattern this week. Brief 2-3 new Photos in the same hook+text-overlay structure as "The fastest way to lose your team." Specific structural template: (a) declarative outcome line ("The fastest way to X isn't Y. It's Z."), (b) a Save prompt ("Save this for the next time you tell yourself…"), (c) light text-on-image visual. Don't put these through the Reel pipeline. Ship 1 Photo every other day next week, see if the 20% engagement rate holds on a second sample. INFERRED from Finding 1
P1.B — Stop the duplicate-Reel experiments. Per change log EV-2026-05-08-07, v2 was kept as a test variant. The test ran; duplicate suppression is real and costs 0-engagement attribution on the second ship. Going forward: one ship per content variant. If we want to test crossposted vs IG-only, ship different content variants on different days, don't ship identical content 35s apart. INFERRED from Finding 3
P1.C — Audit the "In the next 12 months…" Reel hook. 175 reach + 7s avg watch + 0 engagement = the algorithm IS finding an audience that watches; the audience just doesn't react. Specific changes to test: (a) replace "AI literacy" framing with a more personal/painful hook (the Photo winner's "fastest way to lose your team" voice), (b) add a comment-bait closing line ("which one have you said this week?"), (c) add a Save prompt in the caption. Then re-ship the revised version as a new Reel (not an edit to the live one) and compare. INFERRED from Finding 2

Format-diversity audit (Rule #10)

7 Reels + 4 Photos + 2 Carousels = ≥4 unique formats ✓ ≥1 video ✓ ≥1 carousel ✓ no single format above 7 (the cap is "≤3 of any single format per week" but for organic ≤50% of total is the reasonable read — 7/13 Reels = 54% is right at the line). OBSERVED — Insights dashboard Format-diversity gate passes nominally, but the Reel share (54%) deserves a watch flag given Reels averaged 0.78% engagement rate vs Photos' 9.6%. Wave 2026-05-11 should over-index on Photos and Carousels to test the format-mix recommendation in P1.A.

ManyChat CTA-keyword audit

5 keywords now (WORK + OFFER + DELEGATE + LISTEN + SHIFT). Per change log EV-2026-05-08-03, SHIFT was added 5/8. No ManyChat dashboard data pulled this session (the ManyChat MCP doesn't exist; cross-check would need a browser screenshot). SINGLE-SOURCE — needs ManyChat dashboard cross-check next session The 4 comments on the v1 Reel and the 2 comments on the Photo "Fastest way to lose your team" — at least some of those comments are presumably the keywords ManyChat is listening for. Without dashboard verification, I can't confirm any DM fired or any subscriber was acquired. Backlog #58 added: cross-check ManyChat dashboard run-count next session.

The 13 posts — card view with thumbnails + permalinks

The fastest way to lose your team — WINNER PHOTO
Tue 5/5 2:06pm · Photo · ENGAGEMENT WINNER (20.0%)
"The fastest way to lose your team isn't a bad decision."
"It's the words you reach for when you're frustrated. These 11 phrases sound reasonable in your head. Here's what your team actually hears."
25
Reach
1
Likes
2
Cmts
2
Saves
0
Shrs
View winner ↗
In the next 12 months — reach leader, 0 engagement REEL
Thu 5/7 8:05am · Reel · Crossposted · REACH LEADER · 0% engagement
"In the next 12 months, the manager skill that'll matter most isn't AI literacy."
"It's the 3 things AI will NEVER do in your 1-on-1s. I lost a top engineer once. Rebuilt three teams since…" Audience watched (7s avg), did not react.
175
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View reach leader ↗
Reel v1 Crossposted — best Reel of the week REEL
Fri 5/8 4:32pm · Reel · Crossposted · BEST REEL (2.4%)
"If you've been managing for 3+ years, you've felt all three of these."
"I lost a top engineer once. Rebuilt three teams since." Earlier of two identical ships — earned all 4 comments before the duplicate fired.
164
Reach
0
Likes
4
Cmts
0
Saves
0
Shrs
View best Reel ↗
Reel v2 IG-only — duplicate-suppressed REEL
Fri 5/8 4:32pm · Reel · IG-only · DUPLICATE-SUPPRESSED
"If you've been managing for 3+ years, you've felt all three of these."
Identical content to the Crossposted ship, posted 35s later. Meta's algorithm caught the duplicate; 152 reach with 0 engagement is the penalty.
152
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View duplicate ↗
Real talk Reel REEL
Mon 5/4 3:32pm · Reel
"Real talk: your best engineer is going to quit in the next 12 months. It won't be pay."
109 reach, 1 save — second-best Reel of the week behind the Crossposted v1.
109
Reach
0
Likes
0
Cmts
1
Saves
0
Shrs
View ↗
Your top performer Reel REEL
Mon 5/4 7:01am · Reel
"Your top performer just missed their third deadline this quarter."
85 reach, 2s avg watch — shortest hold of any Reel this week.
85
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View ↗
Kendra captioned avatar Reel REEL
Fri 5/8 4:11pm · Reel · Kendra captioned avatar
"If you've been managing for 3+ years, you've felt all three of these."
Same script as the Crossposted v1 (post #3), shipped 21 min earlier as the captioned avatar variant. Gemini H12 quality score 9.5/10 — highest production quality in cycle. Got 34 reach.
34
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View ↗
POV your team Reel REEL
Thu 5/7 7:04am · Reel
"POV: your team just went quiet in standup."
"You can read it as 'they're focused.' You can also read it as 'they don't know it's safe to disagree yet.'" Shipped 1h before the 175-reach Reel — algorithm passed on this one.
27
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View ↗
5 swaps that build it back Carousel CAROUSEL
Tue 5/5 7:02am · Carousel
"…and the 5 swaps that build it back."
Companion piece to the Photo "Fastest way to lose your team" (which shipped 7h later same day). Same theme, lower engagement (16 reach, 0 interactions).
16
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View ↗
Saturday recap Photo PHOTO
Sat 5/9 8:02am · Photo
"What's the one phrase you've been trying to swap?"
Week recap engagement-prompt Photo. 11 reach, 0 interactions.
11
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View ↗
3 conversations Carousel CAROUSEL
Fri 5/8 7:03am · Carousel
"3 conversations every manager avoids — and the 3 sentences that start them."
10 reach, 1 save — earned the second-highest engagement rate of the week (10%) but on tiny reach. The "Save this…" CTA in the caption worked.
10
Reach
0
Likes
0
Cmts
1
Saves
0
Shrs
View ↗
Newsletter Quick one Photo PHOTO
Sun 5/3 8:01am · Photo · Newsletter announcement
"Quick one — tonight at 7pm ET, Issue #2 of the JIT Newsletter ships."
Operational announcement, not a content piece. 9 reach.
9
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View ↗
Silence isn't neutral Photo PHOTO
Wed 5/6 6:02am · Photo
"Silence isn't neutral."
"To you, it feels like patience. To them, it feels like indifference." Lowest reach of the week (6). Same Photo format as the engagement winner — but without the specific situational hook.
6
Reach
0
Likes
0
Cmts
0
Saves
0
Shrs
View ↗
Sources: Meta Business Insights → Content dashboard (cross-check, authoritative) + Graph API /{ig_user_id}/media with /{media_id}/insights (primary, supplementary) + local thumbnails in ig_thumbs/ from pull_ig_thumbnails_local.py 15. Permalinks resolve to live IG posts. Discrepancies between API and dashboard: API truncated to 5 posts via --recent 5 flag (caller error); dashboard showed all 13. Going forward this section uses dashboard counts as the OBSERVED-tier source; API supplements but does not override.

8. Email Performance

CRITICAL — Squeeze opt-ins went to ZERO May 8–10. MEASURED — Kit v3 API, subscribers + tag 18943416, N=16 May 4-7 / N=0 May 8-10 16 new real subscribers May 4-7, ZERO new subscribers May 8-10. Coincides exactly with platform-migration cutover prep + execution window (Stripe wiring May 8, Cloudflare cutover May 10 21:11 UTC). ~$60 ad spend in those 3 dark days produced no leads. Backlog item added (#57) to diagnose: real weekend pattern vs. /squeeze form broke during migration vs. data lag.

Subscriber growth this week (May 4–10)

MetricValueNotes
New real subscribers (filtered)16MEASURED — Kit v3 /subscribers + /tags/18943416/subscriptions, N=16 Zero test-pattern matches
opted-in-freebie tag adds161:1 match with subscriber count — Visual Automation 1607434 working as designed
Both Wix buyers acquired via Kit funnel2 of 2OBSERVED — email match acasavettes@yahoo.com (same-session conversion 4 min) + mdavi123@eq.edu.au (3-day nurture)
Distribution by day4 / 3 / 5 / 4 / 0 / 0 / 0Mon-Wed-Thu carry; Fri-Sat-Sun zero — critical anomaly
Soap Opera Sequence 2281879 (lifetime)101 totalINFERRED Per Visual Automation 1607434 every new subscriber auto-enrolls — so 16 of 101 are from this week
Industry benchmark — squeeze opt-in 15–30% on well-matched lead magnets. Reverse-calculated from 16 real subs ÷ approximate paid-clicks (Path A 33 + CTC 47 + Warm 427 ≈ 507) = 3.2% squeeze conversion overall — under benchmark by 5-10x.

Kit→Wix attribution (NEW data this week)

Both Wix orders trace back to Kit subscribers.

Email broadcasts (Seinfeld layer)

DateSubjectStatus
2026-04-26"The question that beats every leadership framework"Most recent — 14 days ago
2026-04-23"I gave the same feedback two ways. One worked."Prior
2025-04-16"What a comedy show taught me about leadership..."Account total: 3 lifetime broadcasts
Industry benchmark — open rate 21-28%, click rate 2.5-3.5%. Broadcast detail-stats endpoint not pulled this session (per-broadcast stats requires additional calls; consider for next report).
Zero broadcasts in the May 4–10 window. MEASURED — Kit v3 /broadcasts Seinfeld cadence has been silent since April 26 = 14-day gap. The Soap Opera automation IS firing for new subs (per the attribution data above), but no broadcast layer activity. Worth a P2 recommendation to ship a weekly Seinfeld broadcast to the existing 101+ Soap Opera grads who are no longer in the sequence.

9. Content Pipeline

Wave 2026-05-04 (just shipped) — format-mix

ChannelFormatStatus
IGCarousel ("11 Phrases")Live 5/5
IGReel v1.4b (Kendra Managers Who Stay)Live 5/7
IGReel v1.5 (Managers Who Stay corrective cut)Live 5/8
FBNative (Yapper F7 crosspost)Live 5/4
LICarousel reshipped via BufferLive 5/5
Rule #10 gates: ≤3 any format ✓ · ≥4 formats ✓ · ≥1 video ✓ · ≥1 carousel ✓ — passes

Wave 2026-05-11 (THIS week) — fully scheduled to Buffer queue · 18 posts across 3 channels

End-to-end shipped 5/10 evening across IG + YouTube Shorts + LinkedIn. OBSERVED — Buffer API confirmed scheduled status on all 18 posts 6 Photos + 4 Reels on IG; 4 Reels cross-posted to YT Shorts; 4 bespoke Alić-style LinkedIn essays. Per EV-2026-05-10-12 (Photos), EV-2026-05-10-13 (Reels), EV-2026-05-10-14 (YT + LI + Apps Script architecture). Buffer free plan per-channel cap: IG 10/10, YT 4/10, LI 4/10.
Buffer cap finding (correction from earlier session assumption): Buffer's free plan limit is 10 scheduled posts PER CHANNEL, not 10 total across the organization. Verified empirically May 10 evening by scheduling a real LI post while IG was at 10/10 — accepted cleanly. This means we have headroom on LinkedIn + YouTube every week even when IG fills. Fri-Sun gap on IG is the only remaining constraint, addressed by the Apps Script Direct Publisher (drafted, ready to deploy).

The full week schedule

DayTime (ET)FormatAngleHook / ImageBuffer ID
Mon 5/118:00 AMPhotoPromotion paradox"The fastest way to get passed over for promotion isn't missing your numbers" · moody dark office [promotion_A]6a012ab9...142
Mon 5/1110:00 AMReelPromotion paradox"The phrase that gets you passed over for promotion" · coffee b-roll · 5.93s [reel_1]6a01378d...3e1
Mon 5/112:00 PMPhotoPromotion paradoxSame hook · bright minimalist desk [promotion_B]6a012ac3...a78
Tue 5/128:00 AMPhotoTrust killer"The fastest way to lose a high performer isn't poor pay" · moody dark chairs [trust_A]6a012ac8...19e
Tue 5/1210:00 AMReelTrust killer"Why your top performer is already interviewing" · IMG_5408 b-roll · 5.93s [reel_2]6a013790...407
Tue 5/122:00 PMPhotoTrust killerSame hook · bright co-working space [trust_B]6a012acc...1cc
Wed 5/138:00 AMPhotoMeeting silence"The fastest way to break psychological safety isn't a layoff" · moody conference room [meeting_A]6a012ad0...1f2
Wed 5/1310:00 AMReelMeeting silence"The 4 seconds that decide if your team disagrees with you" · IMG_5693 b-roll · 5.93s [reel_3]6a013793...439
Wed 5/132:00 PMPhotoMeeting silenceSame hook · bright sunlit meeting space [meeting_B]6a012ad5...218
Thu 5/1410:00 AMReelHire retention"What every manager says before they lose a great hire" · IMG_5916 b-roll · 5.93s [reel_4]6a013797...cbc
IG: 10/10 Buffer slots used. Format mix: 6 Photos + 4 Reels. Same WORK ManyChat keyword on all 10 captions. Same audience cohort + same week. Engagement comparison cleanly attributes any difference to FORMAT.

YouTube Shorts cross-post (4 posts)

DayTime (ET)AngleTitleBuffer ID
Mon 5/1110:00 AMPromotion paradox"The phrase that gets you passed over for promotion"6a013a9d...046
Tue 5/1210:00 AMTrust killer"Why your top performer is already interviewing"6a013aa0...559
Wed 5/1310:00 AMMeeting silence"The 4 seconds that decide if your team disagrees with you"6a013aa5...083
Thu 5/1410:00 AMHire retention"What every manager says before they lose a great hire"6a013aa8...0cf
YT: 4/10 Buffer slots used. Same R2 video URLs as IG Reels. Same 4 angles. Description adapted with Subscribe CTA + YT-specific hashtags. Category 27 (Education). Tests whether the Reel content performs differently on search-discovery (YT) vs feed-scroll (IG).

LinkedIn essays (4 posts) — Alić-style prose, NOT Reel cross-posts

DayTime (ET)AngleOpening lineBuffer ID
Tue 5/128:00 AMPromotion paradox"The fastest way to get passed over isn't missing your numbers."6a013ac9...75b
Wed 5/138:00 AMTrust killer"Your top performer is already interviewing. You just don't know it yet."6a013acc...785
Thu 5/148:00 AMMeeting silence"The 4 seconds that decide whether your team disagrees with you again."6a013acf...2dc
Fri 5/158:00 AMHire retention"I lost a top engineer once. The conversation took 60 seconds."6a013ad2...31a
LI: 4/10 Buffer slots used. Bespoke prose (last-line-first hooks, breathable paragraph spacing, no hashtag spam, Bailey byline). Mon skipped — Alić framework flags Monday as LI low-engagement day. Tests whether the same hook angles earn higher engagement per Alić's "LI is where managers actually consume management content" hypothesis.

Full week visual schedule (18 posts across 3 channels)

ChannelMon 5/11Tue 5/12Wed 5/13Thu 5/14Fri 5/15
IG8a Photo · 10a Reel · 2p Photo8a Photo · 10a Reel · 2p Photo8a Photo · 10a Reel · 2p Photo10a Reel
YT Shorts10a10a10a10a
LinkedIn8a8a8a8a
Sat/Sun on IG = the open Fri-Sun gap. Addressed next week by deploying the Apps Script IG Direct Publisher (architecture + code drafted in this session, ~30 min Sundeep deploy time). After deployment: IG can ship 25 posts/day (Meta API ceiling) without Buffer dependency.

Content gallery — visual preview of all 14 scheduled organic posts

Instagram Photos (6) — Mon-Wed 8 AM + 2 PM ET

Instagram Reels (4) + YouTube Shorts cross-post (4) — Mon-Thu 10 AM ET

LinkedIn essays (4) — Tue-Fri 8 AM ET — bespoke Alić-style prose

The test design this enables

Parallel format hypothesis tests on same audience, same week.

Production pipeline (NEW — autonomous as of 5/10)

StageToolWhat it doesHand-touch required?
Photo generationNano Banana 2 (gemini-3.1-flash-image-preview) + PIL6 Nano Banana calls for backgrounds + PIL text overlays in JIT brand (navy + yellow). 1080×1350 JPG.0 — fully autonomous
Reel generationmoviepy + PIL + numpy ambient music + ffmpeg HEVC pre-conversioniPhone .MOV b-roll loaded, trimmed to 5.93s, cropped to 1440×2560 9:16, hook/CTA badges composited via PIL, programmatic Cmaj7 pad as audio, H.264 + AAC render.0 — fully autonomous
Asset hostingCloudflare R2 (jit-media bucket)All 10 assets uploaded with public CDN URLs.0 — boto3
SchedulingBuffer MCP (GraphQL)10× create_post calls with customScheduled mode + ISO 8601 dueAt.0 — Cowork session, automatable next iteration
PublishingBuffer auto-publish to IG Business accountBuffer fires each scheduled post at its dueAt time.0 — Buffer handles
Engagement checkpull_insights.pyPulls per-post engagement at Thu (mid-wave) and Fri 5/22 (full verdict).~30 sec — 2 commands across the week
End-to-end wall-clock this week: ~5 min Sundeep terminal time (3 scripts × ~90 sec each + 30 sec to paste manifests). Buffer scheduling = autonomous via MCP. Path to fully autonomous (zero terminal): Tier 3 architecture in change log discussion — GitHub Actions cron + Apps Script publisher. ~3h one-time build.

10. Recommendations with Sample Content

P1 — Reallocate CTC budget this week (before May 16 verdict)

Pittman "Andromeda concentrated CTC budget into C4 (POV Viral) and got 0 leads for $54. C1 (Kendra 5-scene) was doing the actual work at $9.65 CPL — and C2 had the strongest CTR signal but was starved at 89 imp. The auction system needs you to remove the loser so the winner can scale."
Recommended ad set change: - Pause C4_CTC_Format3_POV_Viral (ad_id 120244480032580465) — 0 leads on $54 - Pause C3_CTC_YapperJeyla_F7_UGC (ad_id 120244480027720465) — 0 leads on $12.56, below starvation floor - Keep C1_CTC_Kendra_5scene_AltCut (ad_id 120244480019770465) — drove 2/2 CTC leads - Keep C2_CTC_Kendra_BrollPOV_Thu (ad_id 120244480023760465) — 7.87% CTR signal, deserves rescue - Cut CTC budget $15/day → $5/day - Add $10/day to Path A ($5 → $15/day) — 6× cost-efficient WINNER

P1 — Update upstream traffic sources to point at www.* (post-cutover)

Brunson "You just changed the CMS for 8 routes. Every Meta ad, every Kit email, every ManyChat DM, every PDF link — they ALL need to be re-verified now that production is Cloudflare-served, not Wix-served. The pre-flight audit (EV-2026-05-10-05) was based on URLs; the cutover MAY have introduced a routing surprise."
Next-session verification sweep: 1. Curl all 12 ad destinations from Marketing API — confirm 200 + correct CF headers 2. Verify Kit Soap Opera click-through still creates Kit subscriber (test Email 1 trigger) 3. Verify ManyChat final DM URL resolves via Cloudflare 4. Verify Stripe webhook still firing — check Stripe Dashboard recent events log 5. Confirm Pixel events still firing on Cloudflare-served pages (Pixel ID 4235520640036275)

P2 — Move Stripe webhook URL from staging → www (hygiene)

Per EV-2026-05-10-06 — Stripe webhook still points at staging.jitlearnings4mgrs.com/api/stripe-webhook. Functionally fine (same Worker), but hygiene-wise should be updated in Stripe Dashboard. Non-blocking.

P2 — Restore bash/web_fetch tooling for next weekly report

This week's report has Kit + Pixel + Wix-Analytics data gaps because mcp__workspace__bash was unavailable (virtiofs mount issue) and web_fetch's URL provenance set didn't include Kit / Graph API endpoints. OBSERVED — error response above Next-session priority: restore bash OR add Kit / Pixel MCP connectors so future reports don't have this gap.

P3 — Replace staging.* with the new canonical staging domain

Now that www.* is Cloudflare-served, the staging.jitlearnings4mgrs.com domain can be retained for QA but should be made noindex/robots-disallow so Clarity data isn't bifurcated long-term.

11. Backlog Status

Closed this week (or effectively closed)

#ItemClosed by
#50Mon May 4 morning — 24h post-launch sanity checkPath A + CTC both delivered spend > $0 throughout week → green
#51Sat May 9 — 7-day mid-test pullThis report executes the mid-test analysis + decision rules (Section 3)
#35 (P1)Platform migration evaluationMigration shipped end-to-end (EV-2026-05-08-12 through EV-2026-05-10-07)
~30 backlog itemsTriage pass earlier this week (EV-2026-05-06-05)Triage pass reduced backlog to 12 actionable items + 2 scheduled gates

Open / waiting

#ItemPriorityStatus
#52Fri May 16 — Path A vs CTC 14-day verdict + decision tree executionP1Scheduled — see Section 3 mid-test indicators
#54 (NEW)Restore bash + add Kit / Pixel MCPs OR validate alternate API access for next weekly reportP2Open — blocks full-data reports
#55 (NEW)Post-cutover full upstream-source re-audit (Meta ads + Kit + ManyChat + Stripe webhook URL hygiene)P1Open — exec next session
#56 (NEW)Set staging.* to noindex/robots-disallow so Clarity data isn't bifurcated long-termP3Open — hygiene
#46 / #47 / #48Squeeze page v4.2 / cold targeting tightening / testimonial above foldP1 conditionalWAITING ON #52 — re-evaluate on May 16
#42Wix→Kit bridge $0.50 test orderP2Open + becoming irrelevant post-cutover (Stripe→Kit is the new path)
#43Business entity structure (DBA/LLC) decisionP2Open — Sundeep decision
#46 (Tier-aware AI Coach)Public + VIP bot routingP2Open — partially shipped by /coach Clerk gating EV-2026-05-09-03