LinkedIn Company Posts Scraper avatar

LinkedIn Company Posts Scraper

Pricing

from $0.50 / 1,000 post scrapeds

Go to Apify Store
LinkedIn Company Posts Scraper

LinkedIn Company Posts Scraper

Extract recent posts from LinkedIn company pages — headlines, full post body text, dates, like counts, post URLs, and author info. No login required. Accepts company slugs or full URLs. Batch multiple companies in one run.

Pricing

from $0.50 / 1,000 post scrapeds

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

12

Total users

7

Monthly active users

10 days ago

Last modified

Categories

Share

What does LinkedIn Company Posts Scraper do?

LinkedIn Company Posts Scraper extracts recent posts from LinkedIn company pages — get post headlines, full post body text, publish dates, post URLs, and author info without logging in or using the LinkedIn API.

No login required. This scraper uses pure HTTP requests with residential proxy to fetch public LinkedIn company pages and extracts structured data embedded in the HTML. Each company page yields approximately 10-30 of the most recent posts including the full text of each post.

Try it now — paste a company URL, or just type a slug like google, microsoft, or apify and click Start.

Why this scraper stands out:

  • Extracts full post text (not just headlines) — 10 structured fields per post
  • No LinkedIn account or API key needed
  • Accepts full URLs, partial URLs, or simple slugs
  • Batch scrape multiple companies in one run
  • 5x cheaper than the leading competitor (apimaestro charges $0.005/post, we charge $0.001)

Who is LinkedIn Company Posts Scraper for?

B2B Marketing & Competitive Intelligence Teams

  • Monitor what competitors are publishing and which topics get the most engagement
  • Track company announcements, product launches, and PR activity via LinkedIn
  • Build a content calendar by analyzing top-performing posts in your industry

Sales & Business Development Professionals

  • Stay informed about prospect companies before outreach — reference their recent posts
  • Track funding announcements, partnerships, and product news from target accounts
  • Trigger outreach sequences when companies post about topics relevant to your product

Market Researchers & Analysts

  • Collect thought leadership content across a sector for trend analysis
  • Analyze posting cadence and content strategy of industry players
  • Feed LinkedIn company post data into AI models for sentiment analysis and topic extraction

Data Engineers & Developers

  • Integrate LinkedIn company content into monitoring pipelines via the Apify API
  • Automate competitive intelligence dashboards with scheduled scraping runs
  • Connect LinkedIn data to AI agents via MCP for real-time company research

Why use LinkedIn Company Posts Scraper?

  • 🔓 No login or cookies required — scrapes public company pages without authentication
  • 📝 Full post body text — get the complete text of each post, not just the headline
  • 💰 5x cheaper than competitors — $0.001/post vs $0.005/post (apimaestro)
  • Pure HTTP — fast and lightweight, no browser overhead
  • 🏢 Flexible input — accepts full LinkedIn URLs, partial URLs, or just company slugs
  • 🔄 Batch scraping — process dozens of companies in a single run
  • Scheduling — set up recurring runs for ongoing competitor monitoring
  • 📁 Export — download results as JSON, CSV, or Excel
  • 🏠 Residential proxy included — all proxy costs built into the per-post price
  • 🤖 MCP compatible — connect directly to Claude and other AI assistants

What data can you extract?

Each post yields up to 10 structured fields:

CategoryFields
🏢 CompanycompanyName, companySlug, companyUrl
📝 Post ContentpostType (Article / DiscussionForumPosting), headline, text (full body)
📅 DatesdatePublished
🔗 LinkspostUrl
✍️ AuthorauthorName
🕐 MetadatascrapedAt

Post types explained:

  • Article — long-form LinkedIn articles published by the company
  • DiscussionForumPosting — standard LinkedIn feed posts, updates, and announcements

Important note on data scope: This scraper extracts data embedded in LinkedIn's public HTML (JSON-LD structured data). Each company page shows approximately 10-30 recent posts. The scraper returns the full post body text alongside headlines and metadata. Fields like comment counts, share counts, and reaction breakdowns are not available from the public page without login.

How much does it cost to scrape LinkedIn company posts?

This Actor uses pay-per-event pricing — you pay only for what you scrape. No monthly subscription. All platform and residential proxy costs are included.

FreeStarter ($29/mo)Scale ($199/mo)Business ($999/mo)
Per post$0.001$0.0009$0.0007$0.0005
1,000 posts$1.00$0.90$0.70$0.50
10,000 posts$10.00$9.00$7.00$5.00

A one-time $0.01 start fee applies per run to cover initialization.

Real-world cost examples (Free tier):

InputCompaniesPostsDurationCost
1 company1~10~8s~$0.020
5 companies5~50~30s~$0.060
20 companies20~200~2min~$0.210

Each company returns approximately 10-30 recent posts. You pay per post scraped. The free plan ($5 credit) lets you scrape approximately 5,000+ posts before spending a dollar.

How to scrape LinkedIn company posts

  1. 🔗 Go to LinkedIn Company Posts Scraper on Apify Store
  2. 📋 Click Try for free to open the Actor in Apify Console
  3. 🏢 Enter company URLs or slugs (e.g., google, microsoft, https://www.linkedin.com/company/apify/)
  4. ⚙️ Set Max Posts Per Company if you want to limit results (default: 30)
  5. ▶️ Click Start and wait for the run to finish
  6. 📊 Preview results in the Dataset tab — switch to Posts view for a table layout
  7. 💾 Export as JSON, CSV, or Excel — or connect via API

Input examples for different scenarios:

Monitor a list of competitors:

{
"companyUrls": ["salesforce", "hubspot", "zendesk"],
"maxPostsPerCompany": 20
}

Use full LinkedIn URLs:

{
"companyUrls": [
"https://www.linkedin.com/company/google/",
"https://www.linkedin.com/company/microsoft/"
],
"maxPostsPerCompany": 30
}

Quick single company check:

{
"companyUrls": ["openai"],
"maxPostsPerCompany": 10,
"maxCompanies": 1
}

Input parameters

ParameterTypeRequiredDefaultDescription
companyUrlsArray of stringsYesLinkedIn company URLs or slugs. Accepts https://www.linkedin.com/company/google/, linkedin.com/company/google, or just google.
maxPostsPerCompanyIntegerNo30Maximum posts to extract per company (1–100). LinkedIn typically shows 10-30 posts on the public page.
maxCompaniesIntegerNo100Maximum number of companies to process. Useful when you have a long list but only want a subset.

Output examples

Each company produces multiple post objects in the dataset. Here is a sample:

{
"companyName": "Google",
"companySlug": "google",
"companyUrl": "https://www.linkedin.com/company/google",
"postType": "DiscussionForumPosting",
"headline": "New AI capabilities are coming to Google Vids",
"text": "New AI capabilities, powered by Lyria 3 and Veo 3.1, are starting to roll out to Google Vids. With these new features, you'll be able to: ✨ Generate high-quality video clips from just a simple prompt or photo ✨ Score your video with custom music generation in Lyria 3...",
"datePublished": "2026-04-02T18:10:18.151Z",
"postUrl": "https://www.linkedin.com/posts/google_new-ai-capabilities-are-coming-to-google-activity-7445533082427858945-QyGB",
"authorName": "Google",
"scrapedAt": "2026-04-04T00:38:29.585Z"
}
{
"companyName": "Apify",
"companySlug": "apify",
"companyUrl": "https://www.linkedin.com/company/apify",
"postType": "DiscussionForumPosting",
"headline": "Build smarter AI agents with the Actor SDK",
"text": "We just released a major update to the Apify Actor SDK. Here's what's new...",
"datePublished": "2026-04-01T14:22:00.000Z",
"postUrl": "https://www.linkedin.com/posts/apify_build-smarter-ai-agents-activity-7444900123456789012-AbCd",
"authorName": "Apify",
"scrapedAt": "2026-04-04T00:40:12.183Z"
}

Tips for best results

  • 🎯 Start small — test with 1-2 companies first to verify the data meets your needs before scaling up
  • 🔄 Schedule recurring runs — set up daily or weekly runs to monitor competitor posts automatically
  • 📋 Use slugs for conveniencegoogle is easier to type than the full URL and works just as well
  • ⚠️ Post count varies by company — large companies like Google typically have 10+ recent posts; smaller companies may have fewer visible on their public page
  • 🏢 Company vs personal profiles — this scraper is for company pages only. For personal profiles, use LinkedIn Post Scraper
  • 🧮 Budget planning — each post costs $0.001 (Free tier) plus a one-time $0.01 start fee. For 10 companies × 20 posts = 200 posts + start fee = $0.21
  • 🔍 Check post count — if a company returns fewer posts than expected, they may have limited their public visibility or the scraper hit LinkedIn's anti-bot protection (retry later)

Integrations

LinkedIn Company Posts Scraper works with the full Apify ecosystem and thousands of external tools.

Competitor content monitoring pipeline

  • Schedule daily runs for a list of 10-20 competitor company slugs
  • Connect to Google Sheets via Zapier to append new posts to a running log
  • Set up Slack alerts when specific keywords appear in competitor posts

AI-powered competitive intelligence

  • Run the scraper on 5-10 target companies weekly
  • Feed post text to Claude or GPT for topic classification and sentiment analysis
  • Automatically generate competitive intelligence briefings for your team

Sales trigger workflow

  • Scrape posts from 50+ target accounts weekly
  • Push results to HubSpot when a prospect posts about a topic relevant to your product
  • Trigger personalized email sequences based on specific company announcements

Content research and ideation

  • Collect posts from 20 industry thought leaders weekly
  • Send results to Airtable for your content team's review
  • Use engagement patterns and topics to inform your own content calendar

Supported integrations:

  • 🔗 Zapier, Make (Integromat), n8n
  • 📊 Google Sheets, Airtable, Excel
  • 💼 HubSpot, Salesforce, Pipedrive
  • 💬 Slack, Microsoft Teams, Discord
  • 🗄️ S3, Google Cloud Storage, Dropbox
  • 🔌 REST API, webhooks

Using the Apify API

Call LinkedIn Company Posts Scraper programmatically using the Apify API.

Node.js

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('automation-lab/linkedin-company-posts-scraper').call({
companyUrls: ['google', 'microsoft', 'apify'],
maxPostsPerCompany: 20,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((post) => {
console.log(`${post.companyName}: ${post.headline}`);
console.log(`Published: ${post.datePublished}`);
console.log(`URL: ${post.postUrl}`);
});

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("automation-lab/linkedin-company-posts-scraper").call(run_input={
"companyUrls": ["google", "microsoft", "apify"],
"maxPostsPerCompany": 20,
})
for post in client.dataset(run["defaultDatasetId"]).iterate_items():
print(f"{post['companyName']}: {post['headline']}")
print(f"Published: {post['datePublished']}")
print(f"URL: {post['postUrl']}")

cURL

# Start the actor run
curl -X POST "https://api.apify.com/v2/acts/automation-lab~linkedin-company-posts-scraper/runs?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"companyUrls": ["google", "microsoft", "apify"],
"maxPostsPerCompany": 20
}'
# Fetch results (replace DATASET_ID with the value from the run response)
curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_APIFY_TOKEN&format=json"

Use with AI agents via MCP

LinkedIn Company Posts Scraper is available as a tool for AI assistants that support the Model Context Protocol (MCP).

Add the Apify MCP server to your AI client — this gives you access to all Apify actors, including this one:

Setup for Claude Code

$claude mcp add --transport http apify "https://mcp.apify.com"

Setup for Claude Desktop, Cursor, or VS Code

Add this to your MCP config file:

{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com"
}
}
}

Your AI assistant will use OAuth to authenticate with your Apify account on first use.

Example prompts

Once connected, try asking your AI assistant:

  • "Use automation-lab/linkedin-company-posts-scraper to fetch the last 20 posts from Google, Microsoft, and OpenAI and summarize what each company is talking about this week"
  • "Get LinkedIn posts from salesforce and hubspot for the past month and identify their top content themes"
  • "Scrape recent posts from apple and samsung on LinkedIn, then tell me what product launches or announcements they've made"

Learn more in the Apify MCP documentation.

Web scraping of publicly available data is generally legal, as confirmed by the US Ninth Circuit ruling in hiQ Labs v. LinkedIn (2022), which held that scraping public LinkedIn profiles does not violate the Computer Fraud and Abuse Act (CFAA).

This Actor only accesses publicly available LinkedIn company pages — the same data any visitor can see without logging in. It does not bypass any authentication, access private data, or violate LinkedIn's login barriers.

However, you should:

  • Review LinkedIn's Terms of Service for your use case
  • Comply with applicable data protection laws (GDPR, CCPA, etc.)
  • Use the collected data responsibly and ethically
  • Consult legal counsel if you have specific compliance questions

For more information, see Apify's guide on the legality of web scraping.

FAQ

How many posts can I get per company? Each company page typically shows 10-30 of the most recent posts. This is determined by what LinkedIn embeds in the public page's structured data — not a limitation of the scraper. Large, active companies (Google, Microsoft) tend to have more posts visible than smaller ones.

Why did a company return 0 posts? This can happen when: (a) LinkedIn's anti-bot protection blocked the request — wait 10-15 minutes and retry; (b) the company doesn't have public posts visible without login; (c) the company slug is incorrect (check the URL at linkedin.com/company/SLUG). Invalid company slugs return a 404 and are skipped automatically.

Can I get comment counts, share counts, or reaction breakdowns? No — these metrics are not available on the public LinkedIn company page without login. The public page embeds post headlines, body text, and dates, but not engagement stats. If you need engagement data, that would require authenticated access.

Does this scraper work for personal LinkedIn profiles? No — this scraper is designed for company pages only (linkedin.com/company/SLUG). For personal profiles, use LinkedIn Post Scraper.

Why is the scraper slower than expected? LinkedIn uses anti-bot detection that sometimes requires multiple retries with different residential proxy IPs. The scraper automatically retries up to 3 times with exponential backoff. A 1-second delay between company requests also helps avoid rate limiting.

Does this require a LinkedIn account or API key? No. LinkedIn Company Posts Scraper works entirely without login. It fetches the public version of company pages using residential proxies, extracting structured data (JSON-LD) embedded in the HTML.

How does this compare to apimaestro/linkedin-company-posts? Both scrapers extract posts from LinkedIn company pages without login. Our scraper is 5x cheaper ($0.001/post vs $0.005/post). The main trade-off: our scraper returns full post body text from the public page JSON-LD; apimaestro appears to use a third-party API proxy that may offer additional fields. Try both and compare on your specific use case.

Other LinkedIn scrapers

  • 👤 LinkedIn Post Scraper — Extract recent posts from LinkedIn personal profiles with headlines, dates, and like counts
  • 🏢 LinkedIn Company Scraper — Extract company profile data: size, industry, headquarters, employee count, founded year
  • 💼 LinkedIn Jobs Scraper — Scrape job listings from LinkedIn job search results with full job descriptions
  • 👥 LinkedIn Profile Scraper — Extract detailed LinkedIn profile data: experience, education, skills, and contact info