🔓 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

Telegram to TikTok, avatar videos published fast

Lisa Granqvist Partner Workflow Automation Expert

Turning a “good” TikTok idea into an actual posted video is where momentum goes to die. You find a viral clip, you want to personalize it, and then you’re stuck juggling downloads, voice tools, exports, and uploads.

This Telegram TikTok automation hits content creators hardest, honestly. But agency operators managing client accounts and marketers running experiments feel the same drag. The outcome is simple: you send one Telegram message, and you get a ready-to-post avatar swap published to TikTok, tracked in a sheet.

Below, you’ll see how the workflow runs end-to-end, what you need to connect, and the real-world time you get back once the pipeline is doing the repetitive parts for you.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Telegram to TikTok, avatar videos published fast

The Problem: Avatar-swapping and publishing takes too many tools

Making “avatar swap” edits sounds easy until you do it twice. First you have to capture the source video, then separate audio, then run face replacement, then redo the voice, then stitch everything back together. And after that, you still have to upload, write a caption, pick the right account, and track what you posted so you don’t accidentally repost the same thing next week. One missed step means wasted time or a broken upload. Do this daily and it becomes a second job.

It adds up fast. Here’s where it usually breaks down when you’re doing it manually.

  • Swapping video faces and voices requires multiple services, so you end up copying URLs and files between tabs for about an hour per video.
  • Uploads are easy to postpone, which means you produce “almost finished” videos that never get published.
  • Captions and hashtags get rushed, because you’re already tired from the editing pipeline.
  • Without a clean log in Google Sheets (or similar), you can’t tell what worked, what failed, or what still needs approval.

The Solution: Send one Telegram message, publish everywhere

This workflow turns your Telegram inbox into a production line. You send a single message that includes an avatar photo and a viral video link (the URL goes in the caption). n8n grabs the avatar file, makes it publicly accessible for the AI tools, extracts the source audio, then runs two parallel jobs: one to replace the character in the video and another to transform the voice using a reference audio URL you choose. After that, it merges the new video with the new audio, fetches the final rendered file, and logs everything in Google Sheets so you can track output URLs and statuses. Finally, Blotato uploads the finished media and publishes it to TikTok, with optional posting to Instagram, Facebook, LinkedIn, X, and YouTube.

The workflow starts with Telegram intake. AI services handle face swap, voice conversion, and the final FFmpeg merge. Then Blotato publishes and n8n sends you a confirmation message so you know it’s live.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you want to publish 5 avatar-swap videos a week. Manually, even a “fast” process is about an hour per video when you include downloads, edits, exporting, caption writing, and uploading, so you lose roughly 5 hours weekly. With this workflow, your active work is closer to 5 minutes per video to send the Telegram message and check the result in Google Sheets (the AI processing runs while you do other things). That’s about 4 hours back every week, and you still get a published TikTok at the end.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Telegram Bot for receiving avatar + video URL.
  • Google Sheets to log inputs, outputs, and status.
  • Blotato to publish to TikTok (and others).
  • FAL API key (get it from your FAL dashboard).
  • Replicate API key (get it from your Replicate account settings).

Skill level: Intermediate. You’ll connect accounts, paste API keys, and confirm your Google Sheet columns match what the workflow writes.

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

How It Works

Telegram kicks it off. You send one message that contains a photo (your avatar) and a source video URL in the caption. n8n captures both instantly.

The workflow prepares your inputs for AI. The avatar image gets uploaded to a public URL, then the source video’s audio is extracted so it can be reused for both the face-swap and voice steps.

AI does the transformation work. Replicate handles audio extraction, FAL runs the character replacement and speech-to-speech voice conversion, and then a merge step combines the final audio/video into one file. Waiting nodes are used so n8n only moves forward when each job is actually finished.

Publishing and tracking happen automatically. The finished file is fetched, logged to Google Sheets, and uploaded to Blotato so TikTok posting (and optional cross-posting) can run without manual uploads. You also get a Telegram status message when publishing completes.

You can easily modify which platforms get published to based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Telegram Trigger

Set up the workflow to start when a Telegram message arrives with a profile photo and a video URL in the caption.

  1. Add and configure Telegram Intake Trigger to listen for updates set to message.
  2. Credential Required: Connect your telegramApi credentials in Telegram Intake Trigger.
  3. Verify the trigger output includes message.photo and message.caption since downstream nodes reference them.

Tip: The incoming message caption must contain the source video URL, because Parse Source Video URL reads it directly and trims it.

Step 2: Connect Telegram and File Intake Nodes

These nodes extract the avatar image, parse the video URL, and set core API parameters. They run in parallel after the trigger.

  1. Configure Fetch Telegram Avatar File with Resource set to file and File ID set to {{ $json.message.photo[$json.message.photo.length - 1].file_id }}.
  2. Credential Required: Connect your telegramApi credentials in Fetch Telegram Avatar File.
  3. Configure Parse Source Video URL with the provided JavaScript so it returns videoUrl from message.caption.
  4. Configure Set Workflow Parameters with targetVoiceAudioUrl set to [YOUR_URL], falApiKey set to [CONFIGURE_YOUR_API_KEY], and replicateApiKey set to [CONFIGURE_YOUR_API_KEY].
  5. Telegram Intake Trigger outputs to Fetch Telegram Avatar File, Parse Source Video URL, and Set Workflow Parameters in parallel.

⚠️ Common Pitfall: If Set Workflow Parameters is left with placeholder values, downstream HTTP requests will fail authentication.

Step 3: Prepare Inputs and Extract Audio

This stage uploads the avatar to a public URL and combines it with the parsed video URL to start audio extraction.

  1. Configure Upload Avatar to Public URL with URL set to https://tmpfiles.org/api/v1/upload and Content Type set to multipart-form-data; ensure file uses binary field data.
  2. Configure Combine Input Streams with Mode set to chooseBranch, Number Inputs set to 3, and Use Data Of Input set to 2.
  3. Configure Extract Audio Track to POST to https://api.replicate.com/v1/models/lucataco/extract-audio/predictions with the JSON body that references {{ $('Parse Source Video URL').first().json.videoUrl }}.
  4. Ensure Delay for Extraction waits before Download Extracted Audio retrieves {{ $json.urls.get }}.
  5. Download Extracted Audio outputs to both Apply Video Face Swap and Convert Voice Audio in parallel.

Tip: The Extract Audio Track and Download Extracted Audio nodes rely on replicateApiKey from Set Workflow Parameters via the Authorization header.

Step 4: Run Face Swap, Voice Conversion, and Merge

This section runs two parallel jobs (face swap and voice conversion) and merges their outputs into a final video.

  1. Configure Apply Video Face Swap to POST to https://queue.fal.run/fal-ai/wan/v2.2-14b/animate/replace with JSON body fields {{ $('Parse Source Video URL').first().json.videoUrl }} and {{ $('Upload Avatar to Public URL').first().json.data.url.replace(/^http:\/\/tmpfiles\.org\/(\d+)\/(.*)$/i, 'https://tmpfiles.org/dl/$1/$2') }}.
  2. Configure Convert Voice Audio to POST to https://queue.fal.run/fal-ai/chatterbox/speech-to-speech with JSON body fields {{ $json.output }} and {{ $('Set Workflow Parameters').first().json.targetVoiceAudioUrl }}.
  3. Allow Pause for Video Job and Pause for Audio Job to wait before Retrieve Video Result and Retrieve Audio Result poll {{ $json.response_url }}.
  4. Configure Combine Media URLs with Mode set to combine and Combine By set to combineByPosition.
  5. Configure Merge Audio Video Output to POST to https://queue.fal.run/fal-ai/ffmpeg-api/merge-audio-video with {{ $json.video.url }} and {{ $json.audio.url }}.
  6. Use Pause for Final Merge before Fetch Final Video File retrieves {{ $json.response_url }}.

⚠️ Common Pitfall: All HTTP requests here depend on falApiKey or replicateApiKey from Set Workflow Parameters. Missing or invalid keys will cause silent job failures.

Step 5: Log Output and Send Telegram Update

Once the final video is produced, the workflow logs it to Google Sheets and notifies the original Telegram chat.

  1. Configure Append Results to Sheet with Operation set to append and map columns: url output to {{ $json.video.url }} and url original to {{ $('Parse Source Video URL').first().json.videoUrl }}.
  2. Credential Required: Connect your googleSheetsOAuth2Api credentials in Append Results to Sheet.
  3. Configure Dispatch Video to Telegram with Operation set to sendVideo, File set to {{ $('Parse Source Video URL').first().json.videoUrl }}, and Chat ID set to {{ $('Telegram Intake Trigger').first().json.message.chat.id }}.
  4. Credential Required: Connect your telegramApi credentials in Dispatch Video to Telegram.

Step 6: Configure AI Transcription and Caption Generation

The workflow fetches the converted audio as a file, transcribes it, and generates a social caption and title.

  1. Configure Fetch MP3 as File with URL set to {{ $('Retrieve Audio Result').item.json.audio.url }} and response format set to file.
  2. Configure Transcribe Audio Clip with Resource set to audio, Operation set to transcribe, and Binary Property Name set to data.
  3. Credential Required: Connect your openAiApi credentials in Transcribe Audio Clip.
  4. Configure Generate Social Caption with JSON Output enabled and keep the message prompt as defined (uses {{ $json.text }}).
  5. Credential Required: Connect your openAiApi credentials in Generate Social Caption.

Tip: The caption output is referenced by the Blotato publish nodes using {{ $('Generate Social Caption').first().json.message.content.caption }}.

Step 7: Configure Media Upload and Social Publishing

This section uploads the final media to Blotato, then publishes to multiple platforms in parallel.

  1. Configure Upload Media to Blotato with Media URL set to {{ $('Append Results to Sheet').item.json['url output'] }} and Resource set to media.
  2. Credential Required: Connect your blotatoApi credentials in Upload Media to Blotato.
  3. Configure the publishing nodes to use {{ $json.url }} for postContentMediaUrls and {{ $('Generate Social Caption').first().json.message.content.caption }} for postContentText.
  4. Upload Media to Blotato outputs to Publish to TikTok, Publish to LinkedIn, Publish to Facebook, Publish to Instagram, Publish to Twitter X, and Publish to YouTube in parallel.
  5. Credential Required: Connect your blotatoApi credentials to all Blotato publish nodes (7 nodes handle uploads and multi-platform publishing).

⚠️ Common Pitfall: Several publish nodes are disabled by default (Publish to TikTok, Publish to LinkedIn, Publish to Facebook, Publish to Instagram, Publish to Twitter X). Enable only the platforms you have configured with valid account IDs.

Step 8: Aggregate Results and Send Final Status

All platform results are consolidated and a final Telegram status message is sent.

  1. Configure Aggregate Publish Results with Mode set to chooseBranch and Number Inputs set to 6.
  2. Configure Send Telegram Status with Text set to Published and Chat ID set to {{ $('Telegram Intake Trigger').first().json.message.chat.id }}.
  3. Credential Required: Connect your telegramApi credentials in Send Telegram Status.

Step 9: Test and Activate Your Workflow

Validate the end-to-end execution and then activate for production use.

  1. Click Execute Workflow and send a Telegram message with a photo and a caption containing a valid video URL.
  2. Confirm that Fetch Final Video File returns a JSON payload with video.url and that Append Results to Sheet adds a new row.
  3. Verify Telegram receives the outgoing video from Dispatch Video to Telegram and the final status from Send Telegram Status.
  4. Once confirmed, toggle the workflow to Active for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Sheets credentials can expire or need specific permissions. If things break, check the n8n credential connection test and the sheet sharing settings 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.
  • Blotato publishing can fail if the selected TikTok account is not connected correctly or the API token was regenerated. Re-check the Blotato credential in n8n and confirm the target account mapping.

Frequently Asked Questions

How long does it take to set up this Telegram TikTok automation automation?

About an hour if your API keys and accounts are ready.

Do I need coding skills to automate Telegram TikTok automation?

No. You’ll mostly paste API keys and choose the right accounts in each connection.

Is n8n free to use for this Telegram TikTok 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 FAL and Replicate API usage costs, plus whatever AI captioning/transcription costs you run through OpenAI.

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 Telegram TikTok automation workflow for posting only to TikTok?

Yes, and it’s a common change. In n8n, keep the Blotato “Upload Media” node and the “Publish to TikTok” node, then disable the nodes for Instagram, YouTube, LinkedIn, Facebook, and Twitter/X. You can also adjust the caption by editing the OpenAI “Generate Social Caption” node so it writes specifically for TikTok length and tone.

Why is my Blotato connection failing in this workflow?

Usually it’s expired credentials or the wrong account selected in the Blotato nodes. Regenerate your Blotato API token, update it in n8n, then confirm the TikTok destination is still connected inside Blotato. If it fails only on busy days, you might be hitting rate limits or sending a video file that’s still processing. In that case, increase the wait time before the upload/publish nodes and try again.

How many videos can this Telegram TikTok automation automation handle?

A lot, but your limits come from your n8n plan and your AI providers. On n8n Cloud Starter, you get a monthly execution cap; Pro handles more. If you self-host, there’s no execution limit, but your server and the external rendering times become the bottleneck. Practically, many teams start with a few videos per day and scale once the waits and rate limits are tuned.

Is this Telegram TikTok automation automation better than using Zapier or Make?

For AI-heavy media pipelines, n8n is usually the better fit because you can branch logic freely, wait for long-running jobs, and self-host when volume grows. Zapier and Make can work, but complex “polling until done” patterns get awkward and expensive. n8n also plays nicely with HTTP requests, which matters here since several steps depend on calling external AI endpoints. If your goal is only “send a file to TikTok,” simpler tools may be fine. Talk to an automation expert if you want a quick recommendation for your setup.

Once this is running, your “editing pipeline” becomes a Telegram message and a confirmation reply. The workflow handles the busywork, and you get to focus on picking better source clips and shipping more often.

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