Generate SEO/AEO-optimized Shopify Blog Articles with GPT-4 and Google Sheets
This n8n template demonstrates how to automatically generate and publish SEO/AEO-optimized Shopify blog articles from a list of keywords using AI for content creation, image generation, and metadata optimization.
Who’s it for Shopify marketers, content teams, and solo founders who want consistent, hands-off blog production with built-in SEO/AEO hygiene and internal linking.
What it does The workflow picks a keyword from your Google Sheet based on priority, search volume, and difficulty. It then checks your Shopify blog for existing slugs to avoid duplicate, drafts a 900+ word article optimized for SEO/AEO, generates a hero image, creates the article in Shopify, sets SEO metafields (title/description), and logs the result to your Sheets for tracking and future internal links.
How it works
Google Sheets → Candidate selection:* Reads Keywords, Links, and Published tabs: ranks by priority → volume → difficulty. (In the workflow it is explained how to exactly set up the Google Sheets)
De-dupe slugs: Paginates your blog via Shopify GraphQL to collect existing handles and make sure to use a different one.
OpenAI content + image:* Builds a structured prompt (SEO/AEO and internal linking), calls Chat Completions and Image Generation for a hero image.
Shopify publish:** Creates the article via REST and updates title_tag / description_tag metafields via GraphQL.
Log + link graph:* Appends to Published tab to keep track of articles posted and Links* tab for ongoing internal-link suggestions.
How to set up
Open Set – Config and fill: shopDomain, siteBaseUrl, blogId, blogHandle, sheetId, author. Optional: autoPublish, maxPerRun, tz.
Create the Google Sheet with Keywords, Links, Published tabs using the provided column structure. I have personally used Semrush to generate that list of keywords.
Add credentials: Shopify Admin token (Header/Bearer), OpenAI API key, and Google Service Account.
Requirements
Shopify store with Blog API access
OpenAI API key
Google Service Account with access to Google Sheets API (can be activated here here)
How to customize
Change the cron in Schedule Trigger for different days/times.
Adjust maxPerRun, autoPublish, language or any other variables in the "Set - Config" node.
Adjust the prompt from the "Code - Build Prompt" node.
Extend the Sheets schema with extra scoring signals if needed.
Related Templates
Use OpenRouter in n8n versions <1.78
What it is: In version 1.78, n8n introduced a dedicated node to use the OpenRouter service, which lets you to use a lot...
Task Deadline Reminders with Google Sheets, ChatGPT, and Gmail
Intro This template is for project managers, team leads, or anyone who wants to automatically remind teammates of tasks ...
🤖 Build Resilient AI Workflows with Automatic GPT and Gemini Failover Chain
This workflow contains community nodes that are only compatible with the self-hosted version of n8n. How it works This...
🔒 Please log in to import templates to n8n and favorite templates
Workflow Visualization
Loading...
Preparing workflow renderer
Comments (0)
Login to post comments