n8n + LinkedIn Integration: Automate Posts, Leads & Outreach
LinkedIn automation with n8n lets you eliminate the repetitive parts of your LinkedIn strategy — scheduling content, pulling lead data, syncing contacts — while keeping full control over what gets posted and when. Unlike closed platforms that charge per action, n8n gives you unlimited workflow executions on your own instance, making it ideal for teams that run heavy LinkedIn operations.
How n8n Connects to LinkedIn
n8n includes a built-in LinkedIn node that authenticates via OAuth2 through LinkedIn's API. You can create text posts, share articles with commentary, and post to company pages — all directly from your workflow canvas.
For operations the native node doesn't cover (like reading lead gen form responses or pulling analytics), you can use the HTTP Request node with LinkedIn's REST API endpoints. The combination of both gives you full coverage of LinkedIn's API surface.
To set up the LinkedIn credential in n8n:
- Create a LinkedIn app in the LinkedIn Developer Portal
- Request the
w_member_socialandr_liteprofilescopes (plusr_organization_socialfor company pages) - In n8n, go to Credentials → New → LinkedIn OAuth2 and paste your Client ID and Client Secret
- Complete the OAuth flow — n8n stores and refreshes the token automatically
Tip: If you're running n8n on n8nautomation.cloud, your instance already has a stable public URL — which LinkedIn requires as the OAuth redirect URI. No tunneling or reverse proxy setup needed.
Schedule LinkedIn Posts Automatically
Consistent posting drives LinkedIn reach, but manually publishing every day gets old fast. Here's a workflow that pulls from a content queue and posts on schedule:
Workflow: Google Sheets → LinkedIn Auto-Post
- Schedule Trigger node — fires at your chosen times (e.g., Tuesday and Thursday at 9:00 AM)
- Google Sheets node — reads the next unpublished row from your content spreadsheet (columns: post text, status, published date)
- IF node — checks that the status column is "ready" and the post text isn't empty
- LinkedIn node — set to Create a Post, with the post text mapped from the sheet column. Set
visibilitytoPUBLIC - Google Sheets node — updates the same row, setting status to "published" and writing the current timestamp
This gives you a simple editorial calendar. Draft your posts in batches on Monday, mark them as "ready," and n8n handles the rest. You can extend this by adding an image upload step using the HTTP Request node to LinkedIn's image API before creating the post.
Capture Leads from LinkedIn to Your CRM
If you run LinkedIn Lead Gen Forms on sponsored content, getting those leads into your CRM quickly matters. LinkedIn doesn't push form submissions in real time, but you can poll for them.
Workflow: LinkedIn Lead Gen → HubSpot/Salesforce
- Schedule Trigger node — runs every 15 minutes
- HTTP Request node — calls LinkedIn's
GET /leadFormResponsesendpoint with your sponsored account ID. Use the LinkedIn OAuth2 credential you already configured - Function node — filters out responses you've already processed by comparing submission timestamps against the last run time (store this in a static data variable with
$getWorkflowStaticData('global')) - HubSpot node (or Salesforce node) — creates a new contact with the lead's name, email, job title, and company mapped from the form response fields
- Slack node — sends a notification to your sales channel: "New LinkedIn lead: {{name}} from {{company}}"
The key here is the deduplication step. LinkedIn's API returns all responses within a date range, so without filtering, you'll create duplicate contacts. The static data approach keeps track between executions without needing an external database.
LinkedIn Profile Enrichment Workflow
When a new contact enters your CRM, enriching their record with LinkedIn data gives your sales team context before outreach. This workflow listens for new CRM contacts and pulls in their LinkedIn profile information.
Workflow: New CRM Contact → LinkedIn Enrichment
- Webhook node — receives a webhook from your CRM when a new contact is created (most CRMs support outgoing webhooks)
- HTTP Request node — searches LinkedIn's People Search API using the contact's name and company as query parameters
- Function node — parses the response, extracts the best-match profile, and pulls headline, current position, location, and profile URL
- HubSpot node (Update Contact) — writes the enriched fields back to the CRM record
AI-Powered LinkedIn Content Pipeline
This is where n8n's AI capabilities make LinkedIn automation genuinely powerful. Instead of just scheduling pre-written posts, you can build a pipeline that generates drafts, lets you review them, and publishes approved content.
Workflow: RSS → AI Draft → Approval → LinkedIn Post
- RSS Feed Read node — monitors industry blogs or news sources for new articles relevant to your niche
- AI Agent node (or OpenAI/Anthropic node) — takes the article title and summary, then generates a LinkedIn post draft with your voice and angle. Use a system prompt like: "Write a LinkedIn post commenting on this article. Keep it under 200 words. Include a personal take, not just a summary."
- Send and Wait node — sends the draft to you via Slack or email and pauses the workflow until you approve, edit, or reject it
- IF node — routes approved posts to the LinkedIn node and discards rejected ones
- LinkedIn node — publishes the approved (and possibly edited) post to your profile
The human-in-the-loop step is critical here. Fully automated AI posting on LinkedIn tends to produce generic content that hurts your credibility. The approval step keeps you in control while eliminating the blank-page problem.
Running this on a managed instance at n8nautomation.cloud means your RSS triggers and AI calls execute reliably around the clock — no worrying about your server being down when the workflow fires.
Monitor Company Page Analytics
If you manage a LinkedIn Company Page, tracking engagement metrics over time helps you understand what content resonates. n8n can pull these numbers and send you a weekly digest.
Workflow: Weekly LinkedIn Analytics Report
- Schedule Trigger node — fires every Monday at 8:00 AM
- HTTP Request node — calls LinkedIn's Organization Statistics API (
GET /organizationalEntityShareStatistics) with your company page URN and a date range for the past 7 days - Function node — extracts key metrics: total impressions, unique impressions, clicks, engagement rate, and follower count change
- Google Sheets node — appends the weekly data to a running spreadsheet so you build a historical dataset
- Slack node (or Email node) — sends a formatted summary to your marketing team with week-over-week comparison
Over time, the spreadsheet becomes a lightweight analytics dashboard. You can even add a step that uses an AI node to analyze trends and suggest what types of posts to create more of, based on your historical engagement data.
Tips for LinkedIn Automation with n8n
After building dozens of LinkedIn workflows, here are the practical details that matter:
- Token refresh — LinkedIn OAuth2 tokens expire after 60 days. n8n handles refresh automatically, but check your credentials if workflows start failing after a period of inactivity
- Rate limits — LinkedIn enforces daily API call limits that vary by app type. Add a Wait node between batch operations to stay under the threshold
- Image posts get more reach — use the HTTP Request node to upload images to LinkedIn's image API before creating a post. The LinkedIn node's text-only post works, but adding an image typically doubles engagement
- Company page vs. personal profile — the LinkedIn node supports both, but you need different OAuth scopes for each. Set up separate credentials if you post to both
- Error handling — wrap your LinkedIn API calls with an Error Trigger workflow that alerts you on failure. LinkedIn's API occasionally returns 429 (rate limit) or 401 (expired token) errors that need attention
- Test with the Manual Trigger first — before setting your Schedule Trigger live, run each workflow manually and verify the LinkedIn post appears correctly. Check formatting, link previews, and mention tagging
Tip: If you're automating LinkedIn for multiple clients or team members, n8nautomation.cloud lets you spin up dedicated n8n instances — each with their own LinkedIn credentials and workflows, completely isolated from one another.
LinkedIn automation doesn't have to mean spammy bot behavior. With n8n, you control exactly what runs, when it runs, and you can insert human approval at any point. Start with the scheduled posting workflow — it takes about ten minutes to set up and immediately saves you time every week. From there, layer on lead capture and analytics as your LinkedIn presence grows.