... Watch this. I'm going to enter a
search query, let's say, real estate in the United States, and
click Submit. Now, keep your eyes on the Google Sheet. In just a moment, you're
going to see a blank spreadsheet come to life. Row by row, it will automatically
populate to fresh, qualified leads. I built this no-code system to scrape,
verify, and deliver thousand fresh leads for just one dollar fifty cents.
We're getting the exact decision makers, their verified
email address, and even an AI-written icebreaker for each one, personalized
directly based on their company website. What you're watching is a system that just
saved me hours of manual work. In this video, I'm
going to show you step by step how I built that exact system from scratch, using
only no-code tools. No prior experience required. And if you want to skip the
setup and start getting leads in minutes, you can get the exact same workflow in the
description box below. And by the way, inside my community, I show you how to
contact these leads on autopilot, automate replies, and book calls without landing
in the spam folder. So if you're interested in that, make sure to join my
community. And by the end of the video, I will also do a detailed price breakdown.
[cash register ringing] But before we start building, let's take a quick look at
the big picture. This is the automation that we are going to build today from
scratch. It's built in n8n, a no-code platform. Just go to n8n.io and click Sign
In. Then you should see this window, and here you can click Create Workflow. Then
you have the same canvas open like in our AI automation here. Everything is here,
drag and drop, and easy to adjust by double-clicking on the nodes. And here's
how it works. When I click here, Execute Workflow, a new pop-up appears here. Here,
I can select the seniority level, for example, founder, owner, director, or
partner. I can select the company size here and the industry, for example, real
estate; the country, for example, United States;
and the lead number, for example, one hundred. When I click now here, Submit,
this whole automation starts running. First, the lead agent figures out how to
configure our scraping agent, then the scraping agent is running and get us all
the leads. Once we receive the leads, they're going through this automation
here. For each lead, we get the website and the website content, and based on
this, we create an icebreaker line for it. Then, this whole thing is saved in a
Google Sheets document here, and like you can see, it's getting updated here
regularly. And without further ado, we will now build this whole thing from
scratch. Make sure to open up the free instructions provided in the description
box below to follow along. Here, I also provide a template for the Google Sheets
document that you can use. Now, we will build the whole automation from scratch.
We will start with the input. First, you go to your overview and click Create
Workflow. Then you give this workflow a name, like Lead Scraper, and add your
first step by clicking here. Then you select On form submission, since we want
to start our workflow with a form submission. Here, you can fill out the
form title, the description, and add different elements. For example, seniority
level. Here you can select Type, for example, Drop-down, and here below, you
can provide different options. For example, founder, owner, director, and so
on. And you can add more form elements by clicking here, Add form element. If you filled out everything correctly, it
should look like this. You can click Pause to copy and paste everything, but
make sure it looks exactly like this here. Once we've done that, we can go back
to the canvas by clicking here, Close, and click Save. When I click now Execute
Workflow, this pop-up appears here. Let's quickly fill it out and click Submit. What will happen now
here is when we double-click on this node, we see here on the right side, the input
we gave. The great part is, in the next node, we can use this output as the input.
Let me show you how. First, you click here, the plus icon, and select AI, then
AI agent. For source for prompt, you select Define below, and here you can type
any prompt. And the great part is you can drag and drop here the different elements
here that will be then used in your prompt. For example, when I type in here
company size, I can reference the company size we gave in the form. But for now, you
click here, Expression, click this little icon, then you go to the instruction, and
under Lead Agent, you copy and paste the whole prompt and then paste it here. Then you close this, close this, and click
here, the plus icon under Chat Model, and type in OpenRouter, and select here,
OpenRouter. The model you can leave as it is, and you need to provide credentials.
For that, you click here and click Create new credential. Then you go to this
website, openrouter.ai, create an account here, and then click here, Keys. Then you
create a new key. Give it a name like n8n. Click Create, copy this key, and paste it
here and click Save. When everything worked fine, you should
see here, "Connection tested successfully." And make sure to add five
to ten bucks here, so you can use this service properly. OpenRouter is a unified
interface for LLMs, so it gives you access to all LLMs like Gemini, ChatGPT, or
Claude, and they even provide free AI models. So once you've done that, you
click here, Close, you close this here, too. Then you double-click here on the
agent and click here, Execute Step. When everything worked fine, you should see
here this output. This output will be used in the next node. But what it basically
does is, it takes our industry here, here, this user-selected industry, and based on
this industry, it looks up what is the closest match out of this available
industries. For example, in this case, for real estate, it's of course, real estate and commercial real estate. But let's
improve it a little because this output we cannot use in the next node so easily. To
improve that, we click here, Require specific output format. Then we close this
here again and click here on the output parser, the plus icon, and select
Structured Output Parser. Then we go to our instructions and copy this snippet
here under Output and paste it here. Then you close this
here and click again, AI Agent, and click again, Execute Step. What happens now is
we get a structured output that you can easily use in the next nodes. Last thing
you have to do is to rename this agent to Lead Agent. Then you close here and click
Save. Now, we got already these two parts finished of our automation. The next part
is the scraping engine. For this, we're using Apify. It's a scraper marketplace
where you can use different scrapers. They're called actors. For this specific
automation, we'll use the Leads Finder. That gives us one thousand leads for one
dollar fifty.... So basically, instead of building our own engine with proxies,
headless browsers, and the other complicated stuff, we prefer to use this
service here because it's pretty affordable and much cheaper than building
it everything from scratch. And now we will be building the scraping engine. When
we're using an external service like Apify, then the process is pretty much
almost the same. First, we send to Apify a job, so it's basically scraping in the
background. Then receive back a job ID. With the job ID, we check if this job is
already finished. If it's not finished, we wait a few seconds and check again, and
we do it so long until it's finished. When it's finished, then we continue here and
get the results first, so the leads, basically. Once we got the leads, we check
if for our search query, we found any leads. If so, if so, we're doing the
personalization. But now let's build this part. Click here the plus icon and type in
Apify and select Apify. If this node is not installed yet, install it quickly and
then select here, Run an Actor. First, we need to provide here our Apify key. For
that, click here, Create new credential, and click Connect my account. Once you've
done that, in Actor, select by ID, and then go here to Apify and select this ID
here, or you can also find it in the instructions. Then paste it here, go back
to the instructions, and copy this snippet here, and paste it
here. When you open this input here, then you see what we are basically sending to
Apify. We want leads for real estate and commercial real estate, the location is
United States. We want only validated emails, and for now, we want to catch only
ten. And now we can click Execute Step. What it basically does, it tells Apify
what to scrape for us. Now, we receive from Apify the status Succeeded, and the
job ID here. This job ID we can use to get our leads. Let's go back here, click the
plus icon, type again, Apify, select here Apify, and select here under Run, Get Run.
For ID, you select here by ID, and drag and drop this element here. And now we can
click Execute Step. Since the status is already succeeded, it means it finished
already the job. Let's go back here, but first, let's check if the job is really
finished. For that, we click here If and select here the If branch. Then we drag
and drop the status here, Succeeded, and make sure it's only true if this status is
equal to Succeeded. Now we click here, Execute Step, and like you can see, the
output is in the true branch. If the output is false, we hit the Wait node. We select this Wait
node, select here five seconds, so it waits five seconds, and then checks again
if the job is finished. Now click here, Save. So once the job is finished, we want
to get the results. For that, we type in Apify, select here Apify, and select here
under Dataset Actions, Get Dataset Items. And here, you need to provide a dataset
ID. For that, you go to the Run an Actor node, and here you simply drag and drop
the default dataset ID to the dataset ID and click Execute Step. If everything
worked fine, you should receive the similar output like this with ten items,
if you selected ten items. So then close this, click the plus icon, type in If,
select this. Then you go to the instructions, and under Results Found, you
copy this, you paste this here, select under Object Exists, and click
Execute Step. We do this to check if we got any results, because there's an edge
case where you don't get any results for your search term. And now we can continue.
We want now to build the personalized engine. For this, we click here the plus
icon and type in loop, and select Loop Over Items, and click here, Execute Step.
What it basically does is it takes these ten items and loops them one by one over
this workflow. The first thing we have to check
is that the lead really has an email. For that, we type in here, If, select here
If, then drag and drop this email here, and select here under, and select here under String Exists, and click Execute Step. This will
make sure we only take leads that really have an email. If they don't have an
email, we just loop over to the next item. By the way, best practice is always to
name your node. For example, here, Has Email. Next, we want also to check if they
have a website. If so, we want to make an icebreaker line. For that, we click here
the plus icon, select again If, but this time, we're drag and dropping the
company website here, select under String Exists, and click Execute Step. Then we
give it a name, Has Website, and close this. If it does not have a website, just
loop over to the next item. If it has a website, we want to make an HTTP request
here. Under method, we select Get, and here we simply drag and drop the company
website here. Then we click Execute Step, and we will receive here an HTML. The
problem is our AI agent cannot read this so well. That's why we want to extract
text. For that, we click here the plus icon, type in code, and select here code,
Code in JavaScript. And now we go to our instructions and select the snippet under
Extract Website Text Content, and paste it here, and click Execute Step. And now we
receive the full website's text content that we can use to create a personalized
icebreaker line. Let's close this and click here the plus icon and type in AI agent, and select here AI agent. Source or
prompt, you select Define below. Then you click here Expression and this little
icon, go to the instructions and copy and paste what's under Icebreaker AI agent,
and paste it here. So this prompt basically provides how we want to make the
icebreaker line, and we have here some examples. I highly recommend to use
examples of high-converting icebreaker lines. Just give the example some
placeholder like here, and let the AI fill out the blanks. Let's close this for now.
Close this again and click here on the chat model, Open
Router. Since we connected it, we don't need to do here anything. You can here
select a different model if you need. For now, we close this. Double-click again on
the AI agent and select here, Require Specific Output. Close this again, click
here, Output Parser. Select here, Structured Output Parser. Go to the
instructions, copy and paste the snippet under Output, paste it here. Double-click
again AI agent, and click Execute Step. Now our AI agent made the perfect
icebreaker line based on the information he received from our scraper. And like you
can see, we created this whole part. The last thing we have to do is to save
everything in a Google Sheets document. For that, you click here the plus icon and type Sheets, and select Google Sheets.
Here, select Append Row in Sheet. First, add your credentials by creating Create
New Credentials and sign in with Google. Once done that, you go here to Document,
select By URL. Open the template provided in the instructions. Click File, Make a
copy, so you have your own copy in your own Google Drive and have access to it.
Then you copy this URL... Then you copy this URL from the Google Sheets document and paste it here. Then you can select
here in the dropdown menu, the Leads sheet. And now it's easy. You take here
from the left the information, like company name, and drag and drop it to the
right field. For example, the company website is in Website, and you fill it out
for all these columns here. In the instructions, I also provided to you all
snippets that you need to make this all work. Just make sure to click Expression,
and then paste the snippet there. Once done that, it should look like this. When
you click now Execute Step, then you should see a new entry in your
Google Sheets document. Now close this here, click on this element and remove it,
and click Save. Congratulations, you are finished. Now you created the exact same
workflow like this one, and it will work the exact same way. Just make sure to
unpin this element here, so when you click Execute Workflow, you
start from scratch. Now let's talk quickly about pricing. So the Apify service costs
you around one dollar fifty per thousand leads. To create thousand personalized
messages with GPT 4.0, it costs you around sixty cents. And to host n8n monthly, it
costs you around twenty-eight dollars if you're hosted by n8n, or you could
technically self-host this whole thing for five dollars. I hope you like this
tutorial and see you in the next one.
Get free YouTube transcripts with timestamps, translation, and download options.
Transcript content is sourced from YouTube's auto-generated captions or AI transcription. All video content belongs to the original creators. Terms of Service · DMCA Contact