Telegram + Google Sheets: content drafts, tracked
Your best content ideas don’t die because you’re uncreative. They die because they’re stuck in voice notes, DMs, or random notepads, and turning them into drafts requires a whole mini-project.
Marketing managers feel it when campaigns pile up. Solo founders feel it when they have to switch hats mid-day. And if you run a small agency, you’ve probably got client requests coming in from everywhere. This Telegram drafts automation turns a quick Telegram message into usable content, and it keeps a clean log in Google Sheets so nothing disappears.
Below is the workflow, what it actually fixes, and how to make it work for your content process without living inside ten different tools.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: Telegram + Google Sheets: content drafts, tracked
flowchart LR
subgraph sg0["Telegram Flow"]
direction LR
n0@{ icon: "mdi:brain", form: "rounded", label: "GPT 4.1", pos: "b", h: 48 }
n1@{ icon: "mdi:wrench", form: "rounded", label: "Create Image", pos: "b", h: 48 }
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/telegram.svg' width='40' height='40' /></div><br/>Telegram"]
n3@{ icon: "mdi:memory", form: "rounded", label: "Simple Memory", pos: "b", h: 48 }
n4@{ icon: "mdi:wrench", form: "rounded", label: "Edit Image", pos: "b", h: 48 }
n5@{ icon: "mdi:wrench", form: "rounded", label: "Search Images", pos: "b", h: 48 }
n6@{ icon: "mdi:wrench", form: "rounded", label: "Blog Post", pos: "b", h: 48 }
n7@{ icon: "mdi:wrench", form: "rounded", label: "LinkedIn Post", pos: "b", h: 48 }
n8@{ icon: "mdi:swap-vertical", form: "rounded", label: "Set 'Text'", pos: "b", h: 48 }
n9["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/telegram.svg' width='40' height='40' /></div><br/>Download Voice File"]
n10@{ icon: "mdi:robot", form: "rounded", label: "Transcribe Audio", pos: "b", h: 48 }
n11@{ icon: "mdi:swap-horizontal", form: "rounded", label: "Switch", pos: "b", h: 48 }
n12["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/telegram.svg' width='40' height='40' /></div><br/>Telegram Trigger"]
n13@{ icon: "mdi:wrench", form: "rounded", label: "Video", pos: "b", h: 48 }
n14@{ icon: "mdi:robot", form: "rounded", label: "Marketing Team Agent", pos: "b", h: 48 }
n15@{ icon: "mdi:wrench", form: "rounded", label: "Think", pos: "b", h: 48 }
n15 -.-> n14
n13 -.-> n14
n11 --> n9
n11 --> n8
n0 -.-> n14
n6 -.-> n14
n4 -.-> n14
n8 --> n14
n1 -.-> n14
n7 -.-> n14
n5 -.-> n14
n3 -.-> n14
n12 --> n11
n10 --> n14
n9 --> n10
n14 --> n2
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n12 trigger
class n10,n14 ai
class n0 aiModel
class n1,n4,n5,n6,n7,n13,n15 ai
class n3 ai
class n11 decision
classDef customIcon fill:none,stroke:none
class n2,n9,n12 customIcon
The Problem: Great ideas get trapped in chat
Content teams don’t usually struggle with “coming up with ideas.” The struggle is converting messy input into something you can publish. A voice note becomes a half-transcribed paragraph, then a doc, then a rewrite, then “where did we put that version?” Meanwhile you’re also trying to remember what you asked for last week, which prompt worked, and which draft went to which channel. It’s not hard work. It’s just endless friction, and it steals the time you wanted to spend on strategy, editing, and distribution.
The friction compounds. Here’s where it breaks down.
- You lose requests because they live inside Telegram threads with no tracking.
- Voice notes take longer than they should because someone has to transcribe and clean them up manually.
- Drafts bounce between tools, so you spend about 2 hours a week just copying, formatting, and hunting for the “latest.”
- Without a log, you can’t spot patterns like “we keep asking for LinkedIn hooks,” which makes scaling your content system harder than it needs to be.
The Solution: Telegram in, content drafts out (with a Sheets trail)
This workflow turns Telegram into your content intake and delivery channel, then quietly keeps the receipts in Google Sheets. You send a text message or a voice note to your Telegram bot. If it’s voice, the workflow fetches the audio and transcribes it into usable text. From there, a “Marketing Agent” (built with LangChain logic) interprets what you’re asking for and chooses the right content tool behind the scenes, like “Compose Blog Article” or “Craft LinkedIn Update.” When it’s done, you get the draft back in Telegram, ready to paste into your CMS or scheduler, and the request is logged so you can track what was generated and when.
The workflow starts with a Telegram trigger, then routes input based on message type. It uses an AI model (via OpenRouter) to understand the request, and it responds in the same chat so you don’t have to context-switch. Google Sheets acts as your simple tracking layer, which means you can audit output and keep your process organized.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say you create 5 pieces of content a week (a blog draft plus 4 social posts) and each request usually takes about 15 minutes of “move this here, paste that there, clean up the voice note, open another tab.” That’s roughly 75 minutes weekly before you even start editing. With this workflow, intake is basically the time it takes to send a Telegram message (call it 1 minute), then you wait for processing and get the draft back in the same chat. You still edit, of course, but you’re no longer doing the annoying prep work that turns content into a chore.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Telegram Bot to receive messages and send replies.
- Google Sheets to log requests and outputs.
- OpenRouter API key (get it from your OpenRouter dashboard).
Skill level: Intermediate. You’ll connect a few credentials, import the sub-workflows, and confirm the agent can call the right tools.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
A Telegram message triggers everything. When you send a text or voice note to the bot, the Telegram Trigger starts the workflow immediately. No forms. No extra apps.
Voice notes get converted into text. If the input is audio, n8n fetches the voice clip and runs transcription so the rest of the workflow can treat it like a normal request.
The agent decides what to create. The “Marketing Agent Brain” uses the language model (via OpenRouter) plus tool-style sub-workflows to pick the right action, like writing a blog post draft, a LinkedIn update, or generating an image.
You get the output back in chat, and it’s tracked. The workflow sends the result to Telegram, so your draft is right where you asked for it. In parallel, Google Sheets can store the request and result details so you can search, review, and report later.
You can easily modify the content types the agent is allowed to create to match your workflow, like limiting it to LinkedIn drafts only or adding stricter brand formatting. See the full implementation guide below for customization options.
Step-by-Step Implementation Guide
Step 1: Configure the Telegram Trigger
Set up the Telegram intake so messages (text or voice) can start the workflow.
- Add the Telegram Intake Trigger node and keep Updates set to
message. - Credential Required: Connect your
telegramApicredentials to Telegram Intake Trigger. - Verify the webhook is generated and Telegram can reach your n8n instance.
- Connect Telegram Intake Trigger to Route by Input.
Step 2: Route Incoming Input (Voice vs. Text)
Use conditional routing so voice messages are transcribed while text messages pass through directly.
- In Route by Input, keep the voice condition set to
{{ $json.message.voice.file_id }}with the exists operator. - Keep the text condition set to
{{ $json.message.text }}with the exists operator. - Connect the first output of Route by Input to Fetch Voice Clip.
- Connect the second output of Route by Input to Map Text Payload.
Step 3: Configure Voice Transcription and Text Mapping
Handle voice inputs with transcription and ensure text inputs are mapped into a consistent field.
- In Fetch Voice Clip, set Resource to
fileand File ID to{{ $json.message.voice.file_id }}. - Credential Required: Connect your
telegramApicredentials to Fetch Voice Clip. - In Audio Transcription, set Resource to
audioand Operation totranscribe. - Credential Required: Connect your
openAiApicredentials to Audio Transcription. - In Map Text Payload, add an assignment with Name
textand Value{{ $json.message.text }}. - Connect Fetch Voice Clip → Audio Transcription → Marketing Agent Brain and Map Text Payload → Marketing Agent Brain.
Step 4: Set Up the Marketing AI Agent
Configure the agent brain, memory, and tools that generate content and image actions.
- In Marketing Agent Brain, set Text to
{{ $json.text }}and keep Prompt Type asdefine. - In Marketing Agent Brain, keep the provided System Message so the agent can decide between image creation, editing, blog posts, LinkedIn posts, and video creation.
- Connect Language Model Core to Marketing Agent Brain as the AI language model and set Model to
openai/gpt-4.1. - Credential Required: Connect your
openRouterApicredentials to Language Model Core. - Connect Session Memory Buffer to Marketing Agent Brain as memory and set Session Key to
{{ $('Telegram Intake Trigger').item.json.message.chat.id }}with Session ID TypecustomKey. - Connect Reasoning Helper, Produce Video Clip, Compose Blog Article, Craft LinkedIn Update, Generate Image Tool, Modify Image Tool, and Lookup Image Catalog as AI tools for Marketing Agent Brain.
Step 5: Configure the Telegram Response Output
Send the agent’s output back to the original Telegram chat.
- In Send Telegram Reply, set Text to
{{ $json.output }}. - Set Chat ID to
{{ $('Telegram Intake Trigger').item.json.message.chat.id }}to reply to the originating user. - Credential Required: Connect your
telegramApicredentials to Send Telegram Reply. - Ensure Marketing Agent Brain is connected to Send Telegram Reply.
Step 6: Test and Activate Your Workflow
Validate both text and voice inputs before turning on the automation.
- Click Execute Workflow and send a text message to the Telegram bot; confirm Send Telegram Reply returns a response.
- Send a voice note and verify the execution passes through Fetch Voice Clip → Audio Transcription → Marketing Agent Brain.
- Confirm the reply contains the expected content (blog post, LinkedIn update, image link, or video response).
- When tests succeed, toggle the workflow to Active for production use.
Common Gotchas
- Telegram bot credentials can expire or the bot can lose access to a chat. If replies stop showing up, check the bot token in n8n and confirm the chat permissions in Telegram 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
About 30 minutes if your credentials are ready.
No. You’ll mostly import workflows, connect accounts, and tweak a couple of prompts.
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 OpenRouter usage, which is typically a few cents per request depending on the model and output length.
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.
Yes, and it’s one of the best ways to make outputs more consistent. Limit the agent’s available tools so it can only call the “Craft LinkedIn Update” sub-workflow, then tighten the prompt to your preferred structure (hook, value, CTA, hashtags). You can also adjust the “Route by Input” logic to reject file uploads if you don’t want image or PDF inputs. After that, your Telegram requests become predictable, which is honestly the whole point.
Usually it’s an invalid or rotated bot token. Update the Telegram credentials in n8n, then confirm your bot is still in the right chat and allowed to post messages. If voice notes fail but text works, check that the workflow can fetch the file from Telegram (permissions and file access are the common culprits). Rate limits can also show up when you test a bunch of requests back-to-back.
On n8n Cloud Starter, you can run a few thousand executions per month, and higher tiers handle more. If you self-host, there’s no platform execution cap, but you’re limited by your server and your AI provider rate limits. In practice, most small teams run this all day without issues because each request is just one execution plus some waiting for the AI response.
It depends. If you want an agent-style flow with branching and tool selection, n8n is a better fit and won’t punish you for complexity. Zapier or Make can be fine for “Telegram message → create row in Sheets,” but once you add transcription, an AI router, and multiple content tools, it gets messy and expensive. n8n also gives you the option to self-host, which changes the cost math. If you’re unsure, Talk to an automation expert and you’ll get a straight answer for your setup.
This is the kind of automation you set up once and lean on every week. Your ideas move faster, your drafts stay organized, and you spend your time polishing content instead of chasing it.
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.