Back to RB2B
Patrick Spychalski 11 min

How to Write Custom Messages Based on Intent Signals


Can you automatically write custom email or LinkedIn messages based on intent signals? Yes! Patrick Spychalski teaches you how.



0:00

All right, so in this video, I'm going to show you how to write custom email/

0:03

linkedin messaging

0:05

lines to the people that visited your website based on certain intent signals.

0:10

You can do this by using a tool called clay, which directly integrates with RB2

0:13

B, allowing

0:13

you to automatically write these first lines, automatically qualify them for

0:16

these intent

0:17

signals, and send those first lines to an email tool.

0:20

So in this video, I'm just going to show you how to qualify based on those

0:22

intent signals

0:23

and how to add them to a clay table automatically.

0:26

So how do you connect clay in RB2B?

0:28

So if you go to RB2B itself, you can actually go down this integrations column,

0:31

and you'll

0:32

notice that there are a bunch of them, but of course we are looking for clay.

0:35

If you click on it, it's asking for a webhook URL.

0:38

So in order to get that webhook URL, we actually go over to clay and click

0:42

Create New, and

0:43

we can go to Table and then scroll down to import data from webhook.

0:47

And once we click New Blank Table, it will actually give us a webhook URL that

0:51

we can

0:51

then copy, go back to RB2B and paste right here.

0:56

And that's all you have to do.

0:57

Now all of your website visitors will automatically stream into your clay table

1:00

very, very easily.

1:02

From there, we can actually go into the table that I've already built out

1:05

because of course

1:06

I've had my RB2B running for a little while, and it's been able to populate

1:09

some people

1:10

into my clay table.

1:12

So the way in which this flow works is that it's looking to see if the people

1:17

that reached

1:19

or visited my website qualify for any of the intent signals that I want to

1:23

qualify by.

1:24

So here are the lists of the intent signals I am looking for from these

1:28

prospects.

1:28

The first one is that whether they are hiring for a sales position at their

1:32

company, the

1:33

second is whether the person that visited my website was recently hired for

1:37

their role.

1:38

The third is whether the company that the person works for recently posted

1:42

about AI,

1:42

and of course we have a backup just in case nobody matches one of those intent

1:47

signals.

1:48

So we have a first line right now for each one of these.

1:50

This one is saw company names open sales roles and figured you were looking for

1:53

ways

1:53

to scale your outbound.

1:54

If they were just hired for the role, congrats on the new role, figure that as

1:57

company names

1:57

new title, you're looking for a way to increase top of funnel without spending

1:59

too many resources.

2:01

The third one is saw your post about post details and figured you might be

2:04

interested

2:05

in another cool AI tool.

2:06

And of course the backup is just saying, hey, I came across your LinkedIn, I

2:08

thought you

2:08

might be interested in clay.

2:10

In this case, of course, I decided to do a campaign selling people on clay

2:14

itself.

2:14

So how do we actually find the data to back these intent signals to determine

2:18

whether a

2:19

company actually qualifies?

2:21

Well, you'd have to do a ton of manual research to determine this, but luckily,

2:24

clay is able

2:25

to do this all for you automatically, saving you a ton of time, and of course,

2:28

creating

2:29

an automatic flow that has a website visitor, auto important to clay, and

2:34

completely enrich

2:35

the person to determine whether they fit the intent signal.

2:38

And as you'll see in a moment, write that first line for us without us having

2:41

to do any

2:42

work.

2:43

All right, so let's get into the actual clay table now and I'll walk you

2:45

through the entire

2:46

flow end to end.

2:47

So a lot of this data was already populated by RB to be the first name, the

2:51

last name,

2:51

their email, their title, their company name, and their LinkedIn URL.

2:55

All of this was given to me by RB to be automatically.

2:57

So I didn't even need to do anything to get to this data.

2:59

It just flew into my table right when somebody visited my website.

3:02

However, there are other pieces of data that I might need in order to make

3:05

these qualifications

3:07

to match these intent signals.

3:09

So in order to do that, I always like to do a base level enrichment of the

3:12

person and

3:13

their LinkedIn profile.

3:14

This is pretty much a tool that allows you to find every data point of a person

3:17

's LinkedIn

3:18

profile very quickly.

3:19

All you have to do is click add enrichment and enrich person.

3:24

And you'll see here that if you click on this and throw in their LinkedIn URL,

3:26

you can then

3:27

get data on the person by just clicking on this cell.

3:31

So these enrichments in clay work all pretty similarly, which is they ask you

3:35

for a piece

3:35

of data about a certain person.

3:37

You give them that data and they pop out something new for you, whether it's

3:40

their LinkedIn profile

3:41

data, their email, their phone number, their company's revenue.

3:44

It's really, I mean, the sky's a limit.

3:47

So ultimately, all I had to do was give them my person's LinkedIn profile and

3:50

it found

3:51

me all of this information, their summary, where they used to work, their

3:54

latest experience,

3:56

their headline, their title, all of this.

3:58

Now I have the reason I enriched the person in this case is because I needed to

4:02

find some

4:03

company data to make these qualifications.

4:06

So actually, when I went and found their company's LinkedIn by just going to

4:09

latest experience

4:10

and popping out this URL, I then decided to enrich the company as well.

4:14

So same process, I just typed in enrich company and clicked on this and threw

4:18

in their company's

4:19

LinkedIn URL.

4:20

And you can see here, I have a bunch of company data as well, their founding

4:24

date, the country

4:25

they're based in, their general employee size, their industry.

4:28

Again, it goes on and on.

4:30

The reason I needed to do this was so I could run this next integration.

4:34

So as I mentioned before, I'm looking to see if the person's company posted

4:38

about AI recently

4:39

on LinkedIn.

4:40

That is one of my intent signals and I'm planning on writing this custom first

4:43

line.

4:44

Which that is the case.

4:46

So I went to add enrichment and I just looked up recent posts and you can see

4:49

here, we can

4:50

find the recent posts by a person or a company.

4:53

I threw in the company's LinkedIn profile and you can see here that some posts

4:57

popped up

4:58

for some of the companies, not all of them, but some of them.

5:01

And that's all we needed because again, we're just trying to see the ones that

5:04

have it.

5:05

However, I don't know whether these posts, which can be accessed right here,

5:09

actually

5:10

tell me anything about AI.

5:12

What if these aren't AI based posts, maybe it's posted about something else in

5:16

the org.

5:16

And again, the only thing I'm looking for is whether the company's posts

5:19

mention AI

5:20

and some capacity.

5:22

So the way I can figure this out is actually by using the open AI integrations

5:25

within clay,

5:26

which you can kind of think of as chat GPT being applied to 50, 100, 1000 rows

5:31

at any given

5:32

point and allowing you to prompt at scale.

5:36

So all I have to do there is click Adam Richmond, type in open AI and you will

5:38

see this generate

5:39

text section right here.

5:41

Very easy.

5:42

And when you click on it, you have a prompt just like you would in chat GPT.

5:44

However, the difference is you can say something like, tell me whether and

5:48

instead of putting

5:49

the person's name in, you're actually going to put the entire column in, thus

5:53

allowing

5:54

you to customize your prompt for each one of the rows.

5:58

So if I exit this prompt, you can see that I actually already did this for our

6:01

posts.

6:02

I said pick the LinkedIn post that most relates to AI from the LinkedIn posts

6:06

and print out

6:06

the text.

6:07

I find an AI related post and print no, and I went and ran the integration.

6:11

And you can see here that a lot of the time it couldn't find any AI related

6:14

posts, which

6:15

again is fine, but sometimes it could.

6:17

So it would print out the texts for all of the AI related posts that I found,

6:20

which is

6:21

great.

6:22

So we now know that there are quite a few companies here that actually match

6:25

the criteria

6:26

we're looking for.

6:27

However, we haven't written a first line.

6:29

We need to be able to reference this post in some capacity to make it seem like

6:32

we're actually

6:34

doing our research when reaching out to prospects.

6:37

Luckily, open AI is quite versatile.

6:39

So we are able to use yet another open AI integration to write our congrat

6:43

ulatory sentence

6:44

based on that post.

6:46

I said use the following news article info, which was pretty much the post to

6:49

create a

6:50

congratulatory into intro sentence.

6:53

It should be formatted as congrats on text, keep the output under 10 words.

6:55

And I fed a little example in here.

6:58

Then I just gave the post text from right here into the open AI integration.

7:02

And voila, we now have ourselves a first line based on the post.

7:07

So congrats on closing your first investment round.

7:09

Congrats on the smart cat templates launch.

7:11

Congrats on being a CNBC disruptor 50 company.

7:14

We have an awesome first line to feed into our eventual email or LinkedIn

7:20

message.

7:21

Now I wanted to make sure that I knew which companies qualified for the intent

7:26

signal that

7:27

I was looking for.

7:28

Luckily, clay has this really cool thing called formulas and you can actually

7:33

check boxes

7:33

based specifically on certain attributes.

7:36

Let me show you how to do that.

7:38

So if you click add column and you go to formula, you can type in something

7:41

long lines of like,

7:42

only check the box if.

7:46

And then we can go and find a column.

7:48

So for example, we can say AI post line, this congratulatory line we just wrote

7:53

is not empty.

7:55

And generate formula.

7:58

You'll see here that the ones that have it will say true.

8:01

I can save it.

8:03

And suddenly we have all checked boxes based on whether this first line was

8:09

written.

8:10

As you can probably imagine, we only wanted the first lines written that didn't

8:14

contain

8:15

no, which we were able to do very easily.

8:19

And you can see here that this post check is checked every time we have

8:22

ourselves a first

8:23

line.

8:24

So that is our first intent signal completely done.

8:28

That is also the hardest one of this flow.

8:30

So the next one is whether they started their job recently.

8:34

So I think for this one, I did the past six months.

8:37

Again, I use another formula and just told the formula using plain English.

8:40

If the person start, they was in the last six months and the AI post check is

8:44

not true.

8:45

So they didn't qualify for the previous intent signal and check this box.

8:49

And voila, we have this box checked for everybody whose role started in the

8:54

past six months,

8:55

which will again prompt this line right here, congrats on the new role, et c

8:59

etera, et cetera.

9:01

The next one I'm looking for and the final one I'm looking for is whether the

9:03

company

9:03

is hiring for a sales position.

9:06

As you can imagine, Clay has an integration for this.

9:08

You'd have to click on add enrichment and then type in open jobs.

9:14

And we have job openings right here.

9:16

I ran that integration, found that there were quite a few sales jobs in some of

9:19

these companies.

9:20

And every time there was a sales job found, one, more than one doesn't matter.

9:25

I had the formula check this box.

9:26

So I went to edit column.

9:28

If the job count is over zero, check the box voila.

9:31

So you might be wondering yourself, why do I have all these check boxes,

9:35

especially even

9:36

the backup one, right?

9:37

So if they don't fit these three, we have this fourth one being checked.

9:40

Why do I have these check boxes?

9:41

It seems like kind of overkill.

9:43

Like why am I doing it?

9:44

The reason for that is because I'm having this first line print out based on

9:48

which box is

9:49

checked.

9:50

So again, we have these first lines for each one of our intent signals.

9:53

What I'm doing here is I'm writing a first line based on this intent signal.

9:57

So for first line final, I'm using yet another formula.

10:00

As I mentioned before, these formulas are awesome and you don't even have to

10:03

use code

10:04

or anything.

10:05

You can just use plain English as you'll see in a second.

10:07

So I clicked add formula, which is right down here.

10:11

And we'll ask you to describe the formula you want and in that area, I put if

10:16

AI post

10:17

check is checked, then print this line.

10:19

If the new role check is checked and print this line, if open roles check is

10:22

checked

10:22

and print this line and the backup is checked and print this line.

10:26

So it's pretty much saying depending on the intent signal, write the first line

10:29

that matches

10:30

the intent signal that we found for the person or company.

10:34

From there, you can look at the results here and see some pretty cool stuff.

10:37

So saw extension open sales roles came across your LinkedIn.

10:41

So that's our backup.

10:43

We can go down to saw sure codes open sales roles again.

10:47

Congrats on the smart cat templates launch referring to the AI post again.

10:51

Pretty sweet.

10:52

It has a custom first line based on the intent signals.

10:55

And of course, you can do this with any lines, not just opening lines.

10:58

You can do it with entire emails if you'd like.

10:59

And it's a really cool way of customizing your emails and segmenting people and

11:03

companies

11:03

in a way that really wasn't able to be done before.

11:05

And again, this can be done automatically with all of your website visitors and

11:08

sent into

11:09

a campaign.

11:10

So I hope this was helpful.

11:11

Feel free to reach out to any questions and yeah, appreciate it.

11:13

[BLANK_AUDIO]