SuperAPI AI Directory

stall-rescue

Marketing & growth

View repository

Updated 10-15 20:13

About this skill

Stall Rescue (72h activation drop-off)

Detect users stalling after signup and send a personalized founder email before they churn.

Why

Users who don't complete the key activation step within 72h of signup have <15% chance of returning. A personal email from the CEO at this moment has 3-5x higher response rate than generic nurture.

Workflow

Step 1: Load State

Read memory/stall-rescue.json. If missing, create:

{"last_checked": "2026-03-28T00:00:00Z", "rescued": []}

Step 2: Find Stalled Users

Query PostHog for users who signed up 3-4 days ago but haven't activated:

posthog__query-generate-hogql-from-question \
  question="Find distinct_id values from User Signup events between 4 days ago and 3 days ago. Then check if those distinct_id values have any primary_resource_action or first_value_delivered events after their signup. Return only those who do NOT have any activation event. Include org_owner_email, org_owner_name, org_name from the signup event properties."

Step 3: Filter

  • Skip if org_owner_email is null (enricher not deployed yet — respond HEARTBEAT_OK)
  • Skip if email already in rescued list
  • Skip personal emails (gmail, yahoo, hotmail, outlook, mail.ru, yandex.ru)

Step 4: Research (optional, if business email)

For each stalled user with business email, quick Exa lookup on domain:

exa-search__web_search_advanced_exa \
  query="DOMAIN company" \
  category=company \
  numResults=3 \
  type=auto

Step 5: Draft Email

Use the context to draft a short, personal email from the CEO. Template:

Subject: Quick question about [Company/their use case]

Hi [Name],

I noticed you signed up for [YOUR_PRODUCT] [3 days ago]. I'm the founder, the founder.

[ONE personalized line based on company research — what they do, why [YOUR_PRODUCT] might help]

Most teams get value within minutes of the first activation step — [one-line value moment for your product].

Want me to help you get set up? Happy to do a quick 10-min walkthrough.

Best,
the founder

Generate the email via LLM, then present to CEO for approval.

Step 6: Present to CEO

Stall Rescue: [Name] ([email])
[Company] — signed up [N] days ago, no activation event
Draft email ready — reply "send" to approve, "skip" to pass.

Step 7: On "send" → use Composio Gmail to send, log via structured-log.

Step 8: Update State

Add email to rescued list, update last_checked. Keep list trimmed to 200 entries.

Notes

  • Depends on org_owner_email being present on User Signup event (backend enricher task)
  • Until enricher is deployed, this cron will return HEARTBEAT_OK
  • Only runs on 3-4 day old signups to give users time to activate naturally
  • Max 3 rescue emails per day to avoid overwhelming CEO's approval queue

Related Skills

  • signup-monitor — catches signups at time of registration
  • pipeline-manager — rescued users who respond get added to pipeline
  • cold-email — email writing frameworks
  • humanizer — polish AI-generated emails