If you're managing LinkedIn content for your brand or clients, posting manually can quickly become a bottleneck. And while social media automation tools exist, many come with limitations, high costs, or lack flexibility. Enter n8n — a powerful, open-source workflow automation tool that can help you automate your LinkedIn posting schedule exactly how you want. In this post, you’ll learn how to set up seamless n8n LinkedIn automation to schedule and publish content to LinkedIn without lifting a finger.
Why Use n8n for LinkedIn Automation?
n8n gives you full control over your automation flows. Unlike other tools that lock you into predefined actions, n8n allows you to create custom workflows using LinkedIn’s API and a variety of time-triggered or content-based events.
Benefits of using n8n for automating LinkedIn:
- No recurring subscription fees (self-host for free)
- Customizable logic for posting content
- Schedule posts using Cron or timezone-specific triggers
- Pull content dynamically from Google Sheets, Notion, or any CMS
- Connect AI tools like ChatGPT to auto-generate captions
Whether you're a solopreneur building thought leadership or a digital marketer managing multiple pages, n8n makes your LinkedIn automation smarter and scalable.
To get started, you can install and run n8n without paying a cent by checking out this free n8n setup guide.
What You Need to Get Started
To build a functional LinkedIn posting workflow with n8n, you’ll need:
- A self-hosted or cloud instance of n8n
- A LinkedIn Developer App for authentication
- An access token with the right LinkedIn API permissions
- Content source: Google Sheets, Notion, Airtable, or plain text
- Time trigger or event trigger in your workflow
- The HTTP Request node (for sending posts to LinkedIn)
Let’s break it down step by step.
Step-by-Step: Automating LinkedIn Posts with n8n
Step 1: Create a LinkedIn App
To post to LinkedIn using n8n, you must authenticate via LinkedIn's API:
- Go to LinkedIn Developers
- Click Create App and fill in your details
- Under Auth, note your Client ID and Client Secret
- Set a redirect URL (e.g.,
https://n8n.io
if testing locally) - Request w_member_social and r_liteprofile permissions
Once approved, you’ll use these credentials in n8n’s OAuth2 setup.
Step 2: Set Up OAuth2 Credentials in n8n
In n8n:
- Go to Credentials > OAuth2 API
- Select:
- Auth URL:
https://www.linkedin.com/oauth/v2/authorization
- Token URL:
https://www.linkedin.com/oauth/v2/accessToken
- Scope:
w_member_social r_liteprofile
- Auth URL:
- Use your LinkedIn Client ID and Secret
- Set your redirect URL to match the app
After saving, n8n will guide you through authorizing the app, which will store your access token securely.
Step 3: Build Your LinkedIn Workflow
You can now build a workflow to automate posting:
Example Workflow Structure:
Trigger (e.g. Cron or Google Sheet Row Read)
↓
Text Generator (Optional, e.g., OpenAI for caption writing)
↓
Format Node (compile text + image URL)
↓
HTTP Request Node (send to LinkedIn API)
Let’s dive into each.
Step 4: Add a Trigger Node
Use a Cron node to schedule posts:
- Set it to run at desired times and days
- Example: Every weekday at 9 AM
Alternatively, use Google Sheets integration to detect new rows of content to post.
Step 5: Extract and Format Your Post
Use a Set node to prepare the post text:
{
"text": "Excited to share our latest blog post! 🎉 Visit: https://example.com"
}
Or add personalization by using OpenAI with n8n to auto-write your captions with a prompt like:
"Write a professional LinkedIn post announcing this article: {{url}}"
Step 6: Use HTTP Node to Post to LinkedIn
Use an HTTP Request node to interact with LinkedIn API:
- Method: POST
- URL:
https://api.linkedin.com/v2/ugcPosts
- Authentication: Use your LinkedIn OAuth2 credentials
In the body parameters (JSON), use the following structure:
{
"author": "urn:li:person:YOUR_PROFILE_ID",
"lifecycleState": "PUBLISHED",
"specificContent": {
"com.linkedin.ugc.ShareContent": {
"shareCommentary": {
"text": "Excited to launch our new feature today!"
},
"shareMediaCategory": "NONE"
}
},
"visibility": {
"com.linkedin.ugc.MemberNetworkVisibility": "PUBLIC"
}
}
⚠️ Tip: You can retrieve your profile ID by sending a GET request to https://api.linkedin.com/v2/me
.
Bonus: Add Media (Images or URLs)
To include rich links or images:
- Use
"shareMediaCategory": "ARTICLE"
for links - Add a
"media"
array underShareContent
Example for a post with a blog article:
"media": [
{
"status": "READY",
"originalUrl": "https://example.com/blog-post",
"title": {
"text": "Learn how we automated scheduling with n8n"
}
}
]
Step 7: Test and Activate Your Workflow
Before going live:
- Run the workflow manually to verify it posts correctly
- Check LinkedIn to confirm visibility
- Then, activate the scheduled workflow
You now have a fully automated LinkedIn scheduling system powered by n8n!
Pro Tips for Better n8n LinkedIn Automation
- Stagger your posts: Use multiple Cron triggers with delays
- Use Google Sheets as a content calendar: Let clients or teammates add drafts, and schedule them dynamically
- Add error checking: Use error handling in n8n workflows to retry failed posts or send alerts
- Backup workflows regularly: Don’t forget to automate your backup
Sample Use Case Table
Here’s a quick look at real-world LinkedIn use cases automated with n8n:
Use Case | Trigger | Content Source | Frequency |
---|---|---|---|
Thought leadership posts | Cron at 9AM daily | Static JSON / AI-generated | Daily |
Company news updates | Google Sheet row added | Google Sheets | Ad hoc |
Blog promotion | New RSS feed item detected | RSS Feed | 2x per week |
Hiring announcements | Airtable status change | Airtable | Weekly |
Bonus: Expand Social Automation Across Platforms
Want to cross-post your content?
n8n supports automating Instagram, YouTube, and other platforms too. Customize once, distribute across channels — all from a single n8n workflow!
FAQ
Can I automate posting to a LinkedIn Company Page?
Yes. Your LinkedIn developer app must request permissions for organizations, and you’ll need the company's URN (urn:li:organization:+ID
). Update the author
field in the API payload accordingly.
Is it free to automate LinkedIn posts with n8n?
Yes! If you self-host n8n, you'll pay nothing beyond server costs. Cloud-hosted versions offer added simplicity for a fee.
Can I schedule posts with different content every day?
Absolutely. Use a dynamic trigger like pulling new rows from a Google Sheet, and combine it with the Cron node for precise timing.
What happens when a LinkedIn post fails?
You can enable a fallback alert via email or Telegram, or automatically retry the HTTP Request using n8n’s built-in retry-on-failure functionality.
How do I know if my LinkedIn post was published successfully?
LinkedIn’s API will return a 201 status with a post ID. Log it or send yourself a summary message to confirm.
—
With n8n powering your LinkedIn automation, you’re not just saving time — you’re building smarter, more personalized workflows. Start automating today and never miss a prime engagement window again. Ready to scale? Launch your n8n instance here.