TechCrunch to Google Sheets, Thai AI digest ready
Your “daily AI news update” usually starts with good intentions. Then it turns into five open tabs, messy copy-paste into a spreadsheet, and a Telegram message that’s somehow both too long and missing the important part.
This Thai AI digest automation hits marketing leads who need fast context, but agency owners and research-minded operators feel it too. You get a consistent Thai summary, a quality score, and a clean Google Sheets log without babysitting the process.
Below is the workflow, what it solves, and what you’ll have in place so it runs every day at 6AM Bangkok time.
How This Automation Works
The full n8n workflow, from trigger to final output:
n8n Workflow Template: TechCrunch to Google Sheets, Thai AI digest ready
flowchart LR
subgraph sg0["Schedule Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "Schedule Trigger1", pos: "b", h: 48 }
n1["<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/html.dark.svg' width='40' height='40' /></div><br/>GetDate1"]
n2@{ icon: "mdi:swap-vertical", form: "rounded", label: "Split URL3", pos: "b", h: 48 }
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "Edit Fields6", pos: "b", h: 48 }
n4["<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/httprequest.dark.svg' width='40' height='40' /></div><br/>TechCrunchNews-AI1"]
n5@{ icon: "mdi:swap-vertical", form: "rounded", label: "Loop Over Items1", pos: "b", h: 48 }
n6["<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/code.svg' width='40' height='40' /></div><br/>TimeWaitRandom1"]
n7@{ icon: "mdi:robot", form: "rounded", label: "AI Agent1", pos: "b", h: 48 }
n8@{ icon: "mdi:robot", form: "rounded", label: "Structured Output Parser1", pos: "b", h: 48 }
n9@{ icon: "mdi:cog", form: "rounded", label: "Wait1", pos: "b", h: 48 }
n10@{ icon: "mdi:swap-horizontal", form: "rounded", label: "SelectDate", pos: "b", h: 48 }
n11@{ icon: "mdi:swap-vertical", form: "rounded", label: "SetData", 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/httprequest.dark.svg' width='40' height='40' /></div><br/>URL_Content"]
n13["<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/html.dark.svg' width='40' height='40' /></div><br/>GetBody"]
n14@{ icon: "mdi:database", form: "rounded", label: "NewsData", pos: "b", h: 48 }
n15@{ icon: "mdi:brain", form: "rounded", label: "Gpt-4.1-nano", pos: "b", h: 48 }
n16["<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"]
n9 --> n12
n13 --> n7
n11 --> n14
n1 --> n2
n14 --> n16
n7 --> n5
n10 --> n5
n2 --> n3
n12 --> n13
n3 --> n10
n15 -.-> n7
n6 --> n9
n5 --> n11
n5 --> n6
n0 --> n4
n4 --> n1
n8 -.-> n7
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 n0 trigger
class n7,n8 ai
class n15 aiModel
class n10 decision
class n14 database
class n4,n12 api
class n6 code
classDef customIcon fill:none,stroke:none
class n1,n4,n6,n12,n13,n16 customIcon
The Problem: AI news tracking turns into daily busywork
Keeping up with TechCrunch’s AI section sounds simple until you try to do it consistently. One day you miss an article and your “digest” becomes incomplete. Another day you skim headlines, share a link, and your team asks, “So what does it actually mean for us?” Then there’s the logging problem. If the takeaways live only in Telegram, you can’t search them later, categorize trends, or look back and see what mattered last month. Honestly, it’s a system built on memory and good intentions.
The friction compounds. Here’s where it breaks down in real life.
- Manual summarizing eats about 10 minutes per article, and it still comes out inconsistent.
- Teams share links without context, which means people either ignore them or ask the same questions later.
- Without a structured log, you lose the ability to search, filter, and spot patterns across weeks.
- Duplicate tracking happens easily when multiple people “cover” the same news on different days.
The Solution: Daily TechCrunch AI → Thai summary → Sheets + Telegram
This n8n workflow runs on a schedule (daily at 6AM Bangkok time), pulls the latest TechCrunch Artificial Intelligence articles, and filters down to items published “yesterday” so you don’t keep logging the same story. For each article, it fetches the full page, extracts the body text, and sends that content through an AI Agent powered by an OpenAI chat model. The agent produces a Thai summary, assigns a quality score using strict journalism criteria (up to 100), and categorizes the story into one of nine predefined buckets. Finally, the workflow appends a structured row to Google Sheets and posts a readable summary to your Telegram group. No reminders. No copying.
The workflow starts with a scheduled run and a TechCrunch scrape. It then loops through articles one-by-one with a small random wait to keep requests stable. At the end, you get two outputs that match: a searchable sheet for history, and a Telegram post for daily visibility.
What You Get: Automation vs. Results
| What This Workflow Automates | Results You’ll Get |
|---|---|
|
|
Example: What This Looks Like
Say TechCrunch publishes 6 AI articles in a day. If you manually read, summarize, and log each one, you’re looking at roughly 10 minutes per article plus another 5 minutes to format and share it, so about 90 minutes total. With this workflow, you spend maybe 5 minutes skimming the Telegram digest and only open the 1–2 items that scored highest. The sheet is already filled in, categorized, and searchable for later.
What You’ll Need
- n8n instance (try n8n Cloud free)
- Self-hosting option if you prefer (Hostinger works well)
- Google Sheets for the searchable digest database.
- Telegram to deliver the daily summary to a group.
- OpenAI API key (get it from your OpenAI dashboard).
Skill level: Beginner. You’ll connect accounts, paste IDs (chatId, sheet details), and test one run.
Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).
How It Works
Daily scheduled trigger at 6AM (Bangkok time). n8n kicks off automatically, so you’re not relying on someone to “remember the digest.”
Scrape and filter TechCrunch AI posts. The workflow pulls the AI category page, extracts article links and publish dates, then only keeps items from yesterday to avoid duplicates.
Fetch each article safely. It loops through the list in batches, adds a small random delay, downloads the article page, and extracts the body text so the AI works from the full content, not just a headline.
Thai summary, score, category, then publish. The AI Agent generates a Thai-language summary, a score out of 100, and one of nine categories. n8n appends a new row in Google Sheets and sends a matching Telegram message your team can read in seconds.
You can easily modify the category list to match your team’s themes, or change the schedule to run twice a day 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 daily and start the scraping sequence from the TechCrunch AI category page.
- Add and open Scheduled Run Trigger.
- Set the schedule to run daily at
06:00(the node uses triggerAtHour set to6). - Confirm it connects directly to Fetch TechCrunch AI.
Step 2: Connect the TechCrunch Data Source
Fetch the AI category page and extract publish dates and article URLs.
- Open Fetch TechCrunch AI and set URL to
https://techcrunch.com/category/artificial-intelligence/. - Configure Extract Publish Date to extract DatePublished from CSS selector
.loop-card__meta > timeand url from.loop-card__title > a, returning attributes. - In Split Link Fields, set Field To Split Out to
DatePublished, urlso each article becomes its own item.
Step 3: Filter and Format Articles by Date
Normalize the publish date and route only yesterday’s items for processing.
- In Map Date Fields, map DatePublished to
{{$json.DatePublished.toDateTime().format('dd/MM/yyyy')}}and url to{{$json.url}}. - Open Route by Date and confirm the rule compares
{{$json.DatePublished}}to{{$now.minus(1,'days').format('dd/MM/yyyy')}}. - Ensure the YesterdayOnly output goes to Iterate Articles.
Step 4: Set Up Article Processing, Delay, and AI Summary
Process each article, fetch the page, extract body text, and generate an AI summary.
- Use Iterate Articles to handle items one at a time; it outputs to both Assemble Output Data and Random Delay Calc in parallel.
- In Random Delay Calc, keep the JavaScript as provided to generate a delay between
4and10seconds. - Set Delay Execution Step Amount to
{{$json.delay.format()}}so each article waits before fetching the page. - In Fetch Article Page, set URL to
{{$('Route by Date').item.json.url}}. - Configure Extract Article Body to extract body from
div[class*="entry-content"]. - Open AI Summary Agent and keep the Thai prompt with
{{ $json.body }}inserted; ensure hasOutputParser is enabled.
Step 5: Assemble Data and Write Outputs
Map the AI results and push them to Google Sheets and Telegram.
- In Assemble Output Data, map fields to:
{{$json.output.score}},{{$json.output.headline}},{{$json.output.summary}},{{$json.output.category}},{{$('Route by Date').item.json.url}}, and{{$('Route by Date').item.json.DatePublished}}. - Open Append Sheet Row and set Operation to
append, Document ID to[YOUR_ID], and Sheet Name to[YOUR_ID](choose your actual spreadsheet and tab). - Map the columns in Append Sheet Row to the expressions:
{{$json.url}},{{$json.score}},{{$json.summary}},{{$json.category}},{{$json.headline}},{{$json.DatePublished}}. - Open Telegram Update Post, set Chat ID to
[YOUR_ID], and keep the message template starting with=สรุปข่าวใหม่ 📰 วันที่: {{$json.DatePublished}}.
Credential Required: Connect your googleSheetsOAuth2Api credentials in Append Sheet Row.
Credential Required: Connect your telegramApi credentials in Telegram Update Post.
Step 6: Test and Activate Your Workflow
Run a manual test to confirm scraping, AI summarization, and output delivery.
- Click Execute Workflow and monitor data flowing from Scheduled Run Trigger to Fetch TechCrunch AI.
- Verify Append Sheet Row appends a new row containing
summary,score, andcategory. - Check Telegram Update Post sends a formatted message to your chat.
- Once confirmed, toggle the workflow to Active to run daily at the scheduled time.
Common Gotchas
- Google Sheets credentials can expire or need specific permissions. If things break, check the n8n credential settings for the Google Sheets OAuth connection 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.
- Telegram chat IDs are easy to mis-copy (group vs. channel vs. user). If messages aren’t arriving, confirm the chatId in the Telegram node and make sure the bot is allowed to post in that group.
Frequently Asked Questions
About 15 minutes if your Google Sheets, Telegram, and OpenAI accounts are ready.
No. You’ll mostly connect accounts and paste a few IDs into the right fields.
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 API usage, which is usually a few cents per article depending on 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, but keep it simple at first. You can change the nine-category list inside the AI Agent prompt, and you can swap the TechCrunch scrape step by editing the “Fetch TechCrunch AI” HTTP request to point at another section or site. Common tweaks include writing the summary in English instead of Thai, adjusting the scoring criteria, or adding extra columns in the “Assemble Output Data” step before saving to Google Sheets.
Usually it’s an expired OAuth token or the Google account doesn’t have edit access to the target spreadsheet. Reconnect the Google Sheets credential in n8n, then double-check the documentId and sheetName values you set in the workflow. If it still fails, look for a “permission denied” message in the execution log, because that points to sharing settings rather than the workflow logic.
In practice, it can handle dozens of articles per day, and the main limiter is how fast you want to process plus your OpenAI usage budget. On n8n Cloud, your monthly execution limit depends on plan, while self-hosting has no hard execution cap. If TechCrunch has a busy day, consider keeping the random delay and batch loop so requests stay stable.
Often, yes, because this is more than a simple “new item → send message” zap. You’re scraping a page, filtering by date, looping through multiple articles, waiting between requests, extracting body text, then running a structured AI output. n8n is built for that kind of logic, and self-hosting can make it far cheaper once volume grows. Zapier or Make can still work if you only need a basic RSS-to-Telegram digest and don’t care about scoring or structured fields. If you want help choosing (or simplifying), Talk to an automation expert.
Once this is running, your “AI news habit” stops relying on willpower. The workflow does the repeatable work, and you get a clean daily signal you can actually use.
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.