Skip to main content

Automate hyper-personalized outreach at scale with Bright Data and LLMs

Workflow preview

Workflow preview
100%
Automate hyper-personalized outreach at scale with Bright Data and LLMs preview
Open on n8n.io

Important notice

This workflow is provided as-is. Please review and test before using in production.

1. Workflow Overview

LinkedIn Enrichment & Ice Breaker Generator For SDRs, growth marketers, and founders looking to scale personalized outreach. This workflow enriches LinkedIn profile data using Bright Data and gener...

Best for

  • Lead Generation automation workflows
  • Multimodal AI automation workflows
  • advanced n8n builders looking for reusable templates

Tools used

n8n-nodes-base.manualtrigger, n8n-nodes-base.stickynote, n8n-nodes-base.googlesheets, @n8n/n8n-nodes-langchain.lmchatanthropic, @n8n/n8n-nodes-langchain.chainllm, n8n-nodes-base.httprequest, n8n-nodes-base.set, n8n-nodes-base.wait

Source and attribution

This workflow is cataloged by N8N Workflows and links back to its original n8n.io source page by Yaron Been.

Original n8n.io source

1.1 Workflow description

Title
Automate hyper-personalized outreach at scale with Bright Data and LLMs
Workflow name
Automate hyper-personalized outreach at scale with Bright Data and LLMs

LinkedIn Enrichment & Ice Breaker Generator

For SDRs, growth marketers, and founders looking to scale personalized outreach.
This workflow enriches LinkedIn profile data using Bright Data and generates AI-powered ice breakers using Claude (Anthropic).
It automates research and messaging to help you connect smarter and faster — without manual effort.


🧩 How It Works

This workflow combines Google Sheets, [Brigt Data](Bright Data), and Claude (Anthropic) to fully automate your outreach research:

  1. Trigger

    • Manually trigger the workflow or run it on a schedule (via Manual Trigger or Schedule Trigger).
  2. Read Input Sheet

    • Fetches rows from a Google Sheet. Each row must contain at least a Linkedin_URL_Person and row_number.
  3. Prepare Input

    • Formats each row for Bright Data’s API using Set and SplitInBatches nodes.
  4. Enrich Profile (Bright Data API)

    • Sends LinkedIn URLs to Bright Data’s Dataset API via HTTP Request.
    • Waits for snapshot to be ready using polling logic with Wait, If, and Snapshot Progress nodes.
    • Once ready, retrieves the enriched profile data including:
      • Name
      • City
      • Current company
      • About section
      • Recent posts
  5. Update Sheet with Profile Data

    • Writes the retrieved enrichment data into the corresponding row in Google Sheets (via row_number).
  6. Generate Ice Breaker (Claude AI)

    • Sends enriched profile content to Claude (Anthropic) using a custom prompt.
    • Focuses on recent posts for crafting relevant, respectful, 1–4-line ice breakers.
  7. Update Sheet with Ice Breaker

    • Writes the generated ice breaker to the Ice Breaker 1 column in the original row.

✅ Requirements

To use this workflow, you must have the following:

Google Sheets

  • A Google account
  • A Google Sheet with at least one sheet/tab containing:
    • Column: Linkedin_URL_Person
    • Column: row_number (used for mapping input and output rows)

Bright Data

  • A Bright Data account with access to the Dataset API
  • An active dataset that accepts LinkedIn URLs
  • API key with Dataset API access

Anthropic Claude

  • An Anthropic API key (for Claude 3.5 Haiku or other Claude models)

n8n Environment

  • Access to HTTP Request, Set, Wait, SplitInBatches, If, and Google Sheets nodes
  • Access to Claude integration (via LangChain nodes: @n8n/n8n-nodes-langchain)
  • Credential manager properly configured with:
    • Google Sheets OAuth2 credentials
    • Bright Data API key
    • Anthropic API key

⚙️ Setup Instructions

Step 1: Copy the Google Sheets Template

> 📄 Click here to make a copy

  • Fill the Linkedin_URL_Person column with LinkedIn profile URLs you want to enrich
  • Do not modify headers or add filters to the sheet
  • Leave other columns (name, city, about, posts, ice breaker) blank — the workflow fills them

Step 2: Connect Your Accounts in n8n

  1. Google Sheets: Create a credential under Google Sheets OAuth2 API
  2. Bright Data: Add your API key as a credential under HTTP Request (Authorization header)
  3. Anthropic: Create a credential for Anthropic API with your Claude key

Step 3: Import and Configure the Workflow

  1. Import the workflow into your n8n instance.
  2. In each Google Sheets node:
    • Select the copied Google Sheet
    • Select the correct tab (usually input or Sheet1)
  3. In the HTTP Request node to Bright Data:
    • Paste your Bright Data dataset ID
  4. In the Claude prompt node:
    • Optionally adjust the tone and length of the ice breaker prompt

Step 4: Run the Workflow

  • Test it using the Manual Trigger node
  • For daily automation, enable the Schedule Trigger and configure interval settings
  • Watch your Google Sheet populate with enriched data and tailored ice breakers

🧠 Tips & Best Practices

  • Bright Data Delay: Snapshots may take time. The workflow polls the status until complete.
  • Retry Protection: If and Wait nodes avoid infinite loops by checking snapshot status.
  • Mapping via row_number: Critical to ensure data is updated in the right row.
  • Prompt Engineering: You can fine-tune Claude's behavior by editing the text prompt.

🧾 Output Example

Once complete, each row in your Google Sheet will contain:

Linkedin_URL_Person Name City Company Recent Post Ice Breaker
linkedin.com/... Jane Doe NYC ACME Corp “Why AI should replace meetings” "Loved your post about AI and meetings — finally someone said it!"

💬 Support & Feedback

Questions? Want to tweak the prompt or expand the enrichment?

📧 Email: [email protected]
📺 YouTube: @YaronBeen
🔗 LinkedIn: linkedin.com/in/yaronbeen


1.2 Logical Blocks

This catalog entry is organized from the workflow JSON. The node-level section below shows the executable blocks available for review before importing the template.

2. Block-by-Block Analysis

Block 1 - When clicking "Test workflow"

Type / Role
n8n-nodes-base.manualTrigger - manualTrigger
Config choices
Version 1

Block 2 - Sticky Note

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 3 - Get rows to enrich

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.3

Block 4 - Sticky Note3

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 5 - Sticky Note5

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 6 - Sticky Note7

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 7 - Sticky Note9

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 8 - Anthropic Chat Model

Type / Role
@n8n/n8n-nodes-langchain.lmChatAnthropic - lmChatAnthropic
Config choices
Version 1.3

Block 9 - Sticky Note4

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 10 - Sticky Note1

Type / Role
n8n-nodes-base.stickyNote - stickyNote
Config choices
Version 1

Block 11 - Basic LLM Chain- Ice Breaker

Type / Role
@n8n/n8n-nodes-langchain.chainLlm - chainLlm
Config choices
Version 1.6

Block 12 - BrightData_Get_Linkedin

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 13 - Adjust_input_for_loop

Type / Role
n8n-nodes-base.set - set
Config choices
Version 3.3

Block 14 - HTTP_Request_Post_Request_BrightData

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 15 - Wait_For_API_Call_Results

Type / Role
n8n-nodes-base.wait - wait
Config choices
Version 1.1

Block 16 - API_Call_Snapshot_Progress

Type / Role
n8n-nodes-base.httpRequest - httpRequest
Config choices
Version 4.2

Block 17 - IF-Checking_Status_API_Call

Type / Role
n8n-nodes-base.if - if
Config choices
Version 2.2

Block 18 - Google Sheets - Update Row with data From API

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.3

Block 19 - Google Sheets - Update Row with Ice Breaker

Type / Role
n8n-nodes-base.googleSheets - googleSheets
Config choices
Version 4.3

Block 20 - Run Workflow on a certain Schedule

Type / Role
n8n-nodes-base.scheduleTrigger - scheduleTrigger
Config choices
Version 1.2

Block 21 - Loop Over Items- All Prospects

Type / Role
n8n-nodes-base.splitInBatches - splitInBatches
Config choices
Version 3

3. Summary Table

Workflow Automate hyper-personalized outreach at scale with Bright Data and LLMs
Complexity advanced
Nodes 21
Categories Lead Generation, Multimodal AI
Author Yaron Been
Published 15 Apr 2025

4. Reproducing the Workflow from Scratch

  1. 1. Download the workflow JSON

    Use the JSON export at /data/workflows/3561/3561.json as the source template for this automation.

  2. 2. Import the template into n8n

    Open n8n, import the downloaded JSON, and review each node before activating the workflow.

  3. 3. Configure credentials and variables

    Replace placeholder credentials, API keys, webhook URLs, account IDs, and environment-specific values with your own settings.

  4. 4. Test with sample data

    Run the workflow manually or in a staging workspace, inspect node output, and confirm downstream systems receive the expected data.

  5. 5. Activate and monitor

    Enable the workflow only after testing, then monitor executions, errors, and rate limits during the first production runs.

5. General Notes & Resources

Review imported nodes carefully before activation. This catalog entry is intended to help you inspect the workflow structure, understand required services, and find related templates faster.

Node names, credentials, schedules, webhook paths, and external service limits may need adjustment for your workspace.

Frequently asked questions

What does Automate hyper-personalized outreach at scale with Bright Data and LLMs do?

LinkedIn Enrichment & Ice Breaker Generator For SDRs, growth marketers, and founders looking to scale personalized outreach. This workflow enriches LinkedIn profile data using Bright Data and gener...

What do I need before importing this workflow?

Review the workflow JSON, configure any required credentials in n8n, and test the automation in a safe workspace before using it in production.

Can I customize this workflow?

Yes. Use the block-by-block analysis and the downloadable JSON to inspect each node, then adjust credentials, prompts, schedules, filters, or destinations for your Lead Generation, Multimodal AI use case.