How To Cold Call With AI (For Beginners)

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
one of the biggest opportunities for AI in businesses is here completely replacing the need for salespeople businesses are currently spending tens to hundreds of thousands of dollars on salespeople inside the business or externally sales people's job is to get a large lead list and call prospects all day tirelessly trying to find someone and this process usually takes weeks if not months to do but now we have ai phone callers which are realistic sounding quick to respond and we can deployed at scale calling hundreds to thousands of leads in minutes any business not taking advantage of this technology is missing out on such an incredible opportunity to scale their Outreach in this video you will learn how to properly build test and deploy a scalable outbound AI phone caller this includes what software to use how to create and test your prompts capturing and storing data how to AB test different prompts to capture the most amount of sales possible and much more I'm first going to cover vy. a 11lbs and mac.com which are the three software that I will use to build these systems vy. a is what we will use for the AI voice caller I've tested several voice caller platforms here on the channel and I've found vapy to be a great allround solution vapy provides quick responses and allows for live data in the conversation and is also really coste efficient 11 Labs is what I'll use to get custom realistic sounding voices 11 Labs provides an entire voice library to choose from and is quite a few settings on vappy as well that we can use to get the most realistic voice which I will go through as well and lastly I will use make.com to run the calling automation where we can have a list of leads in any software that triggers it an automation to go ahead and call that lead we will also use make to trigger automations during the call when capturing data such as understanding whether or not the lead was actually interested in our services I'll also show you how to AB test different prompts to analyze which sales scripts are most effective with the AI Coler which will allow us to get the most sales possible rather than sending thousands of phone calls using only one sales script we can track all the metrics to understand which sales script performs better than the other with these voice systems being so new being able to analyze data and see what works and what doesn't is really important this is also an optimization service that you could sell to businesses or simply use within your own business to ensure that you're getting the most out of your AI caller the best part about this is that it requires no code whatsoever and is super simple to follow along with so this is vy. a the platform that we're going to be using to build our sort of virtual salesperson so the way that vapy works is that we give a set of instructions to our assistant it will understand these instructions and then really form how the salesperson works for this demo I've instructed my assistant to be an experienced travel Assurance salesperson in just a minute I'm going to go through everything that is in my prompt so you can understand exactly why I've done exactly what I have done next to this instruction section here we've got a transcriber which essentially just takes our voice input transcribes it into text and then sends that into the AI next to this we've got our voice section within this voice section we can choose a whole heap of different providers in this case I've chosen 11 Labs I've personally found 11 labs to be the most realistic sounding voice provider currently on the market but obviously you can test all of these yourself and find out which one you like the best one thing that I do like about 11 Labs is they've got a 11 11 Labs voice library and this voice Library allows us to scroll through a whole heap of user uploaded and sort of generated voices here that we can use to get a whole heap of different voices whether that's for stories or social media or education there's a whole bunch of voices for different reasons so in this case we might want to find a more sales person like speaker that we can copy The Voice ID go back to VY and just paste in our voice ID for the purpose of this assistant I've actually gone ahead and cloned my own voice using 11 Labs taken the voice ID and actually upload my voice to vappy here's a quick demo of how this actually sounds this is a demo of the 11 Labs AI voice comment below if this sounds realistic next to the voice settings we have functions and functions are what allows us to run our make automations to send data out of the conversation live and track all the metrics I'll cover those automations later in the video but now I'm going to go through the prompt that I've created for this sales assistant so a really important skill to learn in building these AI voice agents is knowing how prompt engineering works and knowing how to structure prompts and input certain language to get the most out of our AI voice agents so here's a quick demo of this EX exact sales script live hi Brandon my name is John I'm from a company called travel saver sorry for um sorry for the super random call how often do you travel per year about 12 times just a sec wow that's a lot of traveling we've got a new service that provides lifetime travel insurance for a onetime fee is this something you would be um be interested in sure give me a moment great I'll make a note of that thanks for your your time Brendon if you are a business owner and you're looking to integrate AI into your business you can go ahead and book a call with my agency using the caly link in the description we've helped several businesses integrate the solutions that you've seen on this channel and we can go ahead and build the exact same for you so while that might have seemed like quite a basic call the main purpose of this prompt was to be really strict in following a script that we've created a Sal script and then getting it to follow that script word for word but also being able to go off that script if a person asks a question other than our script we're also able to bring it back into that script and eventually capture the data that we're looking for without properly prompting your assistant and you asked a question that was outside of the script and all you told the assistant was follow this script it's likely that it would just lose the script it would go off on a tangent and you wouldn't capture the data that your sales bot is meant to do so the first part of my promp tier is a role and a role defines who they are so this is for the bot who the bot is so I've said you are an experienced travel assistant salesperson Your Role is to ask customers if they want to purchase lifetime travel insurance so I've just made up a random thing lifetime travel insurance um obviously this could really sell anything you want but this is just insurance it's selling Insurance um and that's its goal that's who it is the key thing here is that the bot should now know that this is its job it is an experienced travel insurance salesperson and it needs to strictly follow the script that's provided the reason that we do this is that the bot now knows exactly what it is it knows that it's an experienced travel insurance salesperson and that it shouldn't go off on a tangent talking about some random things because it knows that its goal is to be a salesperson and to ask customers if they want to purchase our services the next heading I've got here in my prompt is what they do or the task so your task is to converse with the customer using the provided script and determine if they would be interested in purching our services so once again it's really just being strict on what your job is as an assistant so by saying your task is to converse with a customer and ask them if they're interest in our services it knows it has one task and that task is to ask them if they're interested and capture that question this way once again it's not just going to go off on a tangent and start asking them questions about insurance that it's not relevant CU we simply want to know whether or not they're interested or they're noted Ed to qualify that lead the next section I have here is specifics and specifics are how it actually achieves that task so I've gone ahead and said you are a high converting salesperson who must closely follow the provided script you are capable of answering any question the customer provides however you are an expert at Flowing the conversation back into the script and asking the qualifying questions within the sales script so this is really just going to more detail as to how you're going to go ahead and Achieve that task which is ensuring that if a question comes through that's not relevant to the script still try and answer that question so that it doesn't seem like you're a robot but then flow back into the script so if they ask a completely random question answer that question as best as you can and then go back into the script which is then asking them whether or not they're interested in our services the next part says these specifics are very important to my career please follow these your ability to accurately follow each part of the script whilst ensuring that each of the customers questions are answered is greatly appreciated so if you followed prompt engineering at all you'll know that sort of hyping up the chatbot and really appreciating the chat bot's answers and putting that in your prompt is actually a really good way to get get accurate results out as well as studying the importance of what they're doing by saying this is very important to my career really just emphasizes more importance on this element and this section of the prompt so that it focuses in on what you've actually said and tries to follow this as best as it possibly can the next part that I've included is context and this is sort of context around the business now you'll notice that I've got this sort of hashtag here and then two hashtags here and so this is called markdown formatting now markdown formatting is just a way that we can structure our sort of promp tier to better help the AI understand which is part of which so I've got context and I've got context within the business and then we've got context in what we do and so I've structured these with two hashtags and I've structured this with one hashtag and so this markdown formatting is something that openai the creator of chat gbt actually endorses being used within prompts uh as that's what it's actually trained with so once you've got this sort of structure here I've said our company travel saver provides customers with access to a one-time cost for Lifetime travel insurance so once again this is really just reiterating to the AI that this is our services we are a business that sells Services uh and you should stay in line with this and that you shouldn't go off on a 10 and start talking about random stuff when we have one goal in mind and that is to qualify customers for our onetime travel insurance next to this I've got what we do which is we call hundreds of people per day and your role is to talk with these leads and accurately qualify the ones who are interested in our services so now it really knows exactly what the business is exactly what they do and knows exactly what its role is now below this I've got examples and these examples is essentially just the scripts that I want the bot to follow with so I would say this is probably the most important part of the script cuz this is exactly what it's going to be following and what I sort of set up to actually start following throughout all of these other bits of the prompt I'm saying follow the script follow the script and so this is the script that I wanted to strictly stick by to ask certain amount of questions then get this information back for the business to use so in this case I've got two scripts I've got an interested example script and I've also got a not interested example script and so the two scripts are if they're not interested we're going to say something different to whether or not they actually say that they're interested so the way that I've structured this script is by saying you and so you is the actual assistant that we're talking with and we're just telling it what to say so you should say hi is this Brendan and then Brendan if he says yes you should then go say hi my name is John I'm from a company called travel ser and then we've got this prompt to just say sorry for the random call how often did you travel per year and we're just capturing some data back and that's how we're structuring it so one thing you might notice is that I've got sorry for um and then it repeats the sentence sorry for um sorry for the super random call and the reason I've done this is to make it sound a little bit more natural sounding that the person isn't just speaking perfectly all the time and they're not stuffing up on anything that they're saying we've actually put that in there to make it a bit more human-like and it's something that I recommend to put in as sort of like a sentence break and to really pause and to make it sound a little bit more realistic during the conversation you'll also notice here that when I ask this question how often do you travel per year and then somebody responds I travel to Tokyo twice a year for a holiday we then running a function so the purpose of this question is to capture how many times the potential client travels per year and this is going to gauge which clients and which leads are most qualified for our services so if somebody travels 50 times a year they're going to be a lot more qualified for our services which is selling travel insurance compared to somebody that doesn't travel at all so right after this I've got a function that says now run the travel frequency function with the result so I'm going to go back to functions now and we're going to have a look at the travel frequency function so what I did on vapy is I went and created a new function and this function I simply just named travel frequency and I just typed in the description this is how frequent the user travels then below this I've got our property and the property is the exact bit of data that we're going to be sending into uh our sort of lead software or Google Sheets or whatever we're using to store all this data where they're going to be capturing that exact amount of times they travel per year in a number and then we're sending that off to me.com so I've just said here per year cuz we want to capture how many times they travel per year and I've just said this is how frequently they travel per year and I've gone ahead and select a number cuz it's going to be a number that we're capturing then once we've ran that function we'll continue on by saying that's awesome we've got a new service uh that provides travel insurance for onetime fee is this something that you'd be interested in how much is it we go down until asking them if they want to be on our wait list for it and then we've got another function that just says interest level and interest level is just another function we've set up to capture whether or not they're interested and this is either yes or no they're either interested or they're not and so we just captured in here this function will store if the user is interested in our services we've got a property that says yes or no either yes or no if the user is interested in our services and I've selected a Boolean and so this is a true or false that's what that means um and so this is capturing either true or false from the user and then we're going to go ahead and then send that data obviously back into our lead software and then once that's complete the script is completely done and we've captured all the data that we're looking for and the call is now finished and then conversely if they were not interested and we ask them how often they travel maybe we can capture that data but if we don't um then it won't capture anything obviously but if we continue on we can ask them if they're interested at all and if they say no it will just say no worries have a nice day uh and then obviously it's then going to record the function result as being uh not interested and just lastly for the prom we've got notes and notes are just sort of conditions that we want to throw in uh just to fix little errors here and there so just saying please ensure you follow the script closely so making sure that it actually follows the script um exactly that's what we want then if a customer asks a question deviating from the script uh still answer that question accurately don't just continue the script uh like a like a robot then I've got some critical notes which are bit stricter than the other notes and I'm just saying you must keep the arm within the script this is used for creating realistic pauses and assists in your ability to convince people to purchase out services so just adding in this extra conditioning to make sure it actually says uh or keeps the arm during the prompt as I found sometimes it would just leave it out so it's really quite a lot of trial and error and this is what's required to actually get that really perfect prompt is that you've just got to continuously test this uh and call it a million times and then just change this prompt over and over again uh to really just hone in on really getting an accurate and realistic sounding Voice Assistant if you did want to get access to this entire prompt I'm going to have it within my free resource Hub Link in the description which has also got 20 other other trap and automation templates that you can get as well so moving on to make.com make is an automations platform that allows us to send data from different applications uh and in this case send data from vapy on our caller and send some data directly into Google Sheets and so in this instance we've gone ahead and created a make.com scenario that uses a web hook a web Hook is sort of this sort of public URL that we can send information to and we can use it to detect that we've got a request here on make so if I go back to vapy we've got our interest level and what it allows us to do is put in a server URL which is a web hook URL if I go into my web hook here on mac.com if we create a web hook we can just create this sort of URL here click copy address to clipboard go back to vapy and just paste it in here and now when we make a request uh with this interest level when the prompt finds that it needs to run this it will then trigger this automation sending the data through mac.com and then recording the data in Google Sheets so this is what my Google sheet looks like it essentially has a number for the phone number of the user we're calling it's got a name it's got an interest level that's been recorded through VY travel frequency which has been recorded through VY as well as the assistant ID so the number and name is information that you've got to go ahead and upload yourself into the system as this is then going to obviously call all of the leads that you upload uh into this Google sheet here so obviously you don't have to use Google Sheets you can use air table you can use go high level you can use any CRM system that you have but obviously just for this demo I have configured it in Google Sheets But ultimately you would just Swap this out for being whatever provider you have it's quite simple to set up it's a drag and drop no code platform where essentially you can just click on ADD find any platform that you have drag it in here and then simply just add some data into a Google sheet row select your exact uh spreadsheet take the data from vapy place it in there and you're good to go so more specifically what this does is that this first Google Sheets block searches rows and the reason it's searching for rows is it's trying to find the number that has just been called and the information of where to actually put it so we've got here number so it's looking at the number column within our spreadsheet it's going ahead and looking through the numbers obviously I've only got just me in here at the moment but if you went ahead and had thousands of leads in here it would then find the number that you were looking for so number if it's equal to the number that has just called us or sent the data from vapy grab that row and then go ahead and send data into that row so this next block is update a row and then what we're doing is just grabbing the row number that we've found to be relevant to the caller and then all we're doing is inputting the interest level travel frequency and assistant ID that comes from vapy so if we've made the call and it's gone ahead and had an interest level it's had a travel frequency we're going to see these functions come through from vapy so when we go to functions interest level we can see here I've got my property that says yes no and if I just go back to make.com we can see here yes no so that is the parameter that the bit of data is going to be stored in and if I go back to vapy and have a look at the travel frequency per year that's the per year is what's being stored um um with the amount of times they travel per year and if I go back here per year so this is information that comes through the web Hook from vapy and we can send directly into our Google sheet and add the corresponding values for each lead in Google Sheets now the next make automation here is going to be the most important part of this entire system which goes ahead and looks through all of our leads that are going to be in our Google sheet whatever platform CRM that we're using it's going to go ahead and look through all of these leads and then it's going to go and iterate through each of them and it's going to call each of them using two different assistants now the reason that I'm randomly calling on two different assistants is that I'm actually going to be tracking which assistant is making which call using the assistant ID and the reason that I'm doing this is to set two different Sal scripts per assistant and we're going to run this randomly sort of 50/50 split test between the two different assistant Sal scripts and this data is going to be recorded in our spreadsheet and we're going to be able to understand which cell script is more effective in converting each of these leads into cells for the business the first module that I'm using here is the Google Sheets search rows and it does exactly what it says it just searches through all of the rows within a Google sheet and it pulls back the data at the moment I've got it set to a 100 at Max but we could increase this uh as many as we like but ultimately it will just pull through a certain amount of leads from our lead list and then it's going to go ahead and then pull through and run each row at a time the next module I have here is an array aggregator now the purpose of an array aggregator is to essentially help in iterating through each row so rather than pulling back all of these rows in one big chunk we want to take that big chunk and then turn it into one run at a time so we can actually run each call separately and individually to each lead so all we need to do is add this array aggregator just select the values that we want so we want the row number number name interest level uh and that's all the values that we want clicking okay and then adding in an iterator function on Mac now the purpose of this iterator is then to iterate through one by one everything in this array so by just putting in an iterator module and then clicking on the array right here array if we H over it we can see that it's an array putting that in here it's then going to iterate through each row of our spreadsheet into our vapy calls moving on to the next module we've got a router and a route out routes down two different paths depending on some set of conditions so I've just added in another module here but I'll get back to that in just a second so right after our router the purpose of this router is to go down a different path based on a set condition and so in this little sort of line here and we click on this we can actually set a condition and if this condition is met it will go down this path so in this case I've said if this random number that I've generated in the tool but I'll just come back to that is less than .5 it should run and in this case I've said if this random number is greater than 0.5 it should run and so the purpose of this tools function is to create a variable called random number and assign random which is a variable that is stored within make.com so if we just click on the text here and type in random we can get this variable called random which is a floating point which is a random number between 0 and 1 so this is just going to be a random number that could be between 0 all the way up into one and so what I've gone ahead and said is if it's between 0 and5 or it's between .5 and 1 they are the two different areas that we're going to run down this way we can split our voice assistants into 50/50 by essentially randomly setting a variable and then going down a different condition based on the variable that has been set so depending on whichever one it actually goes ahead and runs it's then going to run a HTTP request and so what this module is doing is making the vapy phone call through an API request we can actually request to vapy to make a call to a particular phone number using all the prompts and using all the functions that we have set up on VY we can make a call through mac.com to actually initiate uh a call to a particular phone number that we choose so if you did want to go ahead and copy this make automation as well as my other mic Automation and the prompt as well you can go ahead and sign up my free resource Hub Link in the description where you can get access to all of this for completely free so to make this request I've gone ahead and put in the vapy phone call URL which is https api. vy. /all /phone so this is something that you can find within the vapy API documentation you can find a whole heap on how to make requests to vapy but ultimately you can go ahead and actually just copy this from my resource Hub and then just use that from here but essentially how this works is that we make the request through vapy we're doing a post request because we're going to be sending data off to vapy to make our call for us we're just posting that data off using a post so just below this we've got our authorization and this authorization is just an API key to authenticate that we're allowed to be making these calls so just going back to vapy we can get this key by going down to our account and then just clicking on API key and just hitting the copy button taking that back typing beer and then just hitting space and then pasting our key in here and then we should be authenticated to make these requests then below this we've got our content type application sljs so just type that in as a header and that in as the value then below this we've got our actual Json request so we're actually going ahead and typing in all of the values similar to how it looked on the VAP user interface but we're just going ahead and typing this manually uh using some Json so it's just doing all the same stuff with our function here we've got our function with the yes no property description it's if the user is interested Services type Boolean so this is just structured and I've copy and pasted this from the VAP documentation so you can go ahead and just copy this as well and paste it and configure it to be exactly how you want it to be but scrolling down further we've got our content as well which this content is our instructions and I've gone ahead and just copy pasted my entire prompt uh into this and it's going to go ahead and just use this exactly how it has on the user interface but we're just making this request uh through ma.com obviously now one thing that we can do now as well is obviously use the dynamic names from our lead list here to actually say hey is this Brendan or hey is this John whoever the actual lead is we've going ahead and put first message hey is this name and this name has come from this iterator which has ultimately come from Google Sheets so it now knows that this particular call by just going to the iterator here and just selecting name which the value here in this test was Brendan it knows the exact name of the user that we're calling and it's just going to say what their name is and it's going to actually know a bit about that person so scrolling down a bit further we've got the customer information which is a name and number which allows us to put in just putting in the name from the Excel sheet as well as the number cuz obviously it needs know which number uh to actually go ahead and call so once again you can go ahead and just copy this entire Json script from my free resource Hub uh and just configure it to however you'd like and just putting in all those values simply just read some of the headings that are here and just fill in the blanks with everything you need you can see here I've got my function with the serve URL which is the mate.com web hook to my spreadsheet data so it's all very similar to how it was done on the VY interface so what I've gone ahead and done on the vapy interface here is I've gone and clicked this button to duplicate my voice assistant and now got a second voice caller here and I'm going to take the assistant ID here and just update this one up here and so now this assistant here is going to be a different assistant that makes these calls so that when we track this data in the spreadsheet we're actually going to get two completely different assistant IDs so we can track which caller is making which calls and what the conversion rates of each caller are so I've just gone ahead and added in some fake data here to demonstrate exactly what this would look like if we were to actually scale this system into a bunch of phone numbers and then just call up a bunch of people and then get some data back from these people so in this instance we've captured the travel frequency as well as the assistant ID as well as the interest level of that particular lead so in this case for travel insurance what they're looking for are people that are actually interested in their services of course but also looking at the travel frequency and finding who has the highest amount of travel frequency and then going ahead and actually selling the services to those people cuz they are the most qualified for their services and so obviously being able to capture that data at scale to thousands and thousands of people quite quickly and capturing all of this data really gives great insights to that travel insurance place because now they know that they've got a certain amount of leads that travel an incredible amount of time and they can sell their services to them quite easily so something that we can now do with this data is actually graph this data so we can actually visually see which assistant performed better than the other and then choose that assistant to be the one that we actually want to run and scale on from here so I've just gone ahead and filtered all of the interest levels to find all of the ones that were true so I'm just going to select this column here go to insert chart and then what I can get is a pie chart right here so this graph shows that of all the people that converted on our calls 52% came from this caller and only 47% came from this caller so by understanding this information we're able to now pinpoint the exact sales script that is best working for our outbound caller so in this case we would go ahead and choose the blue one which is the F6 assistant so we met to vappy I can see here that this one is the F6 assistant and so you would obviously just go ahead and choose this one as being the sales script that works the best for our leads so this whole optimization service here is an incredibly valuable service that you could offer to businesses to go ahead and actually optimize with not just two sales scripts but you could do five or 10 different sales scripts that you craft and really pinpoint the exact sales scripts and areas of the script that need to be improved to create the best sales caller that gets the most conversions possible for the business once again if you want to get access to all of the me templates and prompts used in this video you can go ahead and sign up for my free resource sub Link in the description I've also got 20 other chatbot and automation templates included in my resource Hub you can go ahead and download for completely free if you found this video helpful I would greatly appreciate it if you go ahead and subscribe to the channel as well as like this video
Info
Channel: Brendan Jowett
Views: 4,204
Rating: undefined out of 5
Keywords: ai cold caller, chat gpt, ai voice agents, ai phone call, ai callers, elevenlabs, make.com, vapi ai, openai, lead generation, ai lead generation, how to get leads with ai, gpts, how to make an ai chatbot, ai cold calling bot, how to call with ai, lead gen, lead generation for beginners, full ai caller tutorial, ai automation agency cold call, ai automation agency, cold calling, ai lead generation bot
Id: sGF_-7pDcXA
Channel Id: undefined
Length: 26min 5sec (1565 seconds)
Published: Sun Apr 21 2024
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.