Automate LinkedIn content creation with OpenAI, Google Sheets & LinkedIn API
$20/month : Unlimited workflows
2500 executions/month
THE #1 IN WEB SCRAPING
Scrape any website without limits
HOSTINGER 🎉 Early Black Friday Deal
DISCOUNT 20% Try free
DISCOUNT 20%
Self-hosted n8n
Unlimited workflows - from $4.99/mo
#1 hub for scraping, AI & automation
6000+ actors - $5 credits/mo
Build a completely automated LinkedIn content engine using n8n, OpenAI, Google Sheets, and the LinkedIn API. This workflow reads unpublished topics from a Google Sheet, generates engaging AI-powered post content and a relevant image, and publishes directly to LinkedIn — no manual effort required.
How It Works
- This system uses a scheduled trigger (e.g., daily at 9 AM) to:
- Fetch the first Unpublished topic from your Google Sheet.
- Generate a compelling, SEO-optimized post description using OpenAI.
- Create a marketing image that includes the topic title visually.
- Merge the content and image.
- Publish the post to your LinkedIn profile.
- Update the sheet to mark the topic as Published.
Prerequisites
1.A Google Sheet with two columns: Topics and Status 2.A verified LinkedIn developer account and app 3.OpenAI API key 4.n8n cloud or self-hosted instance 5.LinkedIn OAuth2 credentials in n8n 6.Google Sheets OAuth2 credentials in n8n
Google Sheet Example
| Topics | Status |
|---|---|
| How to Automate LinkedIn | Unpublished |
| Top AI Tools for Marketers | Unpublished |
Step-by-Step Setup
- Clone or import the provided n8n workflow.
- Create a Google Sheet with your post topics and mark them as Unpublished
- Set up OAuth2 credentials in n8n for Google Sheets and LinkedIn.
- Use the Schedule Trigger node to control posting frequency.
- Adjust the OpenAI prompt to better match your tone.
- Add a test topic and verify it generates, posts, and updates correctly.
Customization Tips
- Change posting frequency (daily/hourly) in the Schedule Trigger.
- Modify the OpenAI prompt for different tones (professional, fun, educational).
- Use a different image generation model or remove image generation if not needed.
- Add approval steps before publishing, using Telegram/Slack/email nodes.