Automated Lead Pipeline — Daily SOP

Purpose: Pull targeted HNI/accredited prospects from LinkedIn Sales Navigator, extract with PhantomBuster, enrich & score with paid LLMs (Gemini/ChatGPT), and import approved leads into Zoho CRM and Zoho Campaigns. No other tools allowed.

Scope & Constraints

  • Allowed tools only: LinkedIn (Sales Navigator), PhantomBuster, Gemini/ChatGPT, Zoho (CRM, Campaigns, Docs). Calendly link for meetings.
  • No external enrichment/verification: No Apollo, Clearbit, ZoomInfo, Hunter, NeverBounce, Google Sheets, etc.
  • Data storage: Zoho Docs (canonical CSVs) & Zoho CRM (system of record).

Prerequisites

  1. LinkedIn Sales Navigator access + the LinkedIn account(s) used to send requests.
  2. PhantomBuster with access to:
    • Sales Navigator Search Export
    • LinkedIn Profile Scraper
    • Network Booster
  3. Zoho CRM (create Leads/Contacts), Zoho Campaigns, and Zoho Docs/Drive.
  4. Paid LLM access (Gemini and/or ChatGPT).
  5. Calendly link (existing): https://calendly.com/nick-levenstein/30min
  6. Shared Zoho Docs folder: Leads/PhantomRuns/<YYYY-MM-DD>/

Daily Run — Checklist (45–90 min)

  1. Morning Prep (10 min)
    1. Open Sales Navigator → Saved search: “Accredited Investors — Primary List”.
      Filters (keep unchanged unless Nick approves):
      • Titles: Founder, Managing Partner, CIO, Family Office, Investor
      • Company type: Family Office, Hedge Fund, Private Equity
      • Geography: US, UK, Singapore, Hong Kong, Switzerland, Europe
      • Keywords: AUM, family office, invests, LP
    2. Copy the Sales Navigator search URL (not individual profiles).
  2. PhantomBuster Export → Profile Scrape (20–40 min)
    1. Create a new run of Sales Navigator Search Export. Input: the saved search URL.
    2. Settings:
      • Export limit: up to 500; typical daily: 50–200
      • Rate: Phantom defaults; prefer 1 large run/day or smaller 50-profile batches.
      • Output filename: Leads-YYYY-MM-DD.csv
    3. Run LinkedIn Profile Scraper with the exported profile URLs.
      Fields to extract: profile_url, full_name, first_name, last_name, headline, current_company, location, about_snippet, last_activity, public_positions
    4. Download the profile CSV as Profiles-YYYY-MM-DD.csv and upload to Zoho Docs → Leads/PhantomRuns/<YYYY-MM-DD>/
  3. LLM Enrichment & Scoring (30–60 min)
    1. For each row in Profiles-YYYY-MM-DD.csv, feed: headline, about_snippet, current_company, public_positions, location into Gemini/ChatGPT.
    2. Use this exact prompt (batch up to 20 profiles if supported):
    You are an analyst. Here is a LinkedIn profile (public fields only):
    
    Headline: {headline}
    About / Snippet: {about_snippet}
    Company: {current_company}
    Positions: {public_positions}
    Location: {location}
    
    Based only on this public info, respond in strict JSON with fields:
    - prob_accredited_score: integer 0-100 (higher => likely HNI / accredited investor). Base this on title signals (Founder, Managing Partner, Family Office), company type indicators (family office, hedge fund, PE), and entrepreneurship/exit signals.
    - tags: array of short tags from [family-office, hedge-fund, founder, angel, vc, wealth-manager, recruiter, consultant, other]
    - personal_line: one short personalization sentence (max 12 words) referencing something visible in the headline/about.
    - suggested_connection_message: one short non-salesy connection message (max 220 characters) suitable for a LinkedIn connection request.
    - suggested_followup_message: one short follow-up DM (2 sentences max) for after connection.
          
    1. Save JSON outputs to Enriched-YYYY-MM-DD.jsonl (one JSON per line) in the same Zoho Docs folder.
    2. Convert to CSV (inside the allowed tools; e.g., paste JSON into ChatGPT and ask for CSV with headers below; download and store as Enriched-YYYY-MM-DD.csv):
    profile_urlfull_namefirst_namelast_name headlinecurrent_companylocationabout_snippet public_positionsprob_accredited_scoretags personal_linesuggested_connection_messagesuggested_followup_message
    Use these exact headers for smooth Zoho import.
  4. Approval & Thresholding (5–10 min)
    • Approve for outreach: prob_accredited_score ≥ 65 and not tagged recruiter or consultant.
    • Borderline review: scores 55–64 with tags family-office, hedge-fund, or founder → manual discretion.
    • Exclude: recruiter, consultant, or missing senior signals.
  5. Zoho CRM Import (Leads) (10–15 min)
    1. Prepare Zoho-Import-YYYY-MM-DD.csv with only approved rows and these mappings:
      CSV ColumnZoho Lead FieldNotes
      first_nameFirst Name
      last_nameLast NameRequired in Zoho
      full_nameLead Name (if applicable)Optional
      current_companyCompany
      headlineTitleOr parse from headline
      locationCity / CountryMap as available
      profile_urlLinkedInCustom field: URL
      about_snippetDescriptionTrim to Zoho limits
      public_positionsOther DetailsOptional
      prob_accredited_scoreLead ScoreNumeric 0–100
      tagsTagsComma-separated
      personal_linePersonalizationCustom field (Text)
    2. Zoho CRM → Leads → Import → Map fields as above. Enable de-duplication on LinkedIn URL + Full Name + Company.
    3. Post-import, create a view filter: Created Today AND Lead Score ≥ 65.
  6. Zoho Campaigns List (Optional, 5–10 min)
    1. Create/maintain list: Prospects—HNI Outreach.
    2. Add only those who explicitly consent or who opt-in via form. For pure LinkedIn outreach, keep messaging on-platform.
  7. Outreach (LinkedIn) (10–20 min)
    1. Use PhantomBuster Network Booster or manual sending (respect daily limits). Personalize with personal_line.
    2. Connection message: Use the profile’s suggested_connection_message (≤ 220 chars).
    3. After acceptance, send the profile’s suggested_followup_message. Include Calendly if appropriate:
      https://calendly.com/nick-levenstein/30min

Governance & Audit

  • Canonical storage: All daily files live in Zoho Docs → Leads/PhantomRuns/<YYYY-MM-DD>/:
    • Leads-YYYY-MM-DD.csv
    • Profiles-YYYY-MM-DD.csv
    • Enriched-YYYY-MM-DD.jsonl
    • Enriched-YYYY-MM-DD.csv
    • Zoho-Import-YYYY-MM-DD.csv
  • Run Log (append daily in a Zoho Doc): date, SN URL used, export count, #approved, #imported, #connections sent, acceptance %, booked calls.
  • KPIs (weekly): Acceptance rate (target ≥ 25%), Reply rate (≥ 10%), Booked call rate (≥ 3%), CR to Opportunity (team-defined).

Platform & Compliance Notes

  • Respect LinkedIn limits: Keep daily connection volume conservative to avoid restrictions. Prefer quality over quantity.
  • Public data only: Use only the fields exported via Phantoms from public profiles.
  • Consent: Do not mass-email scraped profiles via Zoho Campaigns unless they’ve opted in. Keep first contact on LinkedIn.
  • Data retention: Retain raw exports for audit; remove disqualified profiles from CRM views; honor delete requests promptly.

Messaging Templates (Fallbacks)

Connection (≤220 chars)

Hi {FirstName} — noticed your work with {Signal}. We manage AI-assisted derivatives strategies for HNIs/family offices. Happy to swap notes; if useful, we can schedule a quick intro.

Follow-up (after accept)

Thanks for connecting, {FirstName}. We run AI-driven options overlays for BTC with conservative risk controls. If it’s relevant, here’s my calendar: https://calendly.com/nick-levenstein/30min — otherwise glad to keep in touch.

QA Before Import

  • Spot-check 10 profiles: title seniority, company type, obvious mis-tags.
  • Verify prob_accredited_score rationale matches title/company signals.
  • Ensure names split correctly (no ALL CAPS; fix known parsing glitches).
  • Remove recruiters/consultants unless explicitly relevant.

Troubleshooting

Phantom blocked / low results
  • Reduce batch size to 50; add delays; confirm LinkedIn session cookie is fresh.
  • Run at consistent local time; avoid concurrent sessions.
LLM JSON formatting issues
  • Re-prompt: “Return strict JSON only, no prose, one object per profile.”
  • If batching, separate objects with newlines for .jsonl.
Zoho import rejects rows
  • Ensure Last Name present; shorten long fields; confirm custom fields exist (LinkedIn URL, Personalization).
  • Enable de-duplication on LinkedIn URL + Full Name + Company.

Weekly Review (15–30 min, Fridays)

  • Update the saved SN search only with Nick’s approval.
  • Tune thresholds if acceptance or call rates drift < targets.
  • Document any filter changes at top of this SOP (changelog).

Last updated: 22 Sep 2025 (UTC+8)