--- name: linkedin-outreach description: "Use when running LinkedIn social selling as a repeatable motion — Sales Navigator saved searches and trigger alerts, weekly request budgets, fixing a low acceptance rate, turning profile views and post engagers into warm threads, logging every touch. NOT the note or DM copy (that is `cold-outreach`), NOT the deal after a reply (that is `sales-pipeline`)." tags: [linkedin, social-selling, sales-navigator, outreach, pipeline] recommends: [cold-outreach, lead-gen, sales-pipeline, linkedin-strategy, linkedin-content] origin: risco --- # Linkedin Outreach — The Loop and Its Ledger *You run the LinkedIn social-selling motion and keep its score: **who** to touch, **when**, through **what** warm-up, and **how** the loop is run and logged. The thesis is warm-first — engagement before connection, signal before send, ledger before "I'll remember it." The output is a running system plus a touch ledger under `02-DOCS/`, never a finished line of copy: when prose is needed you write the brief and hand it off, then stay in the loop.* ## Boundary The sharpest line is against `../cold-outreach/SKILL.md`, and it splits on message-vs-system: - **A single message** — the connection note (≤300 chars), the DM bump, its wording and per-inbox send cadence → cold-outreach. If the ask is "write this" or "fix this template," it is not yours. - **The system** — who to touch, when, the warm-up, the budget, the ledger → here. When both are in play, this skill drives and delegates the copy. Also not yours: sourcing / scoring the raw prospect list and ICP definition → `../lead-gen/SKILL.md`; the deal after a reply, i.e. stages, forecast, CRM tasks → `../sales-pipeline/SKILL.md`; writing or scheduling LinkedIn *posts* → `../linkedin-content/SKILL.md`; brand growth and positioning → `../linkedin-strategy/SKILL.md`. ## The loop Five phases, in order. Each has a *why* and yields one artifact; the artifact gates the next phase. Skipping a phase is how acceptance collapses. 1. **Target** — *why:* outreach timed to a reason beats outreach timed to a calendar. → Yields a Sales Nav saved search + trigger alerts (job change, funding, recent post). 2. **Warm** — *why:* a cold, context-free request is the worst-accepting move you can make; engaging first is what fixes it. → Yields a logged pre-touch (profile view + one genuine comment/like 1–2 days prior). 3. **Connect** — *why:* the request is the smallest, most rate-limited move; spend it deliberately. → Yields a sent request inside the weekly budget, note-or-no-note chosen by goal. 4. **Convert** — *why:* an accept is not a conversation; the choreography turns a signal into a warm 1:1. → Yields a thread with a real reply, copy delegated to cold-outreach when needed. 5. **Log** — *why:* a motion you can't measure you can't repeat or fix. → Yields a row in the `02-DOCS/` ledger with the outcome. Each phase gets a section below; the last one compresses all five into a day. ## Target with Sales Navigator Build the saved search from the ICP, not from a name list: - **Filters that matter:** geography, current job title (use the title field, not keywords, to avoid past-role noise), seniority, company headcount, industry, and `Posted on LinkedIn in past 30 days` (active profiles accept and reply far more). Save it; Sales Nav re-runs it and surfaces new matches. - **Trigger alerts worth turning on:** *changed jobs in last 90 days* (new role = new budget, new pain), *company funding events*, and *posted recently* (a fresh post is your warm-up hook). Time the request to a trigger, never to a Tuesday. - **InMail reality:** Core and Advanced both ship **50 InMail credits/mo**, rolling over up to 3 months (max 150 accumulated); an InMail that gets a reply within 90 days is **credited back**. Spend InMail on out-of-network leads where a connection request can't reach — not on people you could warm up and connect to for free. Free vs Core vs Advanced — buy on the job, not the brand: | You need | Tier | 2025 price | Why | | --- | --- | --- | --- | | Run the loop on a tight ICP, manual budget | Free | $0 | Works if you stay disciplined; no saved-search alerts. | | Saved searches, 40+ filters, lead/account alerts, 50 InMail/mo | Core | $119.99/mo ($1,079.88/yr) | The default for a working social seller. | | + TeamLink, Smart Links, buyer-intent, Account/Lead IQ, CRM sync | Advanced | $159.99/mo ($1,799.88/yr) | Only when a team or CRM sync is real. | Filter recipes per ICP, trigger-alert setup, and the full Core-vs-Advanced buy math → `references/sales-navigator-playbook.md`. ## The connection motion **Engagement-before-connect ritual.** 1–2 days before the request: view the profile, follow the company page, and drop **one genuine** comment or like on a recent post. This is what moves acceptance from ~20–30% (cold) to ~60%+. Log the pre-touch — it is phase 2, not optional flavor. **Note or no note — read the paradox correctly.** A personalized note barely moves *acceptance* (26.42% with vs 26.37% without; some 2025/26 datasets show no-note accepting *higher*). But a note with real context nearly **doubles the post-accept reply rate** (9.36% vs 5.44%). So decide by goal: | Your goal | Note? | Why | | --- | --- | --- | | Maximize the **accept** (build network, retarget later) | No note (or near-empty) | Notes don't lift acceptance; an empty request often accepts as well or better. | | Maximize the **reply** after accept | Short context note | Real context roughly doubles reply; worth the friction only when you have a true hook. | | No genuine hook exists | No note | A generic note is worse than none — it reads as a pitch. | When you do send a note, you do **not** write it here — hand the brief (the hook, the person, the goal) to `../cold-outreach/SKILL.md`. **Weekly request budget — the cap is a rolling weekly limit, not a daily reset.** | Account | Realistic weekly cap | Daily target | Health rule | | --- | --- | --- | --- | | Free | ~100/wk | ~20/weekday, stay under ~80/wk | Pause and warm more if acceptance drops below ~30%. | | Premium / Sales Nav | up to ~200/wk | up to ~40/day | Only with strong SSI and acceptance >40%; otherwise treat as free. | Over the cap, requests get throttled or the account flagged. Below ~30% acceptance you are spraying — go back to phase 2 instead of pushing volume, and withdraw stale pending requests before they pile up. ## Engagement → conversation A signal is an opening. Match the signal to a play; the play is choreography (timing, sequence, what to reference), never finished prose. | Signal | Play | Copy? | | --- | --- | --- | | Connection just accepted | Wait, don't pitch. Reference *why* you reached out (their post/role/trigger), ask one genuine question. | Brief → cold-outreach | | Profile viewer (they viewed you) | Soft, warm reply: "Saw you stopped by — noticed [their thing], curious how you handle X?" | Brief → cold-outreach | | Post engager (liked/commented your post) | Thank or build on their comment, then DM a related question tied to their work. | Brief → cold-outreach | | Comment thread (they engaged a third party's post) | Add value in-thread first, connect with that context the next day. | Brief → cold-outreach | Worked example — the move, not the words: ```text Bad (pitch-on-accept): Accepted → "Thanks for connecting! We help teams like yours cut reporting time 40% with our analytics platform — open to a 15-min demo Thursday?" Reads as a trap; reply rate craters. Good (reference-then-ask): Accepted → "Appreciate the connect — your post on attribution gaps in ecommerce hit home. How are you splitting paid vs organic credit right now?" Opens a real thread; the product never comes up until they ask. ``` ## Hand off to pipeline You run the loop up to a **warm intro or a booked call** — then you stop and hand off. Buying-signal tells in a thread: they ask about price/timeline, mention an active project or pain, reference budget or a decision date, or say "send me more." When you see one: 1. Book the call or send the warm intro. 2. Log the outcome (`call_booked`) in the ledger. 3. Hand the thread + context to `../sales-pipeline/SKILL.md` — the moment a deal exists it is theirs, and you set no stages or forecasts. ## The ledger (02-DOCS) One file. Path: `02-DOCS/linkedin-outreach/touches.csv`. The header row is fixed (verify.sh checks it verbatim): ```csv date,name,profile_url,channel,trigger,action,stage,outcome,next_touch ``` - `channel`: `connect` | `inmail` | `dm` | `comment` | `view`. - `outcome` (enum, no blanks): `requested` | `accepted` | `replied` | `conversation` | `call_booked` | `dead`. - Never leave a literal merge token (`{first_name}`, `[company]`, `XXXX`, `TODO`) in a cell — verify.sh fails on it. Full column spec, the outcome enum, a filled 5-row example, and the weekly-review formulas → `references/ledger-schema.md`. **Weekly review ritual** (15 min, same day each week). Compute from the ledger: - **Acceptance %** = accepted ÷ requested. - **Post-accept reply %** = replied ÷ accepted. - **Conversations → calls %** = call_booked ÷ conversation. - **Touches/week** = rows added this week (is the loop actually running?). If acceptance < ~30%, warm harder (phase 2). If reply < ~10%, your hooks are weak (better brief to cold-outreach). If touches/week is near zero, the loop stopped — that's the real failure. ## Anti-patterns | Bad | Why it bites | Do instead | | --- | --- | --- | | Spray connection requests over the cap | Rolling weekly limit; throttled or account-flagged | Stay under ~80/wk free, ~200 Premium with >40% accept | | Pitch the instant a connection accepts | Reads as a trap; reply rate craters | Reference their context, ask one real question first | | Automation that ignores the rolling limit | Bursts trip LinkedIn's detection; account at risk | Pace within the budget; warm-up beats volume | | Read "notes don't help" as "context never helps" | Notes don't lift *accept*, but context doubles *reply* | Decide note by goal: accept→none, reply→context | | Chase SSI as the goal | SSI is a lagging proxy; high SSI ≠ pipeline | Track acceptance/reply/calls; let SSI follow | | Run outreach with no ledger | No measurement → no repeatable motion | Log every touch + outcome to `02-DOCS/` | ## Daily 30-minute routine Run this as a checklist; it is the loop compressed into a day. - [ ] **Engage (10 min):** comment genuinely on 5–8 posts from your saved search and from people you plan to connect with this week (phase 2 warm-up bank). - [ ] **Connect (5 min):** send today's requests from the saved search / trigger alerts, inside the weekly budget; note-or-no-note by goal (phase 3). - [ ] **Convert (10 min):** progress 2–3 warm threads — accepted connections, profile viewers, post engagers — using the signal→play table; delegate any copy to cold-outreach. - [ ] **Hand off (2 min):** any buying signal → book/intro, then route to sales-pipeline. - [ ] **Log (3 min):** write every touch and outcome to `02-DOCS/linkedin-outreach/touches.csv`. Weekly, run the review ritual and adjust the next week's targeting. That closes the loop back to phase 1.