The ‘send’ button felt heavier than usual. Sarah, a top-performing sales development representative, had just launched another email campaign to 500 carefully curated leads. She’d spent hours personalizing the first line of each email, referencing their company or a recent LinkedIn post. The result for her last campaign? A 12% open rate and two replies, one of which was an out-of-office auto-response. The digital noise is deafening. Decision-makers receive dozens, if not hundreds, of emails daily. Standard text-based outreach, even with token personalization, is increasingly ignored. It’s a frustrating paradox: the only way to break through is with genuine, one-to-one connection, but the very nature of sales and marketing demands scale. Manually recording a unique video for every single lead is simply not feasible.
This is the core challenge facing modern growth teams: how do you scale authenticity? How can you create a moment of genuine connection that stands out in a crowded inbox, without dedicating your entire team to manual video production? Traditional methods force a trade-off between personalization and volume. You can either go deep with a few accounts or go wide with a generic message, but you can’t do both. This limitation puts a hard ceiling on growth potential, leaving valuable leads untouched and engagement rates plummeting. The effort-to-reward ratio for conventional outreach is diminishing rapidly, forcing teams to work harder for fewer results. What if you could bypass this trade-off entirely?
Imagine an automated system that does the impossible: it creates a unique, high-quality, personalized video for every single lead in your pipeline. A system where each video greets the prospect by their first name, references their company, and is delivered instantly when they take a specific action, like downloading an ebook or requesting a demo. This isn’t science fiction; it’s the power of generative AI integrated directly into your marketing automation platform. By combining the CRM and workflow capabilities of HubSpot with the cutting-edge video and voice synthesis of HeyGen and ElevenLabs, you can build an outreach machine that delivers hyper-personalization at unprecedented scale. This guide will show you precisely how.
We will walk through the entire technical process, step-by-step. You will learn how to configure your AI tools, build the automation bridge, and deploy a campaign that delivers personalized videos directly from your HubSpot workflows. We will cover everything from setting up your video templates in HeyGen and generating dynamic voiceovers with ElevenLabs to constructing the API-driven workflow that ties it all together. By the end of this article, you will have a complete blueprint for creating an automated system that not only captures attention but also builds meaningful connections, turning cold leads into warm conversations.
The Generative AI Stack for Hyper-Personalized Outreach
Before we dive into the technical implementation, it’s crucial to understand the components of our stack and why this approach is so effective. Standard outreach is losing its punch, but video remains a powerful medium. According to data, including video in emails can boost click-through rates by up to 300%. The challenge has always been the production bottleneck. Generative AI dismantles that barrier.
The Core Components
Our automated system relies on three powerful platforms working in concert:
-
HubSpot: This is our command center. As a leading Customer Relationship Management (CRM) platform, HubSpot not only stores our lead data (like names, companies, and lifecycle stages) but also provides the automation engine through its Workflows feature. We’ll use a workflow to trigger the entire video generation process at the perfect moment in the customer journey.
-
HeyGen: This is our AI video studio. HeyGen allows you to create videos with AI-powered avatars or from templates. Its API is the key, enabling us to programmatically generate new videos by passing in variables, such as a personalized script or text overlays. This is how we’ll make each video unique to the recipient. To get started with your own AI video generation, you can try for free now.
-
ElevenLabs: This is our AI voice actor. A silent video is only half the story. ElevenLabs provides state-of-the-art voice synthesis that sounds remarkably human. Its API allows us to convert a text script—which we’ll personalize with HubSpot data—into a natural-sounding audio file. This audio is then merged with our video in HeyGen to create a truly convincing and personal message. To add compelling voice to your videos, click here to sign up.
The Automated Workflow: A High-Level Overview
The magic happens when we connect these three services. While the setup requires some initial technical configuration, the resulting workflow is elegant and efficient:
-
Trigger: A contact in HubSpot meets specific criteria (e.g., they submit a form for a “Demo Request” or their lead status is updated to “Marketing Qualified Lead”). This enrolls them in a HubSpot workflow.
-
Webhook: The HubSpot workflow’s first action is to call a webhook, sending the contact’s data (e.g.,
firstname
,company
) to a middleware service. -
Middleware Processing: A low-code platform like Zapier or Make.com acts as the central hub. It receives the data from HubSpot.
-
Audio Generation: The middleware takes the contact’s data, inserts it into a predefined script template (e.g., “Hi
firstname
, I noticed you work atcompany
and wanted to share this…”), and sends this text to the ElevenLabs API. ElevenLabs returns a URL for the generated MP3 audio file. -
Video Generation: The middleware then calls the HeyGen API. It passes the audio URL from ElevenLabs and any other personalization variables (like the contact’s name for a text overlay) to a specific HeyGen video template. HeyGen processes this and generates the final personalized video, returning a URL where it can be viewed and downloaded.
-
Update CRM: The middleware’s final step is to make an API call back to HubSpot, updating the contact record with the newly generated video URL. This URL is saved in a custom property we will create.
-
Delivery: A final step in the HubSpot workflow sends a pre-written email to the contact. This email dynamically pulls in the personalized video URL, often displayed as a clickable thumbnail, inviting the lead to watch their custom message.
Step-by-Step Implementation Guide: Setting Up Your Tools
Now, let’s move from theory to practice. This section will guide you through configuring each platform to prepare for automation. Accuracy here is key to a smooth workflow.
Configuring Your HeyGen Video Template
First, you need a base video in HeyGen that will serve as your template. This video should be designed with personalization in mind.
- Log in to HeyGen: Navigate to your dashboard and create a new video. You can use an AI avatar, your own likeness via a custom avatar, or a screen recording with a webcam overlay.
- Design for Variables: The crucial step is to add text elements that will be dynamically replaced. When you add a text box, instead of writing a static name, use a variable format that the API can recognize. For example, create a text element that says
{{name}}
. - Script Placeholders: While you won’t record audio directly here, your video’s timing and scenes should align with the script you plan to generate later. For example, if your script is 30 seconds long, ensure your video template has enough visual content for that duration.
- Find Your Template ID: Once your video template is saved, you’ll need its unique ID. You can find this through the HeyGen API documentation or by inspecting network requests when loading the video in your browser. This ID tells the API which template to use.
Setting Up ElevenLabs for Dynamic Voice Generation
Next, we’ll set up the voice for our videos. ElevenLabs offers a range of voices and accents, allowing you to choose one that matches your brand’s tone.
- Get Your API Key: After signing up for ElevenLabs, navigate to your profile section to find your API key. Copy this key and store it securely; you’ll need it for the API calls.
- Choose a Voice: Browse the Voice Library to find a pre-made voice that you like. Each voice has a unique Voice ID. Note this ID down. For a more professional touch, the clarity and intonation of their pre-made voices are excellent.
- Review API Documentation: Familiarize yourself with the Text-to-Speech API endpoint. The request will essentially send your text script and the chosen Voice ID, and the API will return the audio data or a URL to the audio file.
Prepping HubSpot: Custom Property and Workflow
Finally, we’ll prepare HubSpot to trigger the automation and store the result.
-
Create a Custom Property:
- In your HubSpot portal, go to
Settings > Properties
. - Click
Create property
. - Set the
Object type
toContact
. - Give it a label, such as “Personalized AI Video URL”. The
Internal name
will auto-populate (e.g.,personalized_ai_video_url
). - Set the
Field type
toSingle-line text
. - Click
Create
. This new property will store the unique video link for each contact.
- In your HubSpot portal, go to
-
Create the Workflow:
- Navigate to
Automation > Workflows
and clickCreate workflow
. - Choose a
Contact-based
workflow. - Set the enrollment trigger. This is the most important step for targeting. For example, you could set the trigger to be
Form submission > Contact has submitted form on > Demo Request Page
. Or, you could trigger it when aLifecycle stage
becomesMarketing Qualified Lead
. - Once the trigger is set, save the workflow. We will add the actions in the next section.
- Navigate to
Building the Automation Bridge: Connecting the APIs
With our tools configured, we now need to connect them. We’ll use Zapier as our middleware for this example due to its user-friendly interface, but these same principles apply to Make.com or a custom serverless function (e.g., AWS Lambda, Google Cloud Functions).
Step 1: Trigger — Webhook from HubSpot
- In your HubSpot workflow, click the
+
icon to add an action. - Select
Send a webhook
from theWorkflow
actions. - In a new browser tab, create a new Zap in Zapier. For the trigger, search for and select
Webhooks by Zapier
. - Choose the event
Catch Hook
and clickContinue
. - Zapier will generate a custom webhook URL. Copy this URL.
- Go back to your HubSpot workflow. Paste the Zapier URL into the
Webhook URL
field. Ensure the method isPOST
. Save the action. - To test, enroll a test contact in the HubSpot workflow to send sample data to Zapier.
Step 2: Action — Generate Personalized Audio with ElevenLabs
- In Zapier, add a new action step. Choose
Webhooks by Zapier
again, but this time select the actionPOST
. - In the
URL
field, enter the ElevenLabs Text-to-Speech API endpoint:https://api.elevenlabs.io/v1/text-to-speech/{voice_id}
. Replace{voice_id}
with the ID you saved earlier. - For the
Payload Type
, selectJson
. - Under
Data
, create the request body. You’ll need atext
field and amodel_id
field.- For the
text
value, craft your script and insert the dynamic data from the HubSpot webhook. Example:Hi
then select thefirstname
property from the HubSpot data,! I saw you requested a demo for
then select thecompany
property.
- For the
model_id
value, useeleven_monolingual_v1
or another appropriate model.
- For the
- Under
Headers
, add a new header with the keyxi-api-key
and paste your ElevenLabs API key as the value. Also add aContent-Type
header with the valueapplication/json
. - Test this step. Zapier will call the API, and ElevenLabs should return a success message. The response won’t be the URL directly in this simple setup; it will be the audio data. A more advanced Zapier plan or a custom script is needed to handle file data. For simplicity, we assume a workflow where the API can return a URL, or the next step can handle binary data.
Step 3: Action — Generate Personalized Video with HeyGen
- Add another
Webhooks by Zapier
POST
action. - Set the
URL
to the HeyGen video generation endpoint:https://api.heygen.com/v2/video/generate
. - Under
Headers
, addX-Api-Key
with your HeyGen API key andContent-Type
withapplication/json
. - In the
Data
(JSON payload) section, you will construct the request to HeyGen. This will include:video_template_id
: The ID of the template you created.variables
: An array of objects to replace the placeholders. For example:[{ "name": "name", "value": "
select HubSpot firstname"}]
.audio_url
: Here you would pass the URL of the audio file generated by ElevenLabs. This is the trickiest part in a simple Zapier setup and often requires a multi-step Zap where the audio is first saved to cloud storage (like Amazon S3) to generate a public URL.
- Test the action. HeyGen will begin generating the video. Its API returns a
video_id
immediately. You’d need a subsequent “delay” and “get video status” step to retrieve the final URL once rendering is complete.
Step 4: Action — Update HubSpot Contact Record
- Add a final action step in Zapier. Search for and select the
HubSpot
app. - Choose the action
Update Contact
. - In the
Contact ID
field, map thecontact_id
orvid
that was sent in the initial webhook from HubSpot. - Find the custom property you created, “Personalized AI Video URL”. In its field, map the
video_url
that you retrieved from the final HeyGen step. - Test the action. This should update your test contact’s record in HubSpot with the link to their unique video.
Deploying the Campaign and Measuring Success
With the technical automation built, the final phase is deploying it and tracking its impact.
Crafting the Delivery Email in HubSpot
Go back to your HubSpot workflow. After the webhook action, add a Send email
action.
1. Create a New Email: Design an email that feels personal and direct.
2. Insert the Video: Instead of just pasting the link, use a personalization token. Click Personalize
, find your custom property “Personalized AI Video URL”, and insert it. For better results, use this token as the link for a compelling image or an animated GIF of the video thumbnail to maximize clicks.
3. Write Compelling Copy: The subject line could be “A personal video for you, [First Name]”. The body text should be brief, explaining you made a short video to introduce yourself or answer their query.
Key Metrics to Track
Activate your HubSpot workflow and monitor performance closely. Go beyond standard email metrics:
- Email Open Rate & Click-Through Rate: Compare these against your non-video campaigns. You should see a significant lift.
- Video Play Rate: How many people who clicked the link actually watched the video? (This may require analytics from the video hosting page).
- Conversion Lift: This is the ultimate metric. Run an A/B test in your HubSpot workflow where 50% of leads get the video email and 50% get a standard text email. Track the final conversion rate (e.g., demos booked, deals closed) for each path. This will give you hard data on the ROI of your AI video system.
Your inbox is no longer a battlefield of generic text; it’s a stage for personalized connection. By automating what was once unscalable, you’ve broken the paradox of personalization vs. volume. The system you’ve just designed isn’t a novelty—it’s a robust, scalable engine for building real relationships and driving measurable growth. Sarah, our once-frustrated SDR, is no longer staring at abysmal reply rates. Her system sends hundreds of personalized videos automatically, her calendar is filled with qualified meetings, and she’s focusing on what she does best: closing deals. The barrier to entry for this level of sophisticated outreach has never been lower.
Ready to transform your own outreach and see these results for yourself? To start building your own automated video outreach engine, you’ll need the core components. You can create your personalized avatars and video templates with HeyGen – try for free now. For the hyper-realistic voice that builds trust, click here to sign up for ElevenLabs. Combine these with your HubSpot account, and you’ll be on your way to revolutionizing your sales and marketing funnels.