An intelligent n8n workflow that automates your entire blog content pipeline—from keyword research to WordPress publishing. Using Google Gemini, DeepSeek, and Perplexity, this workflow generates SEO-optimized blog posts and publishes them automatically while tracking everything in Google Sheets.
What this workflow does
This automation handles your complete blog creation process:
- Scheduled content research: Fetches approved topics from Google Sheets and conducts deep SEO research using Perplexity
- AI-powered writing: Uses DeepSeek for competitor analysis and Google Gemini to write 800-1000 word SEO-optimized articles with FAQs
- Automated publishing: Publishes directly to WordPress via REST API and updates tracking in Google Sheets
- Smart scheduling: Runs daily at 7 AM, respects weekly frequency settings, and processes multiple clients in batches
Setup requirements
Tools you'll need:
- Active n8n instance (self-hosted or n8n Cloud)
- Google Sheets with OAuth access
- WordPress site with REST API enabled
- API keys: Google Gemini, DeepSeek, Perplexity (optional)
Estimated setup time: 20-25 minutes
Step-by-step setup
1. Prepare your Google Sheets
Create two sheets:
Client projects sheet:
Columns: Client ID | Website URL | Blog API | GMB Name | Weekly Frequency | On Page Sheet
Example: CLIENT001 | https://example.com | xxxx xxxx xxxx | Example Co | Mon,Wed,Fri | Sheet URL
Content topics sheet (one per client, named "Content Requirement & Posting"):
Columns: S.No. | Focus Keyword | Content Topic | Internal Linking URLs | Words | Topic Approval | Content Approval | Publish URLs | Weekly Frequency
Example: 1 | best investment tips | Top 10 Investment Tips | https://example.com/page | 1000 | Approved | Approved | (empty) | Mon,Wed
2. Connect Google Sheets
- In n8n: Credentials → Add credential → Google Sheets OAuth2 API
- Complete OAuth authentication
- Open "Load Active Client Projects" node → Select your client sheet URL and credential
- Open "Get Approved Blog Topics from Sheet" node → Select credential (document URL is dynamic)
3. Add AI API credentials
Google Gemini:
DeepSeek:
Perplexity (optional):
4. Set up WordPress
- WordPress admin → Users → Profile → Application Passwords
- Create new application password (format:
xxxx xxxx xxxx xxxx xxxx xxxx)
- Add to your Google Sheet:
- Blog API column: Paste application password
- Website URL column: Enter full URL (e.g.,
https://example.com)
5. Configure schedule
- Open "Daily Blog Publishing Schedule" node
- Set time (recommended: 7:00 AM)
- Choose timezone
- Save settings
6. Test and activate
- Add one test row in your sheets with today's day in Weekly Frequency
- Click "Daily Blog Publishing Schedule" → Execute node
- Verify: Blog published in WordPress, URL updated in Google Sheet
- Toggle workflow Active at the top
How it works
1. Schedule & filtering (7 AM daily)
- Loads client projects from Google Sheets
- Filters clients by Weekly Frequency (e.g., only those publishing today)
2. Content fetching
- Loops through each client
- Fetches approved topics (Topic Approval = "Approved", Publish URLs = empty)
- Selects first pending topic
3. AI content creation
- Research phase: DeepSeek + Perplexity analyze competitors, search intent, content gaps, LSI keywords
- Writing phase: Google Gemini writes 800-1000 word article with FAQs in conversational English
4. Publishing
- Extracts title and body content
- Publishes to WordPress via REST API
- Updates Google Sheet with publish URL
- Continues to next topic/client
Key features
✅ Automated research: Deep competitor analysis and SEO insights with Perplexity
✅ Dual AI models: DeepSeek for research, Gemini for writing
✅ SEO optimized: Natural keyword integration, LSI keywords, FAQs
✅ Batch processing: Handles multiple clients and topics in one run
✅ Smart scheduling: Publishes only on specified weekdays
✅ Complete tracking: End-to-end visibility in Google Sheets
✅ WordPress ready: Direct publishing with proper HTML formatting
Troubleshooting
Google Sheets not connecting:
- Re-authenticate OAuth credentials
- Verify sheet URLs and column names match exactly (case-sensitive)
- Check sharing permissions on sheets
AI API errors:
- Verify API keys are active and have credits
- Check rate limits on API dashboards
- Reduce token usage if hitting limits
WordPress publishing fails:
- Test REST API: Visit
https://yoursite.com/wp-json/wp/v2/posts
- Verify application password is correct (with spaces)
- Ensure user has Author/Editor role
- Check Website URL includes
https://
No topics being processed:
- Verify Topic Approval = "Approved" and Content Approval = "Approved"
- Ensure Publish URLs column is empty
- Check today's day matches Weekly Frequency setting
- Confirm sheet name is exactly "Content Requirement & Posting"
Use cases
Marketing agencies: Manage 10+ client blogs, scale without hiring writers
SEO teams: Execute keyword strategies at scale with consistent quality
Solo bloggers: Save 5-10 hours/week, maintain regular publishing schedule
Content teams: Run company blog on autopilot with oversight and tracking
Publishers: Operate multiple niche blogs, reduce costs by 70-80%
Expected results
- Time savings: 5-10 hours per week per client
- Output: 10-20 SEO-optimized posts per week
- SEO impact: Improved rankings within 2-3 months
- Cost efficiency: 70-80% reduction vs. hiring writers
- Reliability: Never miss a publishing deadline
Workflow Customization & Next Steps
This workflow (Part 1) focuses on content research and writing. To complete the full automation, you will need Part 2, which you will get in the next post. Please ensure you set it up as well, as it manages WordPress publishing along with featured images.
Resources
Support
Need help or custom development?
📧 Email: [email protected]
🌐 Website: https://isawow.com/