This workflow corresponds to n8n.io template #8246 — we link there as the canonical source.
The workflow JSON
Copy or download the full n8n JSON below. Paste it into a new n8n workflow, add your credentials, activate. Full import guide →
{
"id": "voice-to-blog-v2",
"name": "Voice Memo to Blog Post with Deepgram, GPT-3.5 & Softr for Creators",
"tags": [
"voice-to-text",
"ai-writing",
"blog-automation",
"content-creation",
"google-sheets",
"html-to-image",
"softr",
"solopreneur",
"homemaker",
"n8n",
"deepgram",
"openai"
],
"nodes": [
{
"name": "Trigger: Voice Memo Workflow",
"type": "n8n-nodes-base.manualTrigger",
"position": [
250,
300
],
"parameters": {},
"typeVersion": 1
},
{
"name": "Sticky: \ud83c\udf99\ufe0f Step 1 \u2013 Submit Voice Memo URL",
"type": "n8n-nodes-base.stickyNote",
"color": "#FFF9C4",
"notes": "\ud83c\udf99\ufe0f **How to Use**\n\nPaste the public URL of your voice memo (MP3/WAV) here.\n\n\ud83d\udca1 *Sources*: Google Drive, Dropbox, iCloud, or any public link.\n\n\u2705 *Tip*: Use iOS Shortcuts or Make.com to auto-send memos to this workflow.",
"position": [
250,
150
],
"direction": "vertical",
"parameters": {
"content": ""
},
"typeVersion": 1,
"notesAlignment": "left"
},
{
"name": "Voice to Text",
"type": "n8n-nodes-base.voiceToText",
"position": [
450,
300
],
"parameters": {},
"typeVersion": 1
},
{
"name": "Sticky: \ud83e\udde0 Step 2 \u2013 Transcribe with Deepgram",
"type": "n8n-nodes-base.stickyNote",
"color": "#C8E6C9",
"notes": "\ud83e\udde0 **AI Transcription**\n\nUses Deepgram to convert your voice memo into accurate text.\n\n\ud83d\udd0a *Supports*: Long pauses, accents, background noise.\n\n\u23f1\ufe0f *Fast*: Transcribes 1 hour in ~12 seconds.",
"position": [
450,
150
],
"direction": "vertical",
"parameters": {
"content": ""
},
"typeVersion": 1,
"notesAlignment": "left"
},
{
"name": "HubGPT: Rewrite as Blog Post",
"type": "n8n-nodes-base.hubGpt",
"position": [
650,
300
],
"parameters": {},
"typeVersion": 1
},
{
"name": "Sticky: \u270d\ufe0f Step 3 \u2013 Polish with GPT-3.5",
"type": "n8n-nodes-base.stickyNote",
"color": "#BBDEFB",
"notes": "\u270d\ufe0f **AI Rewriting**\n\nTransforms raw transcript into a reader-friendly blog post.\n\n\ud83c\udfa8 *Customize*: Edit the prompt to match your brand voice.\n\n\ud83d\udca1 *Pro Tip*: Add \u201cInclude 3 bullet points\u201d or \u201cAdd a call-to-action\u201d to the prompt.",
"position": [
650,
150
],
"direction": "vertical",
"parameters": {
"content": ""
},
"typeVersion": 1,
"notesAlignment": "left"
},
{
"name": "HTML to Image",
"type": "n8n-nodes-base.htmlToImage",
"position": [
850,
300
],
"parameters": {},
"typeVersion": 1
},
{
"name": "Sticky: \ud83d\uddbc\ufe0f Step 4 \u2013 Generate Featured Image",
"type": "n8n-nodes-base.stickyNote",
"color": "#F8BBD0",
"notes": "\ud83d\uddbc\ufe0f **Auto-Generate Image**\n\nCreates a clean, branded featured image for blogs or social media.\n\n\ud83d\udd27 *Customize*: Edit HTML/CSS to match your brand colors/fonts.\n\n\ud83d\udce5 *Output*: Image URL saved to Google Sheets.",
"position": [
850,
150
],
"direction": "vertical",
"parameters": {
"content": ""
},
"typeVersion": 1,
"notesAlignment": "left"
},
{
"name": "Google Sheets: Save to Calendar",
"type": "n8n-nodes-base.googleSheets",
"position": [
1050,
300
],
"parameters": {},
"typeVersion": 1
},
{
"name": "Sticky: \ud83d\udcca Step 5 \u2013 Log in Content Calendar",
"type": "n8n-nodes-base.stickyNote",
"color": "#E1BEE7",
"notes": "\ud83d\udcca **Centralize Your Content**\n\nSaves all data to Google Sheets \u2014 your source of truth.\n\n\ud83d\udd17 *Softr Sync*: Connect this sheet to Softr for a visual dashboard.\n\n\ud83d\udd04 *Automate*: Add filters to skip published posts.",
"position": [
1050,
150
],
"direction": "vertical",
"parameters": {
"content": ""
},
"typeVersion": 1,
"notesAlignment": "left"
},
{
"name": "Email: Send Draft",
"type": "n8n-nodes-base.email",
"position": [
1250,
300
],
"parameters": {},
"typeVersion": 1
},
{
"name": "Sticky: \ud83d\udce8 Step 6 \u2013 Review via Email",
"type": "n8n-nodes-base.stickyNote",
"color": "#FFECB3",
"notes": "\ud83d\udce8 **Human-in-the-Loop**\n\nEmails you the draft for final review before publishing.\n\n\u2705 *Best Practice*: Forward to editor or VA for polish.\n\n\ud83d\ude80 *Next Step*: Add WordPress/Medium node to auto-publish after approval.",
"position": [
1250,
150
],
"direction": "vertical",
"parameters": {
"content": ""
},
"typeVersion": 1,
"notesAlignment": "left"
}
],
"active": false,
"settings": {
"executionOrder": "parallel"
},
"createdAt": "2025-09-04T00:00:00.000Z",
"updatedAt": "2025-09-04T00:00:00.000Z",
"versionId": "2.0",
"connections": {
"HTML to Image": {
"main": [
[
{
"node": "Google Sheets: Save to Calendar",
"type": "main",
"index": 0
}
]
]
},
"Voice to Text": {
"main": [
[
{
"node": "HubGPT: Rewrite as Blog Post",
"type": "main",
"index": 0
}
]
]
},
"HubGPT: Rewrite as Blog Post": {
"main": [
[
{
"node": "HTML to Image",
"type": "main",
"index": 0
}
]
]
},
"Google Sheets: Save to Calendar": {
"main": [
[
{
"node": "Email: Send Draft",
"type": "main",
"index": 0
}
]
]
}
}
}
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Stop letting great ideas vanish in your Notes app. This workflow transforms your voice memos into polished blog posts, LinkedIn articles, or newsletters — automatically.
Source: https://n8n.io/workflows/8246/ — original creator credit. Request a take-down →
Related workflows
Workflows that share integrations, category, or trigger type with this one. All free to copy and import.
This guide will walk you through setting up your n8n workflow. By the end, you'll have a fully automated system for managing your recruitment pipeline.
Batch_Call. Uses googleDrive, httpRequest, stopAndError, googleSheets. Event-driven trigger; 28 nodes.
This n8n workflow automatically generates TikTok/Reels-ready talking head videos from scratch. You provide a topic and intention, and the workflow handles everything: scriptwriting, avatar generation,
This template is only compatible with a self-hosted n8n instance using a community node.
This n8n workflow lets you control access to your internal Telegram bots and automation systems based on user roles and departments. It ensures that only authorized team members — defined in your empl