🔓 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

Google Sheets + Telegram: video posts, tracked proof

Lisa Granqvist Partner Workflow Automation Expert

Manually posting the same video to three platforms feels “quick” until you do it every day. Then you’re hunting links, re-copying captions, and wondering if you already posted that one (again).

Social media managers get stuck doing proof screenshots instead of strategy. A content creator feels it when consistency slips. And a small team lead just wants a simple calendar and reliable execution. This Sheets Telegram posting automation turns your Google Sheet into a posting engine and sends you a clean Telegram recap with live URLs.

You’ll see what the workflow does, what you need, how the moving parts fit together, and the common places these setups usually break.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Google Sheets + Telegram: video posts, tracked proof

The Challenge: Scheduled posting turns into daily busywork

A spreadsheet content calendar is supposed to make posting easier. In reality, it often becomes a second job: copy the caption, download the video, upload to Instagram, then LinkedIn, then TikTok, then update the sheet, then message the team with links. And when something fails, you don’t know which platform broke until you go looking. The worst part is the mental load. You’re not just posting, you’re tracking, proving, and double-checking so you don’t duplicate or miss a slot.

It adds up fast. Here’s where it breaks down in day-to-day operations.

  • Posting to three platforms one-by-one can burn about an hour, especially when uploads crawl.
  • Status tracking gets skipped when you’re rushed, which means you later post the same video twice.
  • Proof of publishing lives in DMs and screenshots, not in a system you can trust.
  • Even small caption changes get inconsistent because you’re copying and pasting across tabs.

The Fix: Schedule from Sheets, post automatically, get link proof in Telegram

This workflow turns your Google Sheet into the source of truth, then handles the boring part for you. Twice a day (by default), n8n checks your content calendar for rows marked “Listo para postear”. It compares the scheduled time in the sheet to the current run time, so only the items meant for that slot move forward. Next, it pulls the title, caption (Copy), and the Google Drive video link, then sends that payload to UploadPost to publish the same video to Instagram, LinkedIn, and TikTok in one go. After publishing, it updates the row status to “Posteado” so it won’t repeat. Finally, you get a Telegram message showing what posted and the live URLs you can click and share as proof.

The workflow starts on a schedule trigger at 9 AM and 9 PM (America/Santiago). From there, Google Sheets acts as the queue, Google Drive provides the file, and UploadPost publishes to multiple channels. Telegram closes the loop with a clear summary so you’re not guessing.

What Changes: Before vs. After

Real-World Impact

Say you publish one video per day to Instagram, LinkedIn, and TikTok. Manually, you’ll usually spend about 15 minutes per platform between uploading, captions, checks, and grabbing links, so roughly 45 minutes a day. With this workflow, you plan the post once in Google Sheets, then the run at 9 AM or 9 PM does the work while you’re doing something else. Your “active time” drops to a couple minutes to add a row and paste a Drive link, plus you get the Telegram proof automatically.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets to store your posting calendar.
  • Google Drive to host the video files.
  • UploadPost API credentials (get them from your UploadPost account dashboard).
  • Telegram Bot token + chat ID (get the bot token from @BotFather, then your chat ID from Telegram).

Skill level: Intermediate. You’ll connect accounts, paste IDs/keys, and match your sheet columns to the workflow.

Need help implementing this? Talk to an automation expert (free 15-minute consultation).

The Workflow Flow

A scheduled run checks your calendar. The workflow runs twice daily (9 AM and 9 PM), then reads Google Sheets rows with the status set to “Listo para postear”.

The time gets normalized and validated. A small script converts the trigger time into the same Spanish date format your sheet uses, then an If check confirms the post is meant for that slot.

Your post payload is assembled. n8n collects the title, caption copy, and the Google Drive download URL, then adds the right account identifiers for each platform.

Publishing happens in one shot, then proof is sent. UploadPost pushes the video to Instagram, LinkedIn, and TikTok; Google Sheets is updated to “Posteado”; Telegram sends a success report with the platform URLs.

You can easily modify the schedule (more than two runs per day) or swap in different platforms supported by UploadPost based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Schedule Trigger

Set the workflow to run on a schedule using the existing trigger configuration.

  1. Add and open Scheduled Start Pulse.
  2. Set the schedule rule to run at 9 and 21 hours using the trigger interval configuration already defined in the node.
  3. Keep the node connected so it flows to Retrieve Sheet Entries.

Step 2: Connect Google Sheets

Pull rows ready to post and later update their status in the same spreadsheet.

  1. Open Retrieve Sheet Entries and select the spreadsheet and sheet: set Document to [YOUR_ID] and Sheet to Video (gid=0).
  2. Set the filter to match Status equals Listo para postear and enable Return First Match.
  3. Credential Required: Connect your googleSheetsOAuth2Api credentials in Retrieve Sheet Entries.
  4. Open Update Sheet Status and keep Operation set to update.
  5. In Update Sheet Status, map Status to Posteado and row_number to {{ $('Retrieve Sheet Entries').item.json.row_number }}.
  6. Credential Required: Connect your googleSheetsOAuth2Api credentials in Update Sheet Status.

Step 3: Set Up Processing and Time Matching

Convert the trigger time to the correct locale and only continue when it matches the scheduled time in the sheet.

  1. Open Format Time Script and keep the JavaScript as-is to generate Readable time and Day of week in the America/Santiago timezone.
  2. Open Time Match Check and ensure the condition compares {{ $json['Readable time'] }} with {{ $('Retrieve Sheet Entries').item.json["Fecha.Hora"] }} using equals.
  3. Confirm the flow is connected Retrieve Sheet Entries → Format Time Script → Time Match Check.

Tip: If no rows match the time in Time Match Check, the workflow will stop before posting. Validate the Fecha.Hora format in your sheet matches the output from Format Time Script.

Step 4: Configure Upload and Notifications

Build the payload, append platform identifiers, upload the video, then send a Telegram summary.

  1. Open Assemble Drive Payload and confirm assignments for Title, Copy, Status, video_url, and row_number use the expressions from Retrieve Sheet Entries, such as {{ $('Retrieve Sheet Entries').item.json.Title }} and {{ $('Retrieve Sheet Entries').item.json["Video Link"] }}.
  2. In Append Account Identifiers, fill in facebook id (Page Id) and board id (Pinterest) as needed and keep Include Other Fields enabled.
  3. Open Multi-Channel Video Upload and set User to JoseAI, Operation to uploadVideo, and Platform to instagram, linkedin, and tiktok.
  4. Set Title to {{ $('Append Account Identifiers').item.json.Title }} and Copy to {{ $('Append Account Identifiers').item.json.Copy }} in the multi-line title field: {{ $('Append Account Identifiers').item.json.Title }} {{ $('Append Account Identifiers').item.json.Copy }}.
  5. Set Video to {{ $('Append Account Identifiers').item.json.video_url }}.
  6. Credential Required: Connect your uploadPostApi credentials in Multi-Channel Video Upload.
  7. Open Telegram Post Summary and set Chat ID to [YOUR_ID].
  8. Keep the message body as-is, using the expression values from Multi-Channel Video Upload, such as {{ $('Multi-Channel Video Upload').item.json.results[0].post_url }}.
  9. Credential Required: Connect your telegramApi credentials in Telegram Post Summary.
  10. Verify the flow continues Time Match Check → Assemble Drive Payload → Append Account Identifiers → Multi-Channel Video Upload → Update Sheet Status → Telegram Post Summary.

⚠️ Common Pitfall: If the Telegram message returns empty values, verify that Multi-Channel Video Upload returns at least three results in results[0..2] for the selected platforms.

Step 5: Test and Activate Your Workflow

Validate the end-to-end flow before turning it on for scheduled production use.

  1. Click Execute Workflow and check that Retrieve Sheet Entries returns a row with Status set to Listo para postear .
  2. Confirm Format Time Script outputs Readable time and that Time Match Check passes when the sheet time matches.
  3. Verify Multi-Channel Video Upload produces results for the selected platforms and Update Sheet Status changes Status to Posteado in Google Sheets.
  4. Check Telegram Post Summary delivers a message with platform URLs and success flags.
  5. When satisfied, toggle the workflow to Active so Scheduled Start Pulse runs automatically at the configured hours.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • Google Sheets credentials can expire or need specific permissions. If things break, check the n8n Credentials screen and your Google OAuth consent/access first.
  • If you’re using external uploads through UploadPost, processing times vary. Bump up timeouts in the HTTP-based upload step (or add a short wait) if downstream nodes fail on empty responses.
  • The default caption/copy handling is generic. Bake your brand voice into the sheet (or add an AI rewrite step) early, otherwise you’ll be “fixing” captions forever.

Common Questions

How quickly can I implement this Sheets Telegram posting automation?

About an hour if your accounts and spreadsheet are ready.

Can non-technical teams implement this Sheets Telegram posting?

Yes, but you’ll want someone comfortable with connecting OAuth and pasting API keys. No coding is required, though you do need to match the sheet columns exactly.

Is n8n free to use for this Sheets Telegram posting 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 UploadPost API costs based on your plan and usage.

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.

How do I adapt this Sheets Telegram posting solution to my specific challenges?

You can change the run times in the Schedule Trigger and adjust the time formatting in the Format Time Script node if you don’t use the Spanish “16 de Octubre a las 9 am” style. If you want more platforms, update the Multi-Channel Video Upload node to include additional UploadPost-supported channels (like YouTube or Facebook). Common tweaks include adding an approval step before publishing (Telegram works well), posting only on certain days using an extra If condition, or swapping which accounts are used in the Append Account Identifiers node.

Why is my Google Sheets connection failing in this workflow?

Usually it’s expired OAuth access or the wrong Google account connected in n8n. Reconnect Google Sheets in n8n Credentials, then confirm the spreadsheet ID (documentId) and sheet tab name match what the workflow expects. Also check sharing permissions if the sheet lives in a shared Drive.

What’s the capacity of this Sheets Telegram posting solution?

On most n8n setups, this can comfortably handle a daily schedule for dozens of posts, and it scales mainly based on your UploadPost plan and how fast video uploads complete. If you self-host, there’s no execution cap from n8n itself; your server resources become the limit. On n8n Cloud, capacity depends on your monthly execution allowance. Practically, most teams keep it to a few queued posts per run so the workflow doesn’t sit uploading for hours.

Is this Sheets Telegram posting automation better than using Zapier or Make?

Often, yes. n8n is easier to keep stable when you need conditions (time matching), multi-step data shaping, and “update the row so it never repeats” logic in the same flow. It also gives you self-hosting, which matters if you’re doing frequent scheduled checks. Zapier or Make can be quicker for a basic two-app handoff, but video uploads plus reporting usually get messy (and expensive) fast. If you’re deciding between tools, Talk to an automation expert and we’ll map it to your volume and channels.

Once this is live, your spreadsheet becomes the plan, and Telegram becomes the proof. Set it up, keep your calendar clean, and stop spending your best hours on posting chores.

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