# End-to-end B2B real estate lead enrichment & outreach: n8n workflow

> Started by a change in a Google Sheet, and works across Gmail, Google Drive, Google Sheets, Pinecone and one other.

Source: https://millionrounds.com/workflow/end-to-end-b2b-real-estate-lead-enrichment-and-outreach (Millionrounds; every figure on the page links to its filing or article)

[Automation library](https://millionrounds.com/workflows) · [Lead generation](https://millionrounds.com/workflows?category=Lead+generation#library)

# End-to-end B2B real estate lead enrichment & outreach

Started by a change in a Google Sheet, and works across Gmail, Google Drive, Google Sheets, Pinecone and one other. It puts OpenAI behind a retrieval step, so answers are drawn from documents you supply rather than from the model alone. 58 steps, 3 branches: large, and worth reading before you trust it with anything live.

Large Calls a model: OpenAI Retrieval

[Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fend-to-end-b2b-real-estate-lead-enrichment-and-outreach)

**58 steps** Large: read it before trusting it with anything live

**3** Branches: places the flow splits

**0** Loops or waits

**5** Services it connects to

## The flow

Starts it 3 Model 12 Logic 19 Service 24

The steps in the order they run, from what starts it.

- 1 **Fillout Trigger** Fillout trigger *Starts it*
- 2 **OpenAI Chat Model** Lm Chat Open Ai *Model*
- 3 **Embeddings OpenAI** Embeddings Open Ai *Model*
- 4 **Structured Output Parser** Output Parser Structured *Model*
- 5 **Google Sheets Trigger** Google Sheets trigger *Starts it*
- 6 **When clicking ‘Execute workflow’** Manual trigger *Starts it*
- 7 **Embeddings OpenAI1** Embeddings Open Ai *Model*
- 8 **Default Data Loader** Document Default Data Loader *Model*
- 9 **Map Fillout Submission Fields** Set *Logic*
- 10 **Generate Personalized Icebreaker & Lead Score** Agent *Model*
- 11 **Generate Summary for PDF Export** Agent *Model*
- 12 **Pinecone Vector Store** Vector Store Pinecone *Model*
- 13 **Action Field Switch** Switch *Logic*
- 14 **Search PDFs in Google Drive Folder** Google Drive *Service*
- 15 **Insert PDF Text into Pinecone Index** Vector Store Pinecone *Model*
- 16 **Append/Update Raw Leads Sheet** Google Sheets *Service*
- 17 **Parse AI Agent Output (Lead Score & Message)** Code *Logic*
- 18 **Generate PDF Summary via Pdforge API** Http Request *Service*
- 19 **Extract Icebreaker Text Fields** Set *Logic*
- 20 **Download Selected PDF for Processing** Google Drive *Service*
- 21 **Verify Email with Apify** Http Request *Service*
- 22 **Prepare Website Field** Set *Logic*
- 23 **Prepare LinkedIn Profile URL** Set *Logic*
- 24 **Extract PDF URL from Fillout** Set *Logic*
- 25 **Merge LinkedIn Profile & PDF Text** Merge *Logic*
- 26 **Append/Update Leads with AI Summaries** Google Sheets *Service*
- 27 **Download Generated PDF File** Http Request *Service*
- 28 **Parse Icebreaker Subject and Body** Code *Logic*
- 29 **Extract Text from Downloaded PDF** Extract From File *Service*
- 30 **Map Email Validation Fields** Set *Logic*
- 31 **Crawl Company Website Content** Http Request *Service*
- 32 **Fetch LinkedIn Profile Details** Http Request *Service*
- 33 **Download Project Brief PDF** Http Request *Service*
- 34 **Combine All Lead Data** Merge *Logic*
- 35 **Hot Lead Alert Switch** Switch *Logic*
- 36 **Upload PDF to Google Drive1** Google Drive *Service*
- 37 **Map Icebreaker Text for Sending** Set *Logic*
- 38 **Email Validation Status Switch** Switch *Logic*
- 39 **Map Website Text Content** Set *Logic*
- 40 **Format LinkedIn Profile for Insertion** Code *Logic*
- 41 **Upload PDF to Google Drive** Google Drive *Service*
- 42 **Generate LinkedIn Profile Summary** Open Ai *Model*
- 43 **Hot Lead Slack Notification** Slack *Service*
- 44 **Normal Lead Slack Notification** Slack *Service*
- 45 **Append/Update Google Sheet with PDF File url** Google Sheets *Service*
- 46 **Send a message4** Gmail *Service*
- 47 **Merge Email Validation & Website Content** Merge *Logic*
- 48 **Map LinkedIn Data for Merge** Set *Logic*
- 49 **Download PDF from Google Drive** Google Drive *Service*
- 50 **Generate Company Summary** Open Ai *Model*
- 51 **Rename Uploaded PDF with Client Name & Project** Google Drive *Service*
- 52 **Update Google Sheet with Action Status** Google Sheets *Service*
- 53 **Extract Text from PDF** Extract From File *Service*
- 54 **Generate Project Summary** Open Ai *Model*
- 55 **Download Renamed PDF for Sending** Google Drive *Service*
- 56 **Map LinkedIn Data for Merge1** Set *Logic*
- 57 **Email PDF Summary to Internal Team** Gmail *Service*
- 58 **Post Project Alert** Slack *Service*

## How it's built

- **Starts on:** A change in a Google Sheet
- **Steps:** 58, with 3 branches
- **Size:** Large: read it before trusting it with anything live
- **Connects to:** Gmail, Google Drive, Google Sheets, Pinecone, Slack
- **Model:** OpenAI
- **Retrieval:** Answers are drawn from documents you supply, not from the model alone

## Questions

What does it need to run?

An n8n account, plus your own Gmail, Google Drive, Google Sheets, Pinecone and Slack accounts, and a key for OpenAI. You connect your own accounts after importing it; none are included.

What starts it?

It starts on a change in a Google Sheet.

Does it use AI?

Yes. It calls OpenAI. Its answers draw on documents you give it, not on the model alone. Model calls are billed by the provider, not by n8n.

How long does it take to set up?

Take your time. At 58 steps it is large: read it before trusting it with anything live.

How do I import it?

Copy the workflow, open a new workflow in n8n and paste. The steps appear on the canvas, ready for your own accounts.

**Before you run it**

Nothing here has been tested by us. It is somebody's working automation, read and described from its own steps. Treat the connections it wants as a list of accounts it will touch, and read the 58 steps before you point it at anything that matters.

## Run it in n8n

- **Create your n8n account** Free to start. n8n is where the workflow runs. [Create an n8n account ↗](https://millionrounds.com/n8n)
- **Download the workflow** Free with a Millionrounds account. [Download free](https://millionrounds.com/login?next=%2Fapp%2Fworkflow%2Fend-to-end-b2b-real-estate-lead-enrichment-and-outreach)
- **Paste it into n8n** Open a new workflow in n8n and paste. Then connect your own accounts.

Stored with the author's traces removed: canvas notes, instance identifiers, saved credential names and any live document they had left behind.

## Connects to

Each opens the other workflows that use it.

[Gmail](https://millionrounds.com/workflows?service=Gmail#library)[Google Drive](https://millionrounds.com/workflows?service=Google+Drive#library)[Google Sheets](https://millionrounds.com/workflows?service=Google+Sheets#library)[Pinecone](https://millionrounds.com/workflows?service=Pinecone#library)[Slack](https://millionrounds.com/workflows?service=Slack#library)

## Workflows like it

Also lead generation, with the same services where possible, closest in size first.

- [**AI sales agent: fully email handling & lead scoring system** 57 steps · calls a model · Gmail, NocoDB](https://millionrounds.com/workflow/ai-sales-agent-fully-email-handling-and-lead-scoring-system)
- [**Smart email outreach sequence – AI-powered & customizable** 56 steps · calls a model · Gmail, Google Sheets](https://millionrounds.com/workflow/smart-email-outreach-sequence-ai-powered-and-customizable)
- [**Automate business partner outreach with Google Maps and OpenAI** 55 steps · calls a model · Apify, Google Drive](https://millionrounds.com/workflow/automate-business-partner-outreach-with-google-maps-and-open)
- [**Gmail Cold Email Sequence with Google Sheets Tracking** 55 steps · Gmail, Google Sheets](https://millionrounds.com/workflow/gmail-cold-email-sequence-with-google-sheets-tracking)
- [**Local business leads and run AI-powered cold email sequences** 62 steps · calls a model · Gmail, Google Sheets](https://millionrounds.com/workflow/local-business-leads-and-run-ai-powered-cold-email-sequences)
- [**Run a full lead-to-meeting pipeline with Google Sheets** 52 steps · calls a model · Gmail, Google Sheets](https://millionrounds.com/workflow/run-a-full-lead-to-meeting-pipeline-with-google-sheets)
