Google Calendar to Telegram, your day in one message
Your day starts with good intentions. Then you check Google Calendar, jump into email, get pulled into Slack, and somehow the first meeting is already happening.
This calendar Telegram summary automation hits busy founders first, but marketers and client-facing consultants feel it too. You get one clean message at 6:00 AM that shows what’s actually on your schedule, so you stop missing small but important meetings.
You’ll set up an n8n workflow that pulls today’s events, formats them with AI into something readable, and sends it to your Telegram chat automatically.
How This Automation Works
Here’s the complete workflow you’ll be setting up:
n8n Workflow Template: Google Calendar to Telegram, your day in one message
flowchart LR
subgraph sg0["Schedule Flow"]
direction LR
n0@{ icon: "mdi:brain", form: "rounded", label: "Anthropic Chat Model1", pos: "b", h: 48 }
n1@{ icon: "mdi:play-circle", form: "rounded", label: "Schedule Trigger", pos: "b", h: 48 }
n2@{ icon: "mdi:location-exit", form: "rounded", label: "Get many events", pos: "b", h: 48 }
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "ID, Summary, Time", pos: "b", h: 48 }
n4@{ icon: "mdi:cog", form: "rounded", label: "Combine data", pos: "b", h: 48 }
n5@{ icon: "mdi:swap-vertical", form: "rounded", label: "Get string", pos: "b", h: 48 }
n6@{ icon: "mdi:robot", form: "rounded", label: "Event extractor", pos: "b", h: 48 }
n7["<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/>Send a text message"]
n5 --> n6
n4 --> n5
n6 --> n7
n2 --> n3
n1 --> n2
n3 --> n4
n0 -.-> n6
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 n1 trigger
class n6 ai
class n0 aiModel
classDef customIcon fill:none,stroke:none
class n7 customIcon
Why This Matters: Starting the Day Without a Clear Plan
Looking at your calendar shouldn’t feel like decoding a puzzle. But most days it does. Event titles are vague, times are scattered, and you end up re-checking the same schedule three or four times because you don’t trust you caught everything. Add a couple of reschedules, a “quick call” someone dropped on your calendar, and now you’re reacting instead of running your day. The worst part is the mental load: your brain stays in “don’t forget” mode instead of “do the work” mode.
It adds up fast. Here’s where it breaks down.
- You bounce into Google Calendar multiple times a day, which steals focus in the middle of real work.
- It’s easy to miss a meeting when the only “reminder” is a tiny notification at the wrong moment.
- Back-to-back events hide the gaps you actually need for prep, travel, or follow-ups.
- When your schedule changes overnight, you don’t notice until something goes sideways.
What You’ll Build: A Daily Telegram Agenda From Google Calendar
This workflow runs every morning at 6:00 AM and creates a simple daily agenda message for you. It starts by pulling all events from your Google Calendar scheduled for today. Then it tidies the raw event data by extracting the useful parts (event ID, title, start time) and aggregating everything into one ordered list. That list becomes a plain-text payload, which is sent through an AI “information extractor” (Claude 3.5 Sonnet) that turns it into a clean, readable summary. Finally, n8n delivers that summary straight to your chosen Telegram chat ID, so your day shows up where you’ll actually see it.
The workflow begins with a scheduled trigger. Google Calendar provides the events, a few formatting steps turn them into a single string, and the AI formats the final agenda. Telegram is the last mile: one message, ready to skim.
What You’re Building
| What Gets Automated | What You’ll Achieve |
|---|---|
|
|
Expected Results
Say you have 8 events on a typical day. Manually checking your calendar “just to be safe” takes maybe 2 minutes each time, and most people do it 5 times, so that’s about 10 minutes plus the distraction cost. With this workflow, the agenda arrives automatically at 6:00 AM, and you spend about 10 seconds scanning it. You still open Calendar when you need details, but you stop doing the repeated “what’s next?” loop.
Before You Start
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Google Calendar for reading your daily events.
- Telegram to receive the daily agenda message.
- Anthropic/Claude access (get the API credentials from your Anthropic account dashboard)
Skill level: Beginner. You will connect accounts, pick a calendar, and paste a chat ID.
Want someone to build this for you? Talk to an automation expert (free 15-minute consultation).
Step by Step
A daily schedule kicks it off. The workflow uses a Schedule Trigger set for 6:00 AM, but you can change it to any hour that matches your routine.
Google Calendar events are collected. n8n pulls “today’s” events from the calendar you choose, so you’re not mixing personal and work calendars unless you want to.
The data is cleaned and assembled. The workflow maps event fields (ID, title, start time), aggregates them into a single list, and prepares one text payload that’s easy for an AI model to interpret.
AI turns the list into a readable agenda. The information extractor formats everything into a clean summary (think: human-friendly, not raw calendar dumps), then Telegram sends it to your chosen chat ID.
You can easily modify the reminder time and message style 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 daily schedule so the workflow runs automatically at a specific time.
- Add or open Scheduled Automation Trigger.
- Set the schedule rule to run at
06:00using the interval rule (triggerAtHour). - Confirm the node is connected to Retrieve Calendar Events to begin the flow.
Step 2: Connect Google Calendar
Pull the day’s events from your calendar using Google Calendar OAuth.
- Open Retrieve Calendar Events.
- Credential Required: Connect your googleCalendarOAuth2Api credentials.
- Set Operation to
getAll. - Set Time Min to
{{ $now.startOf('day') }}and Time Max to{{ $now.endOf('day') }}. - Select the target calendar from the Calendar dropdown.
Step 3: Map and Aggregate Event Data
Normalize event fields and aggregate them into a single list for summarization.
- Open Map Event Fields and add assignments for event data.
- Set id to
{{ $json.id }}. - Set summary to
{{ $json.summary }}. - Set dateTime to
{{ $json.start.dateTime }}. - Open Aggregate Event List and set Aggregate to
aggregateAllItemData.
Step 4: Set Up the AI Summarization
Prepare the aggregated data and summarize it using Claude via the information extractor.
- Open Prepare Text Payload and set data to
{{ $json.data }}. - Open Extract Event Summary and set Text to
{{ $json.data }}. - Keep the System Prompt Template as
You are event extractor. Your task is get event with date and time.. - Ensure the attribute Summary is present to capture output.
- Confirm Claude Model Hub is connected as the language model for Extract Event Summary; add credentials to Claude Model Hub.
- Credential Required: Connect your anthropicApi credentials in Claude Model Hub (AI sub-nodes do not store credentials).
Step 5: Configure Telegram Delivery
Send the summarized digest to your Telegram chat.
- Open Dispatch Telegram Notice.
- Credential Required: Connect your telegramApi credentials.
- Set Text to
{{ $json.output.Summary }}. - Set Chat ID to your Telegram chat ID (replace
[YOUR_ID]). - Ensure Append Attribution is disabled (set to
false).
[YOUR_ID] in Chat ID will cause the Telegram send to fail—replace it with your actual chat ID.Step 6: Test and Activate Your Workflow
Run a manual test to validate the daily digest and then activate the schedule.
- Click Execute Workflow to run a manual test.
- Verify Retrieve Calendar Events returns today’s events and Map Event Fields outputs
id,summary, anddateTime. - Check that Extract Event Summary outputs
output.Summaryand Dispatch Telegram Notice sends a message. - Once confirmed, toggle the workflow to Active so it runs daily at the scheduled time.
Troubleshooting Tips
- Google Calendar credentials can expire or need specific permissions. If things break, check the credential status in n8n’s Credentials screen 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.
Quick Answers
About 20 minutes if your accounts are ready.
No. You’ll mostly connect Google Calendar and Telegram, then paste your chat ID and pick the calendar.
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 Claude/Anthropic API usage, which depends on how many events you format per day.
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 you should. You can change the run time in the Scheduled Automation Trigger node, switch calendars in Retrieve Calendar Events, and adjust the tone or format by editing the Information Extractor system prompt. Common tweaks include filtering to only “Meetings” or “Deadlines,” adding multiple calendars, or sending the same summary to email instead of Telegram.
Usually it’s expired Google OAuth access or the wrong calendar selected in the Retrieve Calendar Events node. Reconnect the Google Calendar credential in n8n, then confirm the calendar field points to an actual calendar you have access to. If it still fails, check that your Google account isn’t blocking the app connection due to security settings, and try running the workflow manually to see the exact error message.
For most people, “a day of events” is a small payload, so it runs comfortably on any plan. On n8n Cloud Starter, you’re limited by monthly executions, but this workflow only fires once per day unless you add extra reminders. If you self-host, there’s no execution cap, and the practical limit becomes API rate limits and your server resources, not the workflow design.
Often, yes, because the AI formatting and data shaping are easier to control in n8n, and you can self-host for unlimited runs. Zapier and Make are fine for basic “send event to Telegram” setups, but they get awkward when you need aggregation, custom formatting, and prompt control. n8n also makes it simpler to add branches later, like a second message at noon if you have afternoon meetings. If you’re deciding across tools, think about how picky you are about the final message format. Talk to an automation expert if you’re not sure which fits.
Once this is running, your schedule stops being something you “check” and becomes something you simply follow. It’s a small automation, honestly, but it clears mental space every day.
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.