DM Flow: NUMBERS Funnel
Script for the auto-DM flow triggered when someone comments NUMBERS
on an @gotauts educational carousel. Tool-agnostic — implements
identically in ManyChat or GoHighLevel depending on which seat
Gustavs/eCOMHUB already has. Decision and tool URL go in this file's
frontmatter at impl time.
Trigger
- Source: comment on @gotauts IG post.
- Pattern: comment text contains
NUMBERS(case-insensitive, word boundary). - Filter: ignore replies to other comments (only top-level comments count, otherwise threaded reply spam triggers the funnel).
- Rate limit: one DM per IG account per 24h, regardless of how many posts they comment on.
Node 1 — open DM
Wait: 30 seconds (avoids "auto-reply spam" flag from Meta).
DM body:
Hey 🙏 thanks for commenting NUMBERS.
Here is the 3-question read on your bottleneck:
{TALLY_URL}
Once you submit, I will DM the exact tracker I run my $1M+ months
on, plus the row that matters most for your specific situation.
Takes 30 seconds. Real numbers, no fluff.
Variables injected:
- {TALLY_URL} — pulled from wiki/content/freebie/qualifier.md
frontmatter tally_url:. URL appends ?source_post=<post_id> so
the form knows which carousel drove the lead.
Node 2 — wait for Tally webhook
The flow pauses here until Tally fires its submission webhook to the DM tool's webhook endpoint.
Timeout: 7 days. If no submission, send the Node 5 follow-up DM and close the flow.
Webhook payload: see qualifier.md "Webhook payload" section.
Node 3 — DM the tracker (variant by Q2 bottleneck)
DM body (template):
Got it. Your bottleneck looks like {Q2_BOTTLENECK}.
Here is the tracker I run my $1M+ months on:
{TRACKER_URL}
The row that matters most for you: {ROW_FOR_BOTTLENECK}.
2-minute Loom showing how I read it daily:
{LOOM_URL}
If you want to go deeper, the Telegram is here:
{TELEGRAM_INVITE_URL}
Variables:
- {Q2_BOTTLENECK} — verbatim from form (cashflow / roas / team
/ product / mindset / other)
- {ROW_FOR_BOTTLENECK} — from the lookup in qualifier.md
- {TRACKER_URL} — from numbers-tracker.md frontmatter
- {LOOM_URL} — from numbers-tracker.md frontmatter
- {TELEGRAM_INVITE_URL} — unique per-lead invite link, generated
via Telegram Bot API. Allows tracking which leads actually join.
Node 4 — tag + log
Tag in CRM:
- sub_persona: {Q1_VALUE} (Validator / Operator / Scaler /
Other)
- bottleneck: {Q2_VALUE}
- source_post: {POST_ID}
Append row to wiki/content/leads.md:
| {timestamp} | {Q3_EMAIL} | {sub_persona} | {bottleneck} | {POST_ID} | pending |
The pending flag flips to joined when the Telegram invite link is
clicked (Telegram bot webhook updates the row).
Node 5 — 7-day no-submit follow-up (Phase 2)
If Node 2 times out (lead commented but never submitted), DM:
Hey, just checking in.
The tracker is still here if you want it:
{TALLY_URL}
If now is not the moment, no worries. The Telegram is open if you
want the daily numbers without filling anything out:
{TELEGRAM_INVITE_URL}
Closes the flow. Lead does NOT get appended to leads.md (no email
captured).
Smoke test (must pass before going live)
- Comment
NUMBERSon a test post from a secondary IG account. - Within 2 minutes: Node 1 DM lands ✓
- Tally form opens, all 3 questions render correctly on mobile ✓
- Submit form. Within 5 minutes: Node 3 DM lands with all 5 variables correctly substituted ✓
- Open the tracker URL — Notion/Sheet loads, columns intact ✓
- Open the Loom URL — video plays, audio works ✓
- Click the Telegram invite — Telegram opens to channel join page ✓
wiki/content/leads.mdshows a new row matching the test ✓
If any step fails, do not declare the funnel live. Document the failure
in ops/agents/content-agent/changelog.md and fix.
Tool decision matrix
| ManyChat | GoHighLevel | |
|---|---|---|
| Pricing | Free tier (≤1k contacts), $15/mo (≤5k) | $97–297/mo, included if eCOMHUB has a seat |
| IG comment trigger | Native, well-tested | Native, requires connector setup |
| Webhook in/out | Native | Native |
| Telegram bot integration | Via Zapier | Via Zapier |
| CRM tagging | Lightweight tags | Full CRM with pipelines |
| Recommended when | No existing GHL seat; want fastest ship | Already on GHL stack; want unified CRM |
The voice notes (consultant) specifically prescribed GHL. If Gustavs already has a GHL seat for other funnels, use GHL. If not, ship on ManyChat — switching later is a one-day migration.