LinkedIn Connection Requests from Google Sheets

OpenAI

Read a list of leads from Google Sheets, generate a personalized LinkedIn connection note for each person using AI, then use a browser agent to visit their profile and send the connection request with a custom note. Includes smart skip logic and rate-limit delays.

LinkedInConnection RequestsOutreachBrowser AutomationSalesLead GenerationGoogle SheetsAI Personalization
Needle Team

Send Personalized LinkedIn Connection Requests from Google Sheets

Turn a spreadsheet of leads into personalized LinkedIn connection requests — sent automatically by a browser agent. Unlike messaging workflows that require 1st-degree connections, this template sends connection requests with a custom note to people you're not yet connected with.

What This Workflow Does

Load a list of scraped or curated leads from Google Sheets, let AI write a custom connection note for each person, and have a browser agent visit their LinkedIn profile and send the connection request. No manual copy-pasting, no Chrome extensions, no third-party tools.

The Pipeline

  1. Google Sheets → Lead List: Reads your leads with name, LinkedIn URL, headline, company, job title, and location
  2. AI Personalization: GPT-4.1 writes a unique <280 character connection note per lead — referencing their role, company, and a specific value prop
  3. Smart Skip Logic: The browser agent skips leads who are already 1st-degree connections or have a pending request
  4. Browser Agent: Visits each LinkedIn profile, clicks Connect, adds a personalized note, and sends
  5. Rate Limiting: 15-second delay between requests to stay within LinkedIn's comfort zone

Connection Requests vs. Messages

This template sends connection requests (not messages). Use this when your leads are 2nd or 3rd-degree connections you haven't connected with yet. For messaging existing 1st-degree connections, use Template 089 (LinkedIn Outreach from Google Sheets).

Why Use a Browser Agent Instead of LinkedIn API

LinkedIn's official API doesn't support sending connection requests. Most tools use workarounds that get accounts flagged. Needle's browser agent operates like a real user — navigating pages, clicking buttons, typing messages — which is exactly how LinkedIn expects humans to interact.

Personalization That Actually Works

The AI node receives each lead's full profile context: name, headline, company, job title, location, and search query. It writes a connection note that feels hand-written, not templated. You control the messaging angle, value prop, and CTA in the AI prompt.

Smart Skip Conditions

The browser agent automatically skips sending if:

  • The person is already a 1st-degree connection
  • A pending connection request is already showing

This prevents duplicate requests and wasted actions.

Setup

  1. Prepare your Google Sheet: Upload your leads with columns: name, linkedin_url, headline, job_title, company, location, email, search_query. Use Needle's LinkedIn Search Scraper (Template 065) or LinkedIn Profile Enricher (Template 068) to populate this sheet.
  2. Connect Google Sheets: Add a Google Sheets connector and paste your sheet URL in the Google Sheets node
  3. Connect Use Browser: Add a browser connector and log into LinkedIn in the browser session. Keep your session active.
  4. Customize the AI prompt: Edit the system prompt in the "Personalize Message" node to match your outreach angle, value prop, and CTA
  5. Test with a small batch: Start with 10-20 leads to verify everything works before scaling up

Best Practices

  • Daily limit: Stay under 80 connection requests per day to avoid LinkedIn restrictions
  • Session freshness: Re-authenticate the browser connector if your LinkedIn session expires
  • Note length: Keep notes under 280 characters (LinkedIn's limit for connection notes)
  • Targeting quality: Better leads = higher accept rate. Don't spray and pray.
  • Timing: Run during business hours in your target's timezone for best accept rates
  • Follow-up: Pair with an email outreach workflow for leads who accept your connection

Pairs Well With

  • Template 065 — LinkedIn Search Scraper: Scrape search results into Google Sheets, then feed them into this outreach workflow
  • Template 068 — LinkedIn Profile Enricher: Enrich your lead list with detailed profile data before outreach
  • Template 089 — LinkedIn Outreach (Messages): Follow up accepted connections with personalized LinkedIn messages
  • Template 045 — Cold Outreach Emails to LinkedIn Connections: Follow up accepted connections with personalized email

Tech Stack

  • Lead Source: Google Sheets via Pipedream connector
  • AI Personalization: GPT-4.1 (configurable — swap for Claude or Gemini)
  • Browser Automation: Needle's Use Browser agent (Claude Sonnet 4.6)
  • Rate Limiting: Built-in 15-second wait between requests

Who Is This For

Sales teams, founders, and growth marketers who want to:

  • Scale LinkedIn connection requests without hiring SDRs
  • Send personalized connection notes at volume (not generic "I'd like to add you to my professional network")
  • Automate the most tedious part of prospecting — the manual connect-and-note
  • Keep full control over messaging and targeting
  • Avoid third-party tools that put their LinkedIn account at risk

Want to showcase your own workflows?

Become a Needle workflow partner and turn your expertise into recurring revenue.

Try Needle today

Streamline AI productivity at your company today

Join thousands of people who have transformed their workflows.

Agentic workflowsAutomations, meet AI agents
AI SearchAll your data, searchable
Chat widgetsDrop-in widget for your website
Developer APIMake your app talk to Needle
    Needle LogoNeedle
    Like many websites, we use cookies to enhance your experience, analyze site traffic and deliver personalized content while you are here. By clicking "Accept", you are giving us your consent to use cookies in this way. Read our more on our cookie policy .