🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

HeyGen + Blotato: avatar videos published daily

Lisa Granqvist Partner Workflow Automation Expert

You start the week with good intentions. Then content slips, because finding a topic, writing a script, generating a video, and publishing everywhere takes more time than anyone admits. By the time you’re done, you’re tired. And the “daily” plan is already off track.

This hits marketing managers who need steady output, but solo founders and content-focused agencies feel it too. With this HeyGen Blotato automation, you can turn fresh RSS news into a vertical avatar video and publish it automatically, every day.

Below, you’ll see how the workflow runs, what it produces, and what you need to make it reliable (without turning your morning into a production sprint).

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: HeyGen + Blotato: avatar videos published daily

The Problem: Daily Video Posting Breaks on the Small Stuff

Daily content sounds simple until you’re the one doing it. You need a topic that won’t flop, a script that fits 30 seconds, captions that match your brand, and a video that looks consistent. Then comes the busywork: exporting files, waiting on renders, uploading, rewriting captions for each platform, and double-checking you didn’t paste the wrong hashtags. Miss a day and momentum dips. Miss three days and you’re basically “starting over” again.

It adds up fast. Here’s where the process usually cracks.

  • Picking a story manually turns into 30 minutes of doom-scrolling and second-guessing.
  • Scripts and captions drift over time, so your content stops sounding like you.
  • Rendering and status-checking becomes a constant tab refresh, which is oddly distracting.
  • Publishing to multiple channels means repeating the same upload steps again and again.

The Solution: RSS → Script → HeyGen Video → Blotato Publishing

This workflow turns “daily posting” into a scheduled background task. At a set time each day (default is 10:00), it pulls fresh items from multiple RSS feeds focused on AI/LLM news. An AI agent reviews what’s new, chooses the most likely-to-perform story, and writes a tight 30-second script. From that same source, it also generates a short video title, a short caption, and a longer caption with hashtags. Then HeyGen creates a vertical 9:16 avatar video using your chosen avatar and voice. Once the render is ready, Blotato uploads the video plus captions, with optional platform publishing nodes ready to enable when you want them.

The workflow starts on a daily schedule. It moves through story selection and caption creation, then hands off to HeyGen for video generation. Finally, Blotato handles the upload and post routing so you’re not doing manual publishing loops.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you post one short avatar news update every weekday to 5 channels (TikTok, Instagram, YouTube Shorts, Facebook, and one extra). Manually, you might spend about 10 minutes per channel just uploading and pasting captions, plus 30–40 minutes to pick a story and write everything. That’s roughly 1.5–2 hours a day. With this workflow, you spend maybe 10 minutes setting the topic and brand voice once, then the daily run is automated: the video renders in the background and Blotato uploads when it’s ready.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • HeyGen for avatar video generation.
  • Blotato to upload and route posts to platforms.
  • OpenAI API key (get it from the OpenAI API dashboard).

Skill level: Intermediate. You’ll connect a few APIs, paste IDs (avatar_id, voice_id, platform IDs), and test one full run end-to-end.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

A daily schedule kicks things off. The automation runs at 10:00 by default, but you can change the time or frequency to match your posting cadence.

RSS stories are collected and filtered. The workflow reads multiple AI/LLM news feeds, then passes the combined set into an AI agent that selects one story to turn into a short, punchy update.

Script and captions are generated together. OpenAI nodes create a 30-second script, a short title, a short caption, and a longer caption with hashtags so the final post feels cohesive.

HeyGen produces the avatar video, then Blotato publishes. n8n sends your avatar_id, voice_id, and any background settings to HeyGen, waits while rendering completes, then uploads the finished vertical video and captions to Blotato. Optional publishing nodes for TikTok, Instagram, YouTube, Facebook, and more are already there (disabled until you’re ready).

You can easily modify the news topic to a different niche based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Scheduled Trigger

Set the workflow to run automatically on a schedule so the content pipeline starts without manual input.

  1. Add the Scheduled Automation Start node as your trigger.
  2. Open Scheduled Automation Start and set the rule to run at triggerAtHour: 10 (as shown in the node’s interval settings).
  3. Confirm the trigger connects to Viral Story Selector as the first processing step.

Tip: If you need a different publishing time, adjust the hour in Scheduled Automation Start and keep the downstream flow intact.

Step 2: Connect the News Sources for the AI Agent

Provide RSS tools that the agent uses to fetch AI news for script generation.

  1. Add the Fetch AI News Feed and Fetch AI News Feed 2 nodes and keep their default options.
  2. Connect both RSS tool nodes to Viral Story Selector as AI tools.
  3. Ensure the tools remain sub-nodes feeding the agent (they are not standalone execution steps).

Credential Required: The RSS tool nodes are AI tools connected to Viral Story Selector. Add any required credentials to the Viral Story Selector node if your RSS sources require authentication.

Step 3: Set Up AI Script and Caption Generation

Configure the language model, agent instructions, and caption generators that produce the script, title, and captions.

  1. Open Viral Story Selector and keep the instruction text exactly as provided, including the Russian output requirement.
  2. Connect Script Model Input to Viral Story Selector as the language model.
  3. Configure Generate Long Caption with the message content that references the agent output: {{ $json.output }}.
  4. Configure Craft Video Title to use {{ $json.message.content }} from Generate Long Caption.
  5. Configure Generate Short Caption to use {{ $('Generate Long Caption').item.json.message.content }}.

Credential Required: Connect your OpenAI credentials in Script Model Input, Generate Long Caption, Craft Video Title, and Generate Short Caption to ensure the AI steps run. The AI tools (Fetch AI News Feed, Fetch AI News Feed 2) should use credentials set on Viral Story Selector.

Step 4: Configure HeyGen Video Generation and Status Retrieval

Prepare HeyGen inputs, generate the avatar video, and wait for processing to complete before fetching the final video URL.

  1. Open Configure HeyGen and set values for heygen_api_key, avatar_id, and voice_id; keep background_video_url as https://example.com/background.mp4 or replace it.
  2. In Generate Avatar Video, keep the POST URL https://api.heygen.com/v2/video/generate and ensure the JSON body references {{ $('Viral Story Selector').item.json.output }} and {{ $('Craft Video Title').item.json.message.content }}.
  3. Confirm Generate Avatar Video sends the X-Api-Key header using {{ $json.heygen_api_key }}.
  4. Set Processing Delay to wait 8 minutes before checking status.
  5. In Retrieve Avatar Status, keep the URL https://api.heygen.com/v1/video_status.get and query parameter video_id set to {{ $('Generate Avatar Video').item.json.data.video_id }}.

Tip: If videos often take longer than 8 minutes, increase the Processing Delay to avoid a status check before the video is ready.

Step 5: Build the Publishing Payload and Post to Blotato

Assemble all account IDs and caption content, upload the media, then post to multiple channels in parallel.

  1. Open Assemble Publish Payload and fill in all platform IDs and API keys in the raw JSON (for example blotato_api_key, facebook_id, facebook_page_id).
  2. Keep the caption fields as expressions: {{ $('Generate Long Caption').item.json.message.content.toJsonString() }} and {{ $('Generate Short Caption').item.json.message.content.toJsonString() }}.
  3. Configure Blotato Media Upload with URL https://backend.blotato.com/v2/media, body parameter url set to {{ $('Retrieve Avatar Status').item.json.data.video_url }}, and header blotato-api-key set to {{ $('Assemble Publish Payload').item.json.blotato_api_key }}.
  4. Ensure Blotato Media Upload outputs to all channel nodes; Blotato Media Upload outputs to both Blotato Post Channel A and Blotato Post Channel B in parallel (and also to Blotato Post Channel C, Blotato Post Channel D, Blotato Post Channel E, Blotato Post Channel F, Blotato Post Channel G, and Blotato Post Channel H in parallel).

⚠️ Common Pitfall: The Blotato channel nodes are disabled in the workflow. Enable only the channels you intend to publish to so you don’t unintentionally post to every destination.

Step 6: Test and Activate Your Workflow

Run a manual test to verify AI outputs, video generation, and social publishing before turning on the schedule.

  1. Click Execute Workflow and confirm that Viral Story Selector returns a script in Russian and the caption nodes produce expected content.
  2. Verify Generate Avatar Video returns a video_id and Retrieve Avatar Status returns a video_url.
  3. Confirm Blotato Media Upload returns a media URL and that at least one enabled Blotato Post Channel node posts successfully.
  4. Once successful, toggle the workflow to Active so Scheduled Automation Start runs on schedule.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • HeyGen credentials can expire or need specific permissions. If things break, check your HeyGen API key and avatar_id/voice_id values in the “Configure HeyGen” step first.
  • If you’re using Wait nodes or external rendering, processing times vary. Bump up the wait duration if downstream nodes fail on empty responses.
  • Default prompts in AI nodes are generic. Add your brand voice early or you’ll be editing outputs forever.

Frequently Asked Questions

How long does it take to set up this HeyGen Blotato automation?

Plan on about an hour if you already have your API keys and IDs.

Do I need coding skills to automate daily avatar video publishing?

No. You’ll mainly paste API keys, avatar/voice IDs, and tweak a few prompts.

Is n8n free to use for this HeyGen Blotato automation workflow?

Yes. n8n has a free self-hosted option and a free trial on n8n Cloud. Cloud plans start at $20/month for higher volume. You’ll also need to factor in OpenAI usage and HeyGen/Blotato plan costs.

Where can I host n8n to run this automation?

Two options: n8n Cloud (managed, easiest setup) or self-hosting on a VPS. For self-hosting, Hostinger VPS is affordable and handles n8n well. Self-hosting gives you unlimited executions but requires basic server management.

Can I customize this HeyGen Blotato automation workflow for a different topic than AI news?

Yes, and it’s one of the best tweaks you can make. Update the prompt inside the “Viral Story Selector” AI Agent to point at your niche (crypto, SaaS marketing, real estate, local news, whatever). Then adjust the three OpenAI caption/title nodes so the tone stays consistent. Many teams also change the HeyGen avatar/voice to match the new audience and swap the background_video_url for a branded loop.

Why is my HeyGen connection failing in this workflow?

Usually it’s an invalid or expired API key, or the avatar_id/voice_id doesn’t exist on that HeyGen account. Update the values in the “Configure HeyGen” step, then run one test execution and check the HTTP response from the HeyGen request. If it fails only sometimes, you may be hitting rate limits or trying to check status too quickly right after starting a render. Increasing the wait time often fixes the “empty status” issue.

How many videos can this HeyGen Blotato automation handle?

If you self-host n8n, execution volume mainly depends on your server and your HeyGen/Blotato limits.

Is this HeyGen Blotato automation better than using Zapier or Make?

Often, yes, because this workflow needs branching logic, waiting for renders, and tighter control over payloads. Zapier and Make can do pieces of it, but the “poll status then upload then post to multiple channels” pattern gets fiddly and can get expensive as volume grows. n8n also gives you the option to self-host, which matters when you want lots of daily runs without counting every task. That said, if you’re only publishing to one place and don’t care about prompt customization, simpler tools can be fine. Talk to an automation expert if you want a quick recommendation.

Set it up once, then let the workflow do the repetitive parts honestly better than a human with ten browser tabs. Your job becomes steering the topic and the voice, not babysitting uploads.

Need Help Setting This Up?

Our automation experts can build and customize this workflow for your specific needs. Free 15-minute consultation—no commitment required.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal