Turn a lead spreadsheet into personalized cold-email openers with AI

Drop a lead spreadsheet into Google Drive and AI researches each company's website to write a personalized opener.

How the work actually flows

It branches. Exactly one path is taken; runs once per one per lead row.

Pattern: Multiple Instances without Synchronization (12) · Exclusive Choice (4) · Simple Merge (5)

flowchart TD trig>"new lead spreadsheet uploaded"]:::trig s0[["fetch website content"]]:::mi s1["ai checks business info"]:::svc s2[("save results to sheet")]:::store s3["send telegram notification"]:::task trig --> s0 s0 --> s1 s2 --> s3 gx{"× site has usable info"}:::gate s1 --> gx p00["claude writes opener"]:::task gx -->|"info found"| p00 p10["skip lead"]:::task gx -->|"no info found"| p10 jn{"○ continue processing"}:::gate p00 --> jn p10 --> jn jn --> s2 out[/"spreadsheet updated with personalized openers"/]:::out pay{{"personalized outreach at scale without manual research"}}:::pay s3 --> out out --> pay classDef task fill:#e7f6fe,stroke:#34b8f0,color:#2c2a29 classDef svc fill:#f6f8fa,stroke:#7c8795,color:#2c2a29 classDef mi fill:#e7f6fe,stroke:#0079a8,color:#2c2a29,stroke-width:2px classDef human fill:#fff,stroke:#0079a8,color:#0079a8 classDef store fill:#f6f8fa,stroke:#0079a8,color:#2c2a29 classDef trig fill:#00a4eb,stroke:#0079a8,color:#fff,font-weight:bold classDef trigtime fill:#00a4eb,stroke:#0079a8,color:#fff,font-weight:bold classDef trigdata fill:#8ad4f5,stroke:#0079a8,color:#06314c,font-weight:bold classDef gate fill:#fff,stroke:#e8a23d,color:#6b4708,font-weight:bold classDef out fill:#1f9d6b,stroke:#167a53,color:#fff,font-weight:bold classDef pay fill:#06314c,stroke:#021f33,color:#fff
Starts itA stepAn outside serviceRuns once per itemA record or sheetOne path onlyPaths rejoinResultPayoff
Build size
Advanced

A larger build with multiple systems, AI reasoning, and custom rules.

Business functions
AI Agents & Autonomous SystemsEmail AutomationSpreadsheet & Database OpsWeb Scraping & Data CollectionFile & Cloud Storage
Connects
Google DriveGoogle SheetsClaudeOpenAITelegramJina AI

The problem it solves

Personalizing outreach at scale means digging through each prospect's website for something worth mentioning, which is slow and repetitive. When you're moving through a big list, it's tempting to skip the research and send something generic instead. Either way you lose time or you lose response rate.

Who it fits

Sales teams and agencies running cold outreach campaigns from a lead list.

How it works

  1. Triggers when a new spreadsheet of leads is added to a Google Drive folder
  2. Reads each row and fetches the content of the lead's company website
  3. AI checks whether the site has real business information to work with
  4. Claude writes a short, personalized opening line based on what it found
  5. The summary and opener are saved back into the spreadsheet, and you get a Telegram message when it's done
What you get

Openers waiting in your sheet ready to send

Drop a spreadsheet of leads into Google Drive and each row comes back with a personalized opening line based on the company's website.

What you get

A spreadsheet updated with a company summary and a personalized cold-email opener for every lead.

What you need

A Google account, a Jina AI API key, an OpenAI API key, an Anthropic API key, and a Telegram bot.

We can build this. But should you?

The hard question is not how to build it. It is whether this is the right thing to build first.

That is what a Fractional Chief AI Officer figures out with you, before anyone writes a line of code.

Let's Talk Strategy

Related automations

Back to the AI Playbook