Watch โ sample too small
Early learning ยท Early learning โ watching
0 of 0 look qualified
We have enough signal to stop waiting.
- Content Agent has the strongest volume and the leads look qualified on the form.
- Watch whether the next few leads actually book a call.
- Market research feeds the next angle, see the Creative Brief tab.
Creative snapshot
Too little volume to judge.
Performance
The numbers behind every ad, so the call is backed by data, not just a summary.
Too early to call, not enough leads yet.
Sample below action floor.
| Creative | Status | Spend | Impressions | Clicks | CTR | CPC | Leads | CPL | Action |
|---|---|---|---|---|---|---|---|---|---|
| ๐AD #2 โ Speed to Lead LEADS |
Watching | $47.16 | 2,581 | 37 | 1.43% | $1.27 | โ | โ | Keep monitoring |
Leads
All campaign leads, pulled straight from the Meta form (the source of truth), so the ones that never reached the CRM show up too, flagged not in CRM. Non-ad contacts are listed separately.
| Lead | Source ad | Q1 pain | Q2 help | Q3 spend | Quality | Why |
|---|---|---|---|---|---|---|
| No attributed leads yet. | ||||||
These 9 contacts are excluded from campaign performance.
They were added to GHL during the same date window but have no Meta-ad attribution.
| Contact | Date added | Source category | Why excluded | Tags | |
|---|---|---|---|---|---|
| amos s. | aโฆ@finnp.info | 2026-08-24 | Non-ad contact | No Facebook submission / no source ad | โ |
| anthony h. | aโฆ@reshapedigitalsolutions.com | 2026-08-23 | Non-ad contact | No Facebook submission / no source ad | audit:missing-phone, audit:source-normalized, source:unknown |
| eroglu z. | eโฆ@zekeriya.com | 2026-08-23 | Non-ad contact | No Facebook submission / no source ad | โ |
| dylan s. | โ | 2026-08-22 | Non-ad contact | No Facebook submission / no source ad | โ |
| augusta | โ | 2026-08-22 | Non-ad contact | No Facebook submission / no source ad | โ |
| michela m. | โ | 2026-08-21 | Non-ad contact | No Facebook submission / no source ad | โ |
| dave | โ | 2026-08-19 | Non-ad contact | No Facebook submission / no source ad | โ |
| chris r. | โ | 2026-08-18 | Non-ad contact | No Facebook submission / no source ad | โ |
| (404) 3. | โ | 2026-08-17 | Non-ad contact | No Facebook submission / no source ad | โ |
We pull the real leads straight from the Meta form (the source of truth), so the count is accurate even when a lead never reached the CRM. 0 campaign leads so far, 0 are in the CRM, all in the CRM.
Meta's dashboard shows 0 "conversions", but that counts form opens and repeat events, not unique people.
All contacts view
Available for audit; not the default campaign-performance view. Includes both attributed and non-ad contacts.
Actions
No actions today.
Keep watching lead quality through the next review.
Creative Brief
This is the execution asset. It's copied into ClickUp and stays synced with the task.
Ready for review
Owner: Katie / Creative
Due: 2026-08-26
ClickUp: pending
Why this is needed
Content Agent โ Static is getting volume (0 campaign leads) with 0 qualified / 0 potential. No new attributed leads for 0+ days while delivery continues. Revisit the angle once the setup is confirmed.
Current ad / problem
- Ad: Content Agent โ Static
- Campaign leads: 0
- On the form they look fine: 0 qualified / 0 potential
- Symptom: no new attributed leads for 0+ days while delivery continues.
Target buyer problem
You're getting content out, but it isn't turning into serious inquiries. You need more than another post-a-day โ you need leads who are ready to invest in a real content engine.
Market insight used
On hold: the lever is the ad setup, not the creative. The leads state real budget but don't book, so re-aim for booked calls and a buyer lookalike before the next refresh.
What competitors are doing
- Use the lost-lead pain, but don't copy the AI receptionist framing.
- Plan niche variants for v2 once the current cycle shows which bucket converts best. Real estate and home services first.
- Our 4 video + 4 graphic split matches the market norm. Don't change the format mix โ iterate on angles.
- Hold the email-first / no-call path in the current cycle. It's our edge.
What not to copy
- Don't call it an AI receptionist if that makes us blend in.
- Don't invent numbers.
- Don't copy competitor leaderboard ads.
- Don't force a demo call too early.
- Don't use generic AI hype.
Suggested angle
Pain-led, qualified-inbound framing. Name the gap between 'we post a lot' and 'we book real calls.' Avoid the generic AI-receptionist saturation.
Hook direction
First 3 seconds: name the cost of the current pain โ 'You're posting daily but not booking calls.' Lead with the specific outcome the qualified buyer wants.
Format
Short talking-head video (20โ30s) OR simple screen-recording walkthrough showing the difference between content output and qualified pipeline. Pick whichever the producer can ship in 5โ7 days.
Script outline
- Beat 1 (0โ3s): hook โ name the cost of the current pain.
- Beat 2 (3โ10s): agitate โ explain why volume alone doesn't convert.
- Beat 3 (10โ25s): introduce the offer's MECHANISM (not features).
- Beat 4 (25โ28s): one proof / credibility marker.
- Beat 5 (28โ30s): single CTA โ same form for now.
CTA
Same lead form as current creatives (no offer change in V1).
Assets needed
- 1ร on-camera talent (founder or strategist) OR screen-recording of a real engagement dashboard
- Lower-thirds template (brand-matched)
- 1ร proof asset (case-study quote, screenshot, or stat callout)
- Captions burned in (mobile sound-off-friendly)
Success metric
- Primary: keep CPL within $80 on first 10 attributed leads
- Secondary: โฅ40% qualified+potential share of first 10 attributed leads
Acceptance criteria
- New variant launched as a NEW ad inside the existing ad set (not a replacement).
- Current Content Agent โ Static stays paused, not deleted (audit trail).
- First 7-day metrics reviewed against the success metric above.
- If first 10 attributed leads show โฅ40% qualified+potential, lock the variant in; otherwise iterate.
Launch notes
- Keep the existing form โ no offer change in V1.
- Use a NEW ad inside the same ad set; do not edit the current ad.
- Pause the current Content Agent โ Static immediately after launch.
Measurement plan
Baseline window: Last 16 days of Content Agent โ Static
Measurement window: First 7 days after new variant launches.
Decision rule: Lock in if qualified+potential โฅ 40% of first 10 attributed leads AND CPL โค target. Iterate otherwise.
Market Intelligence
Not a research museum. This section shows what insight changed the current creative direction.
Competitor pattern (used in brief)
On hold: the lever is the ad setup, not the creative. The leads state real budget but don't book, so re-aim for booked calls and a buyer lookalike before the next refresh.
Crowded angleWhite space (what we're testing)
Pain-led, qualified-inbound framing. Name the gap between 'we post a lot' and 'we book real calls.' Avoid the generic AI-receptionist saturation.
Use thisDo not copy
- Don't call it an AI receptionist if that makes us blend in.
- Don't invent numbers.
- Don't copy competitor leaderboard ads.
- Don't force a demo call too early.
What feeds the current brief
| Insight | Decision (used in brief) |
|---|---|
| Use the lost-lead pain, but don't copy the AI receptionist framing. | Routed into creative angle. |
| Plan niche variants for v2 once the current cycle shows which bucket converts best. Real estate and home services first. | Routed into creative angle. |
| Our 4 video + 4 graphic split matches the market norm. Don't change the format mix โ iterate on angles. | Routed into creative angle. |
| Hold the email-first / no-call path in the current cycle. It's our edge. | Routed into creative angle. |
Research backup (collapsed)
5 competitor findings on file (raw research) ยท click to expand
| Title | What | For us |
|---|---|---|
| Missed calls are crowded | A lot of competitors are telling businesses they lose money when calls or leads are not followed up quickly. | Use the lost-lead pain, but don't copy the AI receptionist framing. |
| Niche-specific copy converts better | The same offer runs with different copy for electricians, contractors, clinics, law firms. Specific niches beat generic small-business copy. | Plan niche variants for v2 once the current cycle shows which bucket converts best. Real estate and home services first. |
| Founder videos and dashboard graphics are the two formats that work | Almost every credible ad is either a founder talking head with bold numbers, or a clean dashboard / process mockup. | Our 4 video + 4 graphic split matches the market norm. Don't change the format mix โ iterate on angles. |
| Most competitors force a demo call. We don't. | 11 of 13 competitor ads push a sales call as the main CTA. Only two let people self-serve straight from the ad. | Hold the email-first / no-call path in the current cycle. It's our edge. |
| Real numbers earn trust. Vague claims don't. | Every credible ad uses verifiable numbers ($45/mo, 70%+, 60 sec). Generic 'transform your business' copy doesn't land. | Use real numbers only when we have proof. Build a proof-based variant once the current cycle has CPL / lead data. |
Outcomes
Prevents the agent from re-creating the same task. Tracks whether the work was done and whether it worked.
Task created
Owner notified
Waiting for production / launch
Launched new creative
Measuring
Result
Next run should check
- Whether 'Fix ad setup: No lookalike or custom audience of past buyers is in use.' has launched (new ad with v2/refresh naming appears in Meta).
Report
Inline preview mirrors today's report. Open the full HTML report โ
Campaign report
Early learning โ watching
Executive summary
Verdict: Watch โ sample too small
Next move: Keep watching. Re-evaluate once attributed leads reach 5.
Do not do: Do not scale yet.
Current action
Brief stronger variation of Content Agent โ Static โ target higher-intent buyers
Owner: Katie / Creative ยท Due: 2026-08-26 ยท ClickUp: not filed yet
Brief summary
Refresh Content Agent โ Static with a higher-intent buyer angle once the setup is confirmed.
Admin
Operator-only. Raw paths, configs, and debug logs live here, not in team-facing tabs.
Internal campaign identity
- Internal id:
baseline_v2 - Team phase: Early learning ยท status
EARLY_LEARNING - Local source:
data/processed/2026-08-19_reshape_30d_classified.json - Runbook:
reports/baseline_v1/COMMAND_CENTER.md
Refresh + deploy command
python3 -m src.refresh_command_center --campaign baseline_v1 --fetch --deploy
Add --slack to also deliver DMs + team-channel summary.
Source integrity (full)
{
"ok": true,
"campaign_id": "baseline_v2",
"computed_at": "2026-08-24T13:50:37.678880+00:00",
"status": "OK",
"blocking_issues": [],
"warnings": [],
"auto_fixes_applied": [],
"requires_human_review": [],
"campaign_integrity": {
"ads_scanned": 1,
"unknown_ad_ids": [],
"ad_names_off_pattern": [],
"ad_statuses_seen": {
"ACTIVE": 1
},
"explicit_ids_expected": [
"120253169422390184"
]
},
"instant_form_integrity": {
"expected_form_id": null,
"expected_form_name": "reshape-ads-form 05/07/2026",
"form_ids_seen": {},
"attributed_leads": 0,
"unclear_share": 0.0
},
"ghl_pipeline_integrity": {
"expected_pipeline": null,
"expected_stages": [],
"seen_pipeline": "\u2705 ACTIVE \u2014 Sales (All Leads + Offers Out)",
"seen_stages": []
},
"attribution_integrity": {
"attributed_campaign_leads": 0,
"meta_reported_conversions": 0,
"non_ad_contact_count": 8,
"possible_tracking_gap_count": 0,
"meta_to_ghl_match_gap": {
"meta_reported": 0,
"ghl_attributed": 0,
"gap": 0,
"above_tolerance": false,
"tolerance": 3,
"interpretation": "Meta and GHL agree."
},
"reconciliation_clean": true
},
"surface_consistency": {
"truth_attributed": 0,
"diagnostic_attributed": 0
}
}Latest artifact freshness
{
"ok": true,
"campaign_id": "baseline_v2",
"as_of": "2026-08-24T13:07:30.356123+00:00",
"status": "CRIT",
"paths": {
"latest_agent_run": "exports/baseline_v2/agent_run.json",
"latest_truth_input": "exports/baseline_v2/lead_quality.json",
"latest_lifecycle": "exports/baseline_v2/campaign_lifecycle.json",
"latest_action_delivery": "exports/baseline_v2/action_delivery.json",
"latest_brief": "exports/baseline_v2/artifacts/content_agent_refresh_brief.json",
"latest_source_integrity": "exports/baseline_v2/source_integrity_report.json",
"latest_outcome_tracking": "exports/baseline_v2/outcome_tracking.json",
"latest_dashboard": "reports/baseline_v2/dashboard.html",
"latest_report": null
},
"mtimes": {
"latest_agent_run": "2026-08-24T13:07:29.889042+00:00",
"latest_truth_input": "2026-08-24T13:07:21.828932+00:00",
"latest_lifecycle": "2026-08-24T13:07:29.841450+00:00",
"latest_action_delivery": "2026-08-24T13:07:29.614755+00:00",
"latest_brief": "2026-08-24T13:07:29.525076+00:00",
"latest_source_integrity": "2026-08-24T13:07:21.955863+00:00",
"latest_outcome_tracking": "2026-08-24T13:07:29.888334+00:00",
"latest_dashboard": "2026-08-24T13:07:30.234177+00:00",
"latest_report": null
},
"stale_artifacts": [],
"missing_artifacts": [
"latest_report"
],
"latest_agent_run": "exports/baseline_v2/agent_run.json",
"latest_report": null,
"latest_dashboard": "reports/baseline_v2/dashboard.html",
"latest_brief": "exports/baseline_v2/artifacts/content_agent_refresh_brief.json",
"latest_action_delivery": "exports/baseline_v2/action_delivery.json"
}Lifecycle (full)
{
"ok": true,
"internal_campaign_id": "baseline_v2",
"computed_at": "2026-08-24T13:50:45.871932+00:00",
"team_phase": "Early learning",
"lifecycle_status": "EARLY_LEARNING",
"phase_reason": "Sample below action floor (5 attributed leads).",
"days_live": 9,
"current_cycle": "Early learning",
"recommended_next_cycle": "Watch only. Do not change creative or budget yet.",
"exit_conditions": [
"\u22655 attributed leads."
],
"promotion_rules": [],
"blocked_by": [],
"next_review": "Tue Aug 25",
"team_facing_label": "Early learning \u2014 watching"
}