🔓 Unlock all 10,000+ workflows & prompts free Join Newsletter →
✅ Full access unlocked — explore all 10,000 AI workflow and prompt templates Browse Templates →
Home n8n Workflow
January 22, 2026

Airtable + Google Sheets: drafts ready to publish

Lisa Granqvist Partner Workflow Automation Expert

Your content pipeline probably isn’t “hard.” It’s just annoying. Ideas live in one place, research is scattered, drafts are half-finished, and the final version still needs someone to copy, paste, format, and file it somewhere sensible.

Content managers feel this when deadlines stack up. A marketing lead feels it when quality starts to dip. And a solo operator running their own newsletter? Same mess, fewer hands. This content drafts automation turns one request into a ready-to-review blog draft in Airtable or a queued newsletter draft in Google Sheets.

Below, you’ll see exactly what the workflow produces, where it saves drafts, and how you can shape it to match your voice without babysitting every paragraph.

How This Automation Works

See how this solves the problem:

n8n Workflow Template: Airtable + Google Sheets: drafts ready to publish

The Challenge: Drafts That Never Feel “Ready”

Publishing isn’t usually blocked by a lack of ideas. It’s blocked by the swamp between idea and “this is ready for review.” Someone has to gather sources, build an outline, write a first pass that doesn’t sound robotic, then edit for clarity and search intent. Then you still have the cleanup work: formatting for your CMS, creating a featured image, and making sure the draft ends up in the right place so the rest of the team can actually find it later. It’s easy to lose an afternoon to a single “simple” post.

And the friction compounds.

  • Research ends up inconsistent because everyone has a different process and different standards for sources.
  • Outlines get skipped when you’re rushing, which means edits take longer and the piece wanders.
  • Drafts live in docs, Slack, email threads, and random folders, so review becomes a scavenger hunt.
  • Formatting and “put it into Airtable/Sheets” is pure admin work, but it still steals focus from writing.

The Fix: Multi-Agent Draft Creation That Files Itself

This n8n workflow starts with a simple form submission (your topic, a few inputs, and the content type you want). From there, a chain of four specialized AI agents takes over: one gathers insights and sources, another turns those insights into a structure, a writer agent produces a full draft, and an editor agent tightens it up for readability and SEO. After the editorial pass, the workflow routes the content based on your selection. Blog drafts get formatted for publishing, a featured image is generated through OpenAI (DALL·E), and everything is stored in Airtable. Newsletter drafts take a separate formatting path and get appended to a Google Sheet, queued and ready for review or scheduling.

The workflow begins with your request and ends with a clean, review-ready draft in the tool you already use to manage work. Airtable becomes your blog draft database, and Google Sheets becomes your newsletter queue, so nothing disappears into someone’s browser tabs.

What Changes: Before vs. After

Real-World Impact

Say you publish 3 blog posts and 2 newsletters each week. Manually, even a “fast” process can look like 60 minutes to research and outline plus about 2 hours to write and edit, so you’re at roughly 15 hours weekly before you even count formatting and filing. With this workflow, your hands-on time is closer to 5 minutes per request to submit and skim the output, then the agents do the heavy lifting while you’re doing other work. You still review, of course, but you’re reviewing a draft that’s already in Airtable or queued in Sheets.

Requirements

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Airtable for storing blog drafts and metadata
  • Google Sheets to queue newsletter drafts for review
  • OpenRouter API key (get it from your OpenRouter dashboard)
  • Google Gemini API key (get it from Google AI Studio)
  • OpenAI API key (get it from the OpenAI API dashboard)

Skill level: Intermediate. You’ll be connecting accounts, adding API keys, and mapping a few fields into Airtable and Sheets.

Need help implementing this? Talk to an automation expert (free 15-minute consultation).

The Workflow Flow

A form submission kicks things off. You enter the topic and choose “blog” or “newsletter,” so the automation knows what kind of output you want and where it should be stored.

Research and structure get built first. The Insight Gathering Agent collects key points and sources, then the Structure Drafting Agent turns that into an outline that’s easier to write from (and easier to edit later).

Writing and editing happen as two distinct passes. The Content Writing Agent produces the draft, then the Editorial Optimization Agent refines it for clarity and search intent using the connected language models (OpenRouter and Gemini).

The workflow routes the output to the right destination. If it’s a blog post, the Blog Formatting Agent prepares the content, DALL·E generates a featured image via an HTTP request, and the final draft is stored in Airtable. If it’s a newsletter, the formatting agent adapts it for email-style reading and appends it to Google Sheets.

You can easily modify the writing style and the storage fields to match your review process. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Form Trigger

Set up the intake form that starts the AI publishing pipeline with a topic and content type.

  1. Add and open Form Intake Trigger.
  2. Set Form Title to SEO Blog & Newsletter Generator.
  3. Set Form Description to Generate high-quality, SEO-optimized blog posts and newsletters using AI.
  4. Under Form Fields, configure a dropdown labeled Content Type with options Blog and Newsletter, and add a required textarea labeled Topic.

If you change the form field labels, update all agent prompts that reference $json['Content Type'] and $json.Topic to match the new labels.

Step 2: Connect the AI Language Models

Attach the LLM providers used by the agents and ensure credentials are added to the model nodes (not the agent nodes).

  1. Open OpenRouter Chat Engine and set Model to agentica-org/deepcoder-14b-preview:free.
  2. Credential Required: Connect your openRouterApi credentials in OpenRouter Chat Engine.
  3. Open Gemini Chat Engine and leave default options unless you need a specific model override.
  4. Credential Required: Connect your googlePalmApi credentials in Gemini Chat Engine.

The agents use OpenRouter Chat Engine and Gemini Chat Engine as their language models. Do not add credentials directly to the agent nodes.

Step 3: Set Up the AI Content Generation Chain

Configure the multi-agent pipeline that researches, outlines, writes, and optimizes the content.

  1. In Insight Gathering Agent, keep the prompt as defined and ensure it references the form fields with {{$json['Content Type']}} and {{$json.Topic}}.
  2. In Structure Drafting Agent, ensure the prompt begins with {{$json.output}} to pass along the research output.
  3. In Content Writing Agent, confirm the prompt begins with {{$json.output}} to expand the outline into a full draft.
  4. In Editorial Optimization Agent, keep the prompt starting with {{$json.output}} to polish the draft and add metadata.
  5. Verify the execution flow runs in sequence: Form Intake TriggerInsight Gathering AgentStructure Drafting AgentContent Writing AgentEditorial Optimization Agent.

⚠️ Common Pitfall: If any agent stops outputting JSON as instructed, downstream prompts that rely on {{$json.output}} will fail. Keep prompt formats unchanged during testing.

Step 4: Configure the Content Type Router and Parallel Formatting

Route optimized content into blog or newsletter formatting and configure the output formatting agents.

  1. Open Content Type Router and define rules that compare the submitted content type (e.g., Blog vs Newsletter) to route appropriately.
  2. Confirm the parallel execution: Content Type Router outputs to both Blog Formatting Agent and Newsletter Formatting Agent in parallel.
  3. In Blog Formatting Agent, keep the prompt starting with {{$json.output}} and ensure it outputs title_column, blog_column, keywords, meta_description, and image_prompt.
  4. In Newsletter Formatting Agent, keep the prompt starting with {{$json.output}} and ensure it outputs title_column, content_html, content_plain, and preview_text.

Because the router is parallel, both formatting agents can run at the same time. Make sure your routing rules are mutually exclusive if you only want one path per submission.

Step 5: Configure Media Generation and Blog Storage

Generate a feature image for blog posts and store the blog content in Airtable.

  1. Open Create Feature Image and keep URL set to https://api.openai.com/v1/images/generations with Method POST.
  2. Set JSON Body to the provided payload and ensure the prompt uses {{$json.output.image_prompt}}.
  3. Credential Required: Connect your openAiApi credentials in Create Feature Image.
  4. In Image File Converter, set Operation to toBinary and Source Property to data[0].b64_json.
  5. Set the file name to =blog-featured-{{ $now.toFormat('yyyy-MM-dd-HHmmss') }}.png and MIME Type to image/png.
  6. Open Store Blog in Airtable and map fields: Title to {{$('Blog Formatting Agent').item.json.output.title_column}}, Status to Draft, Content to {{$('Blog Formatting Agent').item.json.output.blog_column}}, Keywords to {{$('Blog Formatting Agent').item.json.output.keywords}}, Created Date to {{$now.toISO()}}, and Meta Description to {{$('Blog Formatting Agent').item.json.output.meta_description}}.
  7. Credential Required: Connect your airtableTokenApi credentials in Store Blog in Airtable.

⚠️ Common Pitfall: If your Airtable base or table IDs remain as [YOUR_ID], the workflow will fail. Replace them with your actual Airtable Base and Table IDs.

Step 6: Configure Newsletter Storage in Google Sheets

Append the formatted newsletter output to your Google Sheets archive.

  1. Open Append Newsletter Sheet and select your target Document and Sheet (e.g., Newsletter ArchiveSheet1).
  2. Set columns: Title to {{$('Newsletter Formatting Agent').item.json.output.title_column}}, Status to Ready to Send, Content HTML to {{$('Newsletter Formatting Agent').item.json.output.content_html}}, Created Date to {{$now.toFormat('yyyy-MM-dd HH:mm:ss')}}, Preview Text to {{$('Newsletter Formatting Agent').item.json.output.preview_text}}, and Content Plain to {{$('Newsletter Formatting Agent').item.json.output.content_plain}}.
  3. Credential Required: Connect your googleSheetsOAuth2Api credentials in Append Newsletter Sheet.

Step 7: Test and Activate Your Workflow

Validate the full AI pipeline and then activate it for production use.

  1. Click Execute Workflow and submit the Form Intake Trigger with a sample Content Type and Topic.
  2. Confirm that Insight Gathering Agent through Editorial Optimization Agent generate outputs without errors.
  3. Verify that blog runs create an image via Create Feature Image and a record in Store Blog in Airtable, while newsletter runs append a row in Append Newsletter Sheet.
  4. Once successful, toggle the workflow to Active to enable production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Watch Out For

  • Airtable credentials can expire or need specific permissions. If things break, check the Airtable personal access token scopes and the base/table IDs in “Store Blog in Airtable” first.
  • If your featured image generation runs slow, processing times vary. Bump up the wait duration (or add one) if downstream nodes store an empty file or fail on missing binary data.
  • Default prompts in the agent nodes are generic. Add your brand voice rules early in the Research or Outline prompts, or you will be editing tone on every single draft.

Common Questions

How quickly can I implement this content drafts automation?

About an hour if your API keys and Airtable/Sheets are ready.

Can non-technical teams implement this draft publishing?

Yes, but you’ll want someone comfortable with connecting accounts and pasting API keys. No coding, just careful setup and testing.

Is n8n free to use for this content drafts automation workflow?

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 AI API costs (OpenRouter, Gemini, and OpenAI image generation), which vary based on how long your drafts are.

Where can I host n8n to run this automation?

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.

How do I adapt this content drafts automation solution to my specific challenges?

Start by editing the prompts inside the four agent nodes (Insight Gathering, Structure Drafting, Content Writing, and Editorial Optimization) so the workflow learns your tone and constraints. You can swap models by changing the OpenRouter Chat Engine or Gemini Chat Engine connections, and you can skip images by disabling the “Create Feature Image” HTTP request path. Common tweaks include adding a “brand voice” section, forcing a house style for headings, and saving extra fields (keywords, CTA, author) into Airtable.

Why is my Airtable connection failing in this workflow?

Most of the time it’s permissions: the token can’t write to the base, or the table ID is wrong. Re-check the base/table IDs in “Store Blog in Airtable,” then confirm your Airtable token scopes allow creating records. If it fails only on some runs, you may be sending a field value that doesn’t match the column type (like an array into a text field).

What’s the capacity of this content drafts automation solution?

On n8n Cloud Starter, you can usually run a few thousand executions per month, which is plenty for most small teams generating drafts daily. If you self-host, there’s no execution cap; your limit is your server and the AI providers’ rate limits. The heavier constraint is often image generation and long-form drafts, so if you plan to run batches, space requests out and monitor your OpenRouter/Gemini quotas.

Is this content drafts automation better than using Zapier or Make?

Often, yes, because multi-step agent chains, branching (blog vs newsletter), and file handling get awkward and expensive in simpler builders. n8n is also easier to customize when you want “real logic,” like routing, merging content, or swapping AI providers without rebuilding everything. Zapier or Make can still be fine for lightweight two-step workflows. If you’re unsure, Talk to an automation expert and get a quick recommendation based on volume and complexity.

This is what content ops should feel like: one clean request in, one clean draft out, stored where your team already works. Set it up once, then spend your energy on the parts humans are actually good at.

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.

Lisa Granqvist

Workflow Automation Expert

Expert in workflow automation and no-code tools.

×

Use template

Get instant access to this n8n workflow Json file

💬
Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Get a free quote today!
Get a free quote today!

Tell us what you need and we'll get back to you within one working day.

Launch login modal Launch register modal