🔓 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

Google Sheets to WordPress, drafts ready to edit

Lisa Granqvist Partner Workflow Automation Expert

Your content plan lives in a spreadsheet. Your blog lives in WordPress. And somehow, you’re still copying prompts, pasting drafts, uploading images, and updating statuses by hand. That gap is exactly where Sheets WordPress automation earns its keep.

Content managers feel this when the editorial calendar gets busy. A marketing lead chasing consistent publishing feels it too. Same for a small team owner doing everything themselves, honestly.

This workflow turns a single Google Sheets row into a WordPress draft with a featured image, then writes the post details back into your tracker. You’ll see what it automates, what results to expect, and what to watch out for before you switch it on.

How This Automation Works

The full n8n workflow, from trigger to final output:

n8n Workflow Template: Google Sheets to WordPress, drafts ready to edit

The Problem: Blog drafts get stuck between “planned” and “published”

Most teams don’t struggle to think of topics. They struggle to move an idea from the tracker into a clean, editable WordPress draft fast enough to keep momentum. You grab a prompt from Google Sheets, paste it into an AI tool, format the output, paste again into WordPress, then hunt for an image that doesn’t look like stock-photo sadness. After that, you still have to update the sheet so everyone knows what happened. Miss one tiny step and you get duplicated drafts, missing featured images, or a tracker nobody trusts.

The friction compounds. Here’s where it breaks down.

  • Copying and formatting AI-written content into WordPress eats about 20 minutes per post, and it’s never as “ready” as you want.
  • Featured images turn into a separate project, so drafts sit unfinished longer than they should.
  • Your Google Sheets tracker drifts out of date because updating post IDs, dates, and titles is the last thing anyone wants to do.
  • When the process is manual, quality control becomes inconsistent, which means more rework later.

The Solution: Google Sheets → AI draft → WordPress draft (with featured image)

This n8n workflow takes one row from your Google Sheets content tracker and turns it into a WordPress draft you can actually edit and publish. It starts by pulling the right idea from your sheet, then extracts the prompt text you already planned. From there, it uses DeepSeek (R1 or V3) to generate an SEO-friendly HTML article and a clean, concise title. Next, it creates a draft post in WordPress using that title and article body. Finally, it generates a photorealistic cover image, uploads it to your WordPress media library, assigns it as the featured image, and updates the original Google Sheets row with the new post details.

The flow begins when you run it in n8n (a manual “launch” trigger). Google Sheets provides the prompt, DeepSeek writes the draft and title, WordPress receives the content as a draft, and HTTP requests handle the media upload and featured image assignment. The sheet is then updated with the post ID, title, and creation date so your tracker stays true.

What You Get: Automation vs. Results

Example: What This Looks Like

Say you publish 4 posts a week. Manually, it’s usually about 10 minutes to move text into WordPress, another 10 minutes to find or create a usable image, plus 5 minutes to update Google Sheets, so you’re spending about 25 minutes per post (nearly 2 hours a week). With this workflow, you click once to run it, wait for generation and upload, then you’re editing a ready draft with a featured image. Realistically, you’re down to about 5 minutes of setup per post, and the rest is review.

What You’ll Need

  • n8n instance (try n8n Cloud free)
  • Self-hosting option if you prefer (Hostinger works well)
  • Google Sheets to store prompts and post tracking fields
  • WordPress to create drafts and upload media
  • OpenAI / DeepSeek API key (get it from your provider’s API dashboard)

Skill level: Intermediate. You’ll connect accounts, map a few fields, and test a draft end-to-end.

Don’t want to set this up yourself? Talk to an automation expert (free 15-minute consultation).

How It Works

Manual launch from n8n. You click “Test workflow” (or run it) when you’re ready to generate the next draft. It’s intentionally controlled so you can validate quality before scaling up.

Google Sheets selects the right row. The workflow reads your sheet and filters based on your identifier field (the “ID POST” logic), then pulls the PROMPT content you’ve prepared.

DeepSeek generates the draft and title. One AI step writes an SEO-friendly HTML article with an intro, a few sections, and a conclusion. Another step produces a concise title that fits WordPress nicely.

WordPress receives a draft plus featured image. n8n creates the post as a draft, generates a photorealistic image, uploads it via the WordPress REST API (HTTP Request nodes), then sets it as the featured image. After that, Google Sheets is updated with the post ID, title, and date so your tracker stays current.

You can easily modify the prompt format to match your brand voice based on your needs. See the full implementation guide below for customization options.

Step-by-Step Implementation Guide

Step 1: Configure the Manual Trigger

Start the workflow with a manual trigger so you can run the content generation process on demand during setup.

  1. Add the Manual Launch Trigger node as the workflow trigger.
  2. Leave default settings as-is (this node has no required fields).
  3. Optionally keep Flowpast Branding as a sticky note for documentation (no configuration needed).

Step 2: Connect Google Sheets

Pull the next topic prompt from Google Sheets and later update the row with the generated post details.

  1. Open Retrieve Topic Ideas and set Document ID to [YOUR_ID].
  2. Set Sheet Name to =Sheet1.
  3. Credential Required: Connect your googleSheetsOAuth2Api credentials in Retrieve Topic Ideas.
  4. Open Modify Sheet Row and confirm Operation is set to update.
  5. In Modify Sheet Row, verify the column mappings: DATA to {{ $now.format('dd/LL/yyyy') }}, TITOLO to {{ $('Craft SEO Title').item.json.message.content }}, ID POST to {{ $('Publish WP Draft').item.json.id }}, and row_number to {{ $('Retrieve Topic Ideas').item.json.row_number }}.
  6. Credential Required: Connect your googleSheetsOAuth2Api credentials in Modify Sheet Row.

Tip: Ensure your Google Sheet includes the columns PROMPT, TITOLO, ID POST, and row_number to prevent update errors.

Step 3: Set Up Processing and AI Nodes

Prepare the prompt, generate the article, craft an SEO title, and create a cover image using AI.

  1. In Compose Prompt Text, set the prompt field to {{ $json.PROMPT }}.
  2. In Draft Article via DeepSeek, set Model to deepseek-reasoner and ensure the message content references {{ $json.prompt }}.
  3. Credential Required: Connect your openAiApi credentials in Draft Article via DeepSeek.
  4. In Craft SEO Title, keep the message template that references {{ $json.message.content }}.
  5. Credential Required: Connect your openAiApi credentials in Craft SEO Title.
  6. In Create Cover Image, set Resource to image and keep the Prompt as Generate a real photographic image used as a cover for a blog post: ... {{ $('Craft SEO Title').item.json.message.content }}.
  7. Credential Required: Connect your openAiApi credentials in Create Cover Image.

⚠️ Common Pitfall: If the prompt field in Compose Prompt Text does not match your sheet column name exactly (PROMPT), the AI nodes will receive empty input.

Step 4: Configure WordPress Publishing and Media Actions

Create the WordPress draft, upload the generated image, and assign it as the featured image.

  1. In Publish WP Draft, set Title to {{ $json.message.content }} and Content to {{ $('Draft Article via DeepSeek').item.json.message.content }}.
  2. Set Status to draft in Publish WP Draft.
  3. Credential Required: Connect your wordpressApi credentials in Publish WP Draft.
  4. In Send Media to WP, set URL to https://YOURSITE.com/wp-json/wp/v2/media, Method to POST, and Content Type to binaryData.
  5. In Send Media to WP, set the Content-Disposition header to attachment; filename="copertina-{{ $('Publish WP Draft').item.json.id }}.jpg".
  6. Credential Required: Connect your wordpressApi credentials in Send Media to WP (the node also lists wooCommerceApi, but wordpressApi is used).
  7. In Assign Featured Image, set URL to https://YOUR_SITE.com/wp-json/wp/v2/posts/{{ $('Publish WP Draft').item.json.id }} and add Query Parameter featured_media with value {{ $json.id }}.
  8. Credential Required: Connect your wordpressApi credentials in Assign Featured Image.

Tip: Ensure your WordPress API user has permissions to upload media and edit posts, otherwise Send Media to WP and Assign Featured Image will fail.

Step 5: Test and Activate Your Workflow

Run a manual test to confirm the end-to-end flow from Google Sheets to WordPress.

  1. Click Execute Workflow on Manual Launch Trigger to start the run.
  2. Verify Retrieve Topic Ideas outputs a row with a PROMPT value.
  3. Confirm Publish WP Draft creates a draft post and outputs an id.
  4. Check WordPress Media to ensure Send Media to WP uploaded the generated image, and that Assign Featured Image updated the draft.
  5. Ensure Modify Sheet Row updates the sheet with the date, title, and post ID.
  6. Toggle the workflow to Active when you are ready for production use.
🔒

Unlock Full Step-by-Step Guide

Get the complete implementation guide + downloadable template

Common Gotchas

  • Google Sheets credentials can expire or need specific permissions. If things break, check the Google connection inside n8n’s Credentials page 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.

Frequently Asked Questions

How long does it take to set up this Sheets WordPress automation?

About 45 minutes if your accounts and API keys are ready.

Do I need coding skills to automate Sheets to WordPress drafts?

No. You’ll mostly connect accounts and map fields between Google Sheets and WordPress.

Is n8n free to use for this Sheets WordPress 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 usage costs (often a few cents per article plus image generation).

Where can I host n8n to run this Sheets WordPress 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.

Can I customize this Sheets WordPress automation workflow for my editorial review process?

Yes, but keep the structure. Most teams tweak the Google Sheets “Retrieve Topic Ideas” filtering, adjust “Compose Prompt Text” to include tone and internal links, and update the “Publish WP Draft” step to set categories, tags, or an author. You can also swap the image style by changing the “Create Cover Image” prompt, then leave the HTTP upload and “Assign Featured Image” steps as-is.

Why is my WordPress connection failing in this workflow?

Usually it’s incorrect WordPress REST API credentials or a user role that can’t create posts or upload media. If the draft gets created but the image fails, it’s often the HTTP Request upload step hitting permission rules, blocked file types, or a security plugin. Also check that your WordPress URL is correct (including https) and that application passwords are enabled if you’re using them.

How many posts can this Sheets WordPress automation handle?

Plenty for a normal publishing schedule. On n8n Cloud Starter, you can run a healthy number of executions each month, and higher plans handle more. If you self-host, there’s no execution cap, but your server and the AI provider’s rate limits become the practical ceiling.

Is this Sheets WordPress automation better than using Zapier or Make?

Often, yes. This workflow mixes multi-step AI generation, WordPress drafting, and a media upload that’s handled cleanly with HTTP requests, which is exactly where simpler tools can get awkward or pricey. n8n also gives you branching, merges, and data shaping without paying extra per “path.” That said, if you only need “new row → create draft title,” Zapier or Make might feel quicker. Talk to an automation expert if you want help choosing.

Once this is running, your spreadsheet becomes a real publishing pipeline instead of a wish list. You’ll spend your time reviewing and improving drafts, not shuffling text and chasing missing images.

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

💬
Launch login modal Launch register modal