n8n

How to Automate Google Sheets WordPress SEO Publishing?

Turn a short prompt in Google Sheets into an SEO ready WordPress draft in one click. Ideal for marketing teams and agencies that need steady blog output without extra manual work.

The run starts on demand. A row is read from Google Sheets to grab the topic. DeepSeek writes a clear title and a full article. A WordPress draft is created with that content. An image is generated with OpenAI Images from the title, uploaded to WordPress, and set as the featured image. An SEO step uses an OpenRouter model to produce a meta title and meta description, which are saved through the WordPress REST API. The post ID, image status, and progress are then written back to the sheet.

You will need a WordPress site with REST access, a Google Sheet, and API keys for OpenAI, OpenRouter, and DeepSeek. Expect to cut drafting and publishing time from hours to minutes and ship more posts with the same team. Useful for product updates, niche blogs, and agency content packages that must include image and meta data on every post.

What are the key features?

  • On demand run with a manual trigger for full control
  • Reads a specific row in Google Sheets using an ID POST filter and returns the first match
  • Maps the PROMPT field from the sheet into the AI prompt for writing
  • Generates a concise SEO friendly title and a full article using the DeepSeek chat model
  • Creates a WordPress draft with the generated title and content
  • Builds a 1024 by 1024 cover image with OpenAI Images and uploads it to the WordPress media library
  • Sets the uploaded image as the featured image on the new draft via the WordPress REST API
  • Runs an SEO expert step with OpenRouter and a structured parser to return meta title and description
  • Writes meta fields back to WordPress and updates Google Sheets with IDs and status

What are the benefits?

  • Reduce manual work from 3 hours to 10 minutes per post
  • Automate about 80 percent of the writing and publishing steps
  • Eliminate up to 90 percent of copy paste errors across title image and meta data
  • Connect Google Sheets WordPress OpenAI and OpenRouter in one flow
  • Handle 5 to 10 times more posts per week with the same team
  • Keep SEO metadata consistent on every draft

How do you set it up?

  1. Import the template into n8n: Create a new workflow in n8n > Click the three dots menu > Select 'Import from File' > Choose the downloaded JSON file.
  2. You'll need accounts with Google Sheets, WordPress, OpenAI, OpenRouter and DeepSeek. See the Tools Required section above for links to create accounts with these services.
  3. In the n8n credentials manager, create a Google Sheets OAuth2 credential by connecting your Google account. Double click the Google Sheets nodes and select this credential.
  4. In your WordPress site, create an Application Password for a user with permission to create posts and upload media. In n8n, create a WordPress credential using your site URL, username, and the Application Password, then assign it to the WordPress nodes.
  5. Create a Basic Auth credential in n8n for WordPress meta updates using the same username and Application Password. Assign it to the HTTP Request node that sets metadata.
  6. In your OpenAI account, create an API key. In n8n, create an OpenAI credential and select it in the image generation node.
  7. For DeepSeek, create an API key. In n8n, create an OpenAI compatible credential using your DeepSeek API key and select model deepseek chat in the title and article nodes. If unsure, open the nodes, choose Create new credential, and follow the on screen steps.
  8. In your OpenRouter account, generate an API key. In n8n, create an OpenRouter credential and select it in the OpenRouter Chat Model node used by the SEO step.
  9. Open the HTTP Request nodes with URLs like https://URL and replace with your real WordPress site URL. Save the nodes after updating.
  10. Copy the Google Sheet template and ensure columns include ID POST and PROMPT. Put your topic in PROMPT and a unique value in ID POST. In the Get context node, set the sheet ID and gid to match your sheet.
  11. Click Execute Workflow to run a test. Confirm a new draft appears in WordPress with a title, body, featured image, and meta title and description. Check the sheet row updates with the post ID or status.
  12. If you see 401 or 403 errors, confirm the WordPress user and Application Password are correct and the site URL matches. If image upload fails, lower the image size in the image node to 512 and check server upload limits. If the sheet is not found, verify the document ID and tab gid values.

Tools Required

$24 / mo or $20 / mo billed annually to use n8n in the cloud. However, the local or self-hosted n8n Community Edition is free.

DeepSeek

Sign up

$0.035/1M input tokens (cache hit), $0.135/1M input tokens (cache miss), $0.550/1M output tokens

Google Sheets

Sign up

Free: $0 (Google Sheets API usage has no additional cost; quota limits apply)

OpenAI

Sign up

Pay-as-you-go: GPT-5 at $1.25 per 1M input tokens and $10 per 1M output tokens

OpenRouter

Sign up

Free models: $0 via API, 20 requests/min; 50/day or 1000/day with ≥10 credits

WordPress

Sign up

Free plan: $0 / mo (WordPress.com REST API supports creating posts)

Similar Templates

Join Futurise to access 1,200+ automation templates

Get instant access to ready-made automation workflows for n8n, Make.com, AI agents, and more. Download, customise, and deploy in minutes.