This workflow corresponds to n8n.io template #15458 — we link there as the canonical source.
This workflow follows the Form Trigger → Google Drive recipe pattern — see all workflows that pair these two integrations.
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": "fXytAwTjbHWbm4r7",
"meta": {
"templateCredsSetupCompleted": true
},
"name": "Content Atomizer",
"tags": [
{
"id": "xRJNyiRIpAsEzL8y",
"name": "Olostep",
"createdAt": "2026-01-31T11:17:46.807Z",
"updatedAt": "2026-01-31T11:17:46.807Z"
}
],
"nodes": [
{
"id": "9eb8d864-860a-47dc-b792-8f85f3d25db4",
"name": "On form submission",
"type": "n8n-nodes-base.formTrigger",
"position": [
0,
0
],
"parameters": {
"options": {},
"formTitle": "Content Atomizer",
"formFields": {
"values": [
{
"fieldLabel": "article url"
}
]
},
"formDescription": "Enter the article URL, please."
},
"typeVersion": 2.5
},
{
"id": "db0ee131-25d0-4074-be6c-a4765fe1f530",
"name": "Core Extractor",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
384,
0
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-2.5-flash",
"cachedResultName": "models/gemini-2.5-flash"
},
"options": {},
"messages": {
"values": [
{
"role": "model",
"content": "You are a helpful, intelligent assistant"
},
{
"content": "I am providing a transcript/article from a piece of content. Extract the 5 most 'shareable' insights, 3 surprising statistics (if any), and the overall 'lesson' of the content. Summarize each in clear, simple bullet points. Avoid filler words and keep the tone objective."
},
{
"content": "=Transcript/Article: {{ $json.markdown_content }}"
}
]
},
"builtInTools": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.1
},
{
"id": "37429b45-c625-41fc-a4ac-ec6bb30d9227",
"name": "LinkedIn",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
752,
-288
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-2.5-flash",
"cachedResultName": "models/gemini-2.5-flash"
},
"options": {},
"messages": {
"values": [
{
"role": "model",
"content": "You are a professional, intelligent, LinkedIn post writer."
},
{
"content": "=Using the core insights provided, write a high-authority LinkedIn post.\n\nRules:\n- Start with a 'Pattern Interrupt' hook (a bold claim or a question).\n- Use a 'Problem-Agitation-Solution' structure.\n- Use bullet points for the main tips.\n- End with a 'Call to Conversation' question.\n\nTone: Professional, slightly opinionated, and helpful."
},
{
"content": "=Core Insights: {{ $json.content.parts.last().text }}"
}
]
},
"builtInTools": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.1
},
{
"id": "36e5529d-155c-4fe4-8c02-d9a3677b8c16",
"name": "Twitter (X)",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
752,
-96
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-2.5-flash",
"cachedResultName": "models/gemini-2.5-flash"
},
"options": {},
"messages": {
"values": [
{
"role": "model",
"content": "You are a professional, intelligent, Twitter content writer."
},
{
"content": "=Using the provided insights, create a 6-tweet Twitter thread.\n\n- Tweet 1: The 'Hook'. Must state a clear benefit of reading the thread.\n- Tweets 2-5: Each tweet must cover one specific insight. Use short sentences (under 15 words).\n- Tweet 6: A summary 'TL;DR' tweet and a CTA to follow for more. Use 1-2 relevant emojis per tweet maximum.\n\nRules:\n- Do not output an intro, start directly with the content. Do not say something like \"here's a 6-tweet twitter thread....\"."
},
{
"content": "=Core Insights: {{ $json.content.parts.last().text }}"
}
]
},
"builtInTools": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.1
},
{
"id": "8cde65d2-63ff-4447-bed2-17fdcb5c0f57",
"name": "Reddit",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
752,
96
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-2.5-flash",
"cachedResultName": "models/gemini-2.5-flash"
},
"options": {},
"messages": {
"values": [
{
"role": "model",
"content": "You are an active, long-time Reddit user known for providing high-value, 'no-fluff' content. Your goal is to rewrite the provided insights into a post that feels human, slightly informal, and deeply helpful."
},
{
"content": "=Using the provided insights, draft a Reddit post for a relevant community (like r/SaaS, r/Marketing, or r/Entrepreneur).\n\nStructure Requirements:\n\n- The Title: Do not use 'Clickbait'. Use 'Value-bait'. (e.g., 'What I learned after [X]', 'A simple framework for [Y]', or 'I analyzed [Z] so you don't have to').\n- The Hook: Start with a personal anecdote or a blunt realization.\n- The Meat: Use Markdown (bolding and bullet points) to make it scannable. Reddit users love lists.\n- The 'Anti-Pitch': Do not link to anything in the main post. State: 'I'll leave a link to the full breakdown in the comments if anyone is interested' (this avoids spam filters).\n\nTone: Humble, transparent, and ready for debate. Admit if something was a failure or a hard lesson.\n\nRules:\n- Do not output an intro, start with the title directly. Do not output something like \"here's a draft for....\"."
},
{
"content": "=Core Insights: {{ $json.content.parts.last().text }}"
}
]
},
"builtInTools": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.1
},
{
"id": "e9d4a38a-6ee2-4847-a3eb-0fb489478e20",
"name": "FAQ",
"type": "@n8n/n8n-nodes-langchain.googleGemini",
"position": [
752,
288
],
"parameters": {
"modelId": {
"__rl": true,
"mode": "list",
"value": "models/gemini-2.5-flash",
"cachedResultName": "models/gemini-2.5-flash"
},
"options": {},
"messages": {
"values": [
{
"role": "model",
"content": "=You are a helpful, intelligent, FAQ generator."
},
{
"content": "=Using the technical analysis and the raw documentation, generate a user-friendly FAQ guide.\n\nStructure:\n\n- The 'Quick Start' Answer: A 2-sentence answer to the 'Core Objective' identified in Step 3.\n- Top 5 'How-To' Questions: Transform the documentation steps into questions (e.g., 'How do I authenticate my first request?' or 'Where do I find my API key?'). Provide short, jargon-free answers for each.\n- Troubleshooting Section: Create 3 'What if...' scenarios based on the friction points (e.g., 'What if I get a 401 error?').\n- Code Snippet (Simplified): If there is code, provide a 'Minimum Viable Code' example that is commented for a beginner.\n\nTone: Helpful, patient, and clear. Avoid passive voice.\n\nRules:\n- Do not output an intro. Do not output something like \"here's a user-friendly FAQ guide for.....\"."
},
{
"content": "=Article Raw Content: {{ $('Scrape Article').item.json.markdown_content }}\n\nCore Insights: {{ $json.content.parts.last().text }}\n"
}
]
},
"builtInTools": {}
},
"credentials": {
"googlePalmApi": {
"name": "<your credential>"
}
},
"typeVersion": 1.1
},
{
"id": "2e404f50-43aa-4ec7-8db4-0d9a6756364e",
"name": "Scrape Article",
"type": "n8n-nodes-olostep.olostepScrape",
"position": [
192,
0
],
"parameters": {
"url_to_scrape": "={{ $json['article url'] }}"
},
"credentials": {
"olostepScrapeApi": {
"name": "<your credential>"
}
},
"typeVersion": 1
},
{
"id": "542fefa5-1a96-40e0-b41d-c6d7841e7468",
"name": "Markdown",
"type": "n8n-nodes-base.markdown",
"position": [
1168,
48
],
"parameters": {
"mode": "markdownToHtml",
"options": {
"tables": true,
"simplifiedAutoLink": true,
"completeHTMLDocument": true
},
"markdown": "={{ $json.content }}"
},
"typeVersion": 1
},
{
"id": "fe25cfb8-fa2f-451b-af41-72206547f2ac",
"name": "Transfer HTML to Doc",
"type": "n8n-nodes-base.httpRequest",
"position": [
1152,
288
],
"parameters": {
"url": "=https://www.googleapis.com/drive/v3/files/{{ $json.id }}/copy?fields=id,name,mimeType,webViewLink",
"method": "POST",
"options": {},
"jsonBody": "={\n \"name\": \"Content Atomizer Report\",\n \"mimeType\": \"application/vnd.google-apps.document\"\n}",
"sendBody": true,
"specifyBody": "json",
"authentication": "predefinedCredentialType",
"nodeCredentialType": "googleDriveOAuth2Api"
},
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 4.2
},
{
"id": "8eb55892-d291-412c-945a-99fcd67f794b",
"name": "Generate HTML Binary File",
"type": "n8n-nodes-base.code",
"position": [
1360,
48
],
"parameters": {
"jsCode": "// Loop over alle items\nreturn $input.all().map(item => {\n const html = $input.first().json.data; // jouw HTML-string\n // Zet \u2018m om naar een Buffer\n item.binary = {\n htmlFile: {\n data: Buffer.from(html, 'utf8').toString('base64'),\n mimeType: 'text/html',\n fileName: 'output.html'\n }\n };\n // Je hebt verder geen JSON nodig, dus ruim op:\n return { json: {}, binary: item.binary };\n});"
},
"typeVersion": 2
},
{
"id": "2ae5ac03-35c6-496f-9867-7124a9b3ab19",
"name": "Share link & email",
"type": "n8n-nodes-base.googleDrive",
"position": [
1568,
288
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Transfer HTML to Doc').item.json.id }}"
},
"options": {
"emailMessage": "=Hey,\n\nYour \"Content Atomizer\" report is ready, find it at this link."
},
"operation": "share",
"permissionsUi": {
"permissionsValues": {
"role": "reader",
"type": "user",
"emailAddress": "user@example.com"
}
}
},
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 3
},
{
"id": "b632dc23-d82e-479d-a3bc-4f785d181194",
"name": "Delete html file",
"type": "n8n-nodes-base.googleDrive",
"position": [
1360,
288
],
"parameters": {
"fileId": {
"__rl": true,
"mode": "id",
"value": "={{ $('Upload html file').item.json.id }}"
},
"options": {},
"operation": "deleteFile"
},
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 3
},
{
"id": "66ed0d36-cab6-4c0d-a702-b1a4aa5ce40a",
"name": "Upload html file",
"type": "n8n-nodes-base.googleDrive",
"position": [
1552,
48
],
"parameters": {
"name": "working isa",
"driveId": {
"__rl": true,
"mode": "list",
"value": "My Drive"
},
"options": {},
"folderId": {
"__rl": true,
"mode": "list",
"value": "root",
"cachedResultUrl": "https://drive.google.com/drive",
"cachedResultName": "/ (Root folder)"
},
"inputDataFieldName": "htmlFile"
},
"credentials": {
"googleDriveOAuth2Api": {
"name": "<your credential>"
}
},
"typeVersion": 3
},
{
"id": "d273f134-e629-4f04-80da-25380a96c043",
"name": "Final Document",
"type": "n8n-nodes-base.set",
"position": [
1568,
-208
],
"parameters": {
"options": {},
"assignments": {
"assignments": [
{
"id": "360884f3-bf2b-49ba-9b32-6a555cc511d7",
"name": "content",
"type": "string",
"value": "=# Content Atomizer Report\nthis report is generated for the article: {{ $('On form submission').item.json['article url'] }}\n\n## LinkedIn\n\n{{ $json.text[0] }}\n\n## Twitter (X)\n\n{{ $json.text[1] }}\n\n## Reddit\n\n{{ $json.text[2] }}\n\n## FAQ\n\n{{ $json.text[3] }}"
}
]
}
},
"typeVersion": 3.4
},
{
"id": "156f2b61-63d1-4f93-87b2-4a961fa38f4a",
"name": "Merge",
"type": "n8n-nodes-base.merge",
"position": [
1184,
-240
],
"parameters": {
"numberInputs": 4
},
"typeVersion": 3.2
},
{
"id": "83b968bb-8b02-4c81-9076-7683c17d5e50",
"name": "Aggregate",
"type": "n8n-nodes-base.aggregate",
"position": [
1376,
-208
],
"parameters": {
"options": {},
"fieldsToAggregate": {
"fieldToAggregate": [
{
"fieldToAggregate": "content.parts[0].text"
}
]
}
},
"typeVersion": 1
},
{
"id": "2084a4ab-8aa2-46c7-8494-895541f99c49",
"name": "Sticky Note",
"type": "n8n-nodes-base.stickyNote",
"position": [
-816,
-384
],
"parameters": {
"width": 704,
"height": 960,
"content": "## Content Atomizer: Turn Any Article into a Multi-Channel Social Campaign\n\nStop spending hours manually repurposing long-form content. The **Content Atomizer.json** workflow takes a single article URL and automatically \"atomizes\" it into high-authority LinkedIn posts, Twitter (X) threads, Reddit-ready discussions, and user-friendly FAQs. Using **Gemini 2.5 Flash** and **Olostep**, it extracts the core value and formats it for maximum engagement across different platforms.\n\n---\n\n### Who\u2019s it for?\n* **Content Marketers:** Scale your distribution without increasing your headcount.\n* **SaaS Founders:** Turn technical documentation or blog posts into marketing collateral.\n* **Social Media Managers:** Quickly generate platform-specific drafts that follow proven engagement frameworks.\n* **Thought Leaders:** Maintain a consistent presence across multiple channels with minimal effort.\n\n### How it works / What it does\n1. **Trigger:** Submit an article URL via an n8n Form.\n2. **Scrape:** The **Olostep** node fetches the full markdown content of the article.\n3. **Core Extraction:** Gemini identifies the 5 most shareable insights and key statistics.\n4. **Multi-Channel Generation:** Four parallel Gemini nodes draft content tailored for:\n * **LinkedIn:** Uses a \"Problem-Agitation-Solution\" (PAS) structure with a pattern-interrupt hook.\n * **Twitter (X):** Creates a 6-tweet thread with a dedicated hook and TL;DR.\n * **Reddit:** Drafts a \"value-bait\" post formatted for community engagement (r/SaaS, r/Marketing).\n * **FAQ:** Generates a \"Quick Start\" guide and troubleshooting snippets based on the article content.\n5. **Delivery:** The workflow aggregates all drafts, converts them into a Google Doc, and emails the link directly to you.\n\n### How to set up\n1. **Credentials:** Connect your credentials for **Google Gemini (PaLM)**, **Olostep**, and **Google Drive**.\n2. **Form Trigger:** Activate the workflow to generate your unique n8n form URL.\n3. **Email Configuration:** Update the \"Share link & email\" node with your specific email address to receive the final report notifications.\n\n### Requirements\n* **n8n version:** 1.0+\n* **Google Gemini API Key:** For analysis and creative writing.\n* **Olostep API Key:** For high-quality web scraping and markdown conversion.\n* **Google Drive (OAuth2):** For document generation and sharing.\n\n### How to customize the workflow\n* **Tone of Voice:** Modify the \"System Message\" inside the LinkedIn, Twitter, or Reddit nodes to match your personal brand or company voice.\n* **Target Platforms:** You can easily add more branches (e.g., for Instagram Reels scripts or Newsletter summaries) by duplicating one of the Gemini nodes.\n* **Output Format:** Instead of Google Docs, you can swap the final nodes for Slack, Discord, or a Notion database to fit your existing workspace."
},
"typeVersion": 1
},
{
"id": "fd0ee2fb-8912-48f9-8040-676aa53a1938",
"name": "Sticky Note1",
"type": "n8n-nodes-base.stickyNote",
"position": [
-32,
-80
],
"parameters": {
"color": 7,
"width": 176,
"height": 224,
"content": "## Input form\nEnter the article URL"
},
"typeVersion": 1
},
{
"id": "f60eaf19-127a-4b05-b7ff-6adec0a5c308",
"name": "Sticky Note2",
"type": "n8n-nodes-base.stickyNote",
"position": [
144,
-80
],
"parameters": {
"color": 7,
"width": 192,
"height": 224,
"content": "## Olostep API \nScrapes the article"
},
"typeVersion": 1
},
{
"id": "1fee9f01-eb2c-4a69-8772-dca55dfe8999",
"name": "Sticky Note3",
"type": "n8n-nodes-base.stickyNote",
"position": [
336,
-128
],
"parameters": {
"color": 7,
"width": 304,
"height": 272,
"content": "## Core extractor\nExtracts the most 'shareable' insights, surprising statistics (if any), and the overall 'lesson' of the content"
},
"typeVersion": 1
},
{
"id": "e5c0a490-5357-4f26-8771-ce0d89db4291",
"name": "Sticky Note4",
"type": "n8n-nodes-base.stickyNote",
"position": [
640,
-432
],
"parameters": {
"color": 7,
"width": 432,
"height": 864,
"content": "## Content creation\nUses the core insights and turn it into high-authority LinkedIn posts, Twitter (X) threads, Reddit-ready discussions, and user-friendly FAQs"
},
"typeVersion": 1
},
{
"id": "8c923f28-6e75-4a30-8bbe-1dea12ace4ef",
"name": "Sticky Note5",
"type": "n8n-nodes-base.stickyNote",
"position": [
1072,
-320
],
"parameters": {
"color": 7,
"width": 656,
"height": 288,
"content": "## Data formating\nMerge all the content created from the last step and make it ready for the final report"
},
"typeVersion": 1
},
{
"id": "4e80c5dc-b0ae-4532-9584-0b19a621b554",
"name": "Sticky Note6",
"type": "n8n-nodes-base.stickyNote",
"position": [
1504,
192
],
"parameters": {
"color": 7,
"width": 256,
"height": 240,
"content": "## Share & Notify\nShares the doc and sends an email with the link."
},
"typeVersion": 1
},
{
"id": "8261602e-f5c1-460d-ba15-e12211fa328c",
"name": "Sticky Note7",
"type": "n8n-nodes-base.stickyNote",
"position": [
1072,
-32
],
"parameters": {
"color": 7,
"width": 432,
"height": 224,
"content": "## Markdown to HTML\nConverts Markdown content into HTML and creates an HTML binary file."
},
"typeVersion": 1
},
{
"id": "e3797446-bcc2-4cd0-bd27-d09ac0219974",
"name": "Sticky Note8",
"type": "n8n-nodes-base.stickyNote",
"position": [
1072,
192
],
"parameters": {
"color": 7,
"width": 432,
"height": 240,
"content": "## Upload The File\nConverts the HTML file to google doc format and re-upload the file. And then deletes the old HTML file."
},
"typeVersion": 1
},
{
"id": "97d99c56-1d51-4ddc-ae68-fd9deea6d6fe",
"name": "Sticky Note9",
"type": "n8n-nodes-base.stickyNote",
"position": [
1504,
-32
],
"parameters": {
"color": 7,
"width": 256,
"height": 224,
"content": "## Upload The File\nUploads the HTML file"
},
"typeVersion": 1
}
],
"active": false,
"settings": {
"binaryMode": "separate",
"executionOrder": "v1"
},
"versionId": "a6ff9509-d869-4e41-ba2b-31db8b6a3f83",
"connections": {
"FAQ": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 3
}
]
]
},
"Merge": {
"main": [
[
{
"node": "Aggregate",
"type": "main",
"index": 0
}
]
]
},
"Reddit": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 2
}
]
]
},
"LinkedIn": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 0
}
]
]
},
"Markdown": {
"main": [
[
{
"node": "Generate HTML Binary File",
"type": "main",
"index": 0
}
]
]
},
"Aggregate": {
"main": [
[
{
"node": "Final Document",
"type": "main",
"index": 0
}
]
]
},
"Twitter (X)": {
"main": [
[
{
"node": "Merge",
"type": "main",
"index": 1
}
]
]
},
"Core Extractor": {
"main": [
[
{
"node": "LinkedIn",
"type": "main",
"index": 0
},
{
"node": "Reddit",
"type": "main",
"index": 0
},
{
"node": "Twitter (X)",
"type": "main",
"index": 0
},
{
"node": "FAQ",
"type": "main",
"index": 0
}
]
]
},
"Final Document": {
"main": [
[
{
"node": "Markdown",
"type": "main",
"index": 0
}
]
]
},
"Scrape Article": {
"main": [
[
{
"node": "Core Extractor",
"type": "main",
"index": 0
}
]
]
},
"Delete html file": {
"main": [
[
{
"node": "Share link & email",
"type": "main",
"index": 0
}
]
]
},
"Upload html file": {
"main": [
[
{
"node": "Transfer HTML to Doc",
"type": "main",
"index": 0
}
]
]
},
"On form submission": {
"main": [
[
{
"node": "Scrape Article",
"type": "main",
"index": 0
}
]
]
},
"Transfer HTML to Doc": {
"main": [
[
{
"node": "Delete html file",
"type": "main",
"index": 0
}
]
]
},
"Generate HTML Binary File": {
"main": [
[
{
"node": "Upload html file",
"type": "main",
"index": 0
}
]
]
}
}
}
Credentials you'll need
Each integration node will prompt for credentials when you import. We strip credential IDs before publishing — you'll add your own.
googleDriveOAuth2ApigooglePalmApiolostepScrapeApi
For the full experience including quality scoring and batch install features for each workflow upgrade to Pro
About this workflow
Stop spending hours manually repurposing long-form content. The Content Atomizer.json workflow takes a single article URL and automatically "atomizes" it into high-authority LinkedIn posts, Twitter (X) threads, Reddit-ready discussions, and user-friendly FAQs. Using Gemini 2.5…
Source: https://n8n.io/workflows/15458/ — 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.
Understand your customers before you build for them. This workflow, Market Segmentation: Buyer Persona Pain Point Report, automates the grueling process of primary market research. By scraping real-wo
This n8n template automatically generates high-quality sales battle cards for any prospect company using real-time research and AI. It analyzes company news, website content, and your product’s value
Establish yourself as a thought leader by answering the questions that everyone else is ignoring. The Content Authority Roadmap workflow automates deep-dive research into Reddit, Quora, and niche foru
Stop guessing what to build next. The Competitive Roadmap & Trend Arbitrage workflow acts as your automated R&D department. It compares your current product capabilities against real-time market data,
This workflow automates the creation of AI-generated viral selfie images with celebrities using Nano Banana Pro Edit via RunPod, generates engaging social media captions, and publishes the content to