LinkedIn Post Scraper | Keyword Monitor, Never Hits LinkedIn avatar

LinkedIn Post Scraper | Keyword Monitor, Never Hits LinkedIn

Pricing

from $1.50 / 1,000 linkedin posts

Go to Apify Store
LinkedIn Post Scraper | Keyword Monitor, Never Hits LinkedIn

LinkedIn Post Scraper | Keyword Monitor, Never Hits LinkedIn

Search public LinkedIn posts by keyword with no login: post URL, author, headline, profile, snippet. No ban risk. From $1.50/1k. Works in Claude & ChatGPT.

Pricing

from $1.50 / 1,000 linkedin posts

Rating

5.0

(1)

Developer

The Mine Works

The Mine Works

Maintained by Community

Actor stats

1

Bookmarked

100

Total users

29

Monthly active users

12 days ago

Last modified

Share

📣 LinkedIn Post Scraper: Search Posts by Keyword · From $1.50/1k

Part of the Social & Market Research MCP. This actor's data is also available to AI agents through our Social & Market Research MCP server, eight social, news and search-interest tools behind one endpoint. No result, no charge.

What does LinkedIn Post Scraper do?

It turns any keyword or phrase into a structured feed of public LinkedIn posts. Give it lab grown diamond or SaaS pricing strategy, and you get clean JSON for each match: post URL, author name, author headline, author profile URL, and a text snippet. No cookies, no account, no login of any kind.

The actor never touches LinkedIn directly. It reads posts from the same public index that search engines have already crawled, so there is no LinkedIn session to flag and nothing on your account to ban. That makes it a safe way to run keyword-based social listening on LinkedIn at scale, whether you are watching your own brand, a competitor, or an emerging topic.

✅ No login required | ✅ Never hits LinkedIn directly | ✅ Pay only for posts returned | ✅ MCP-ready for AI agents

Guide and FAQs: LinkedIn Post Scraper on themineworks.com. Tutorial: LinkedIn Post Search: Find Posts by Keyword Without Login.

Who is it for?

Marketers and founders tracking brand or competitor mentions without a social-listening subscription. Sales and growth teams turning a topic people are already posting about into a warm outbound list. Researchers and content strategists studying which angles and hooks are working in a category right now.

How much does it cost to search LinkedIn posts?

You pay per post actually delivered. Nothing else: no subscription, no seat licence, no monthly minimum, no per-run start fee.

Apify planPrice per 1,000 posts
Free$2.00
Bronze$1.80
Silver$1.65
Gold and above$1.50

The Pricing tab on this page is the single source of truth and always shows the rate for your own plan. If this table and the Pricing tab ever disagree, the Pricing tab is right.

What a real job costs. Apify's Free plan includes $5 of usage credit every month, which is about 2,500 posts a month at no cost to you. A single search topic pulled to the 200-result cap costs about $0.30 on Gold. A 10,000 post competitive-monitoring sweep across many keywords costs about $15.00 on Gold.

What is never charged. Empty searches, search-engine bot walls, and failed runs cost nothing. The charge event fires only after a post record is in your dataset.

How does it search LinkedIn posts without logging in?

The actor searches for public linkedin.com/posts/… pages using site-restricted search queries in the shape site:linkedin.com/posts "your keyword", reads the results, and parses each one into a structured post record deduplicated by canonical post URL. It tries Brave first and falls back to Google, so a change at one search engine does not take the actor offline. That order was flipped on 9 September 2026 after Brave was measured as consistently cheaper per delivered result.

Because it never authenticates with LinkedIn, never touches LinkedIn's own servers, and never uses cookies, there is no ban risk on your side. Author headlines and profile URLs are extracted best effort from the search result and the LinkedIn post slug, post_url and author_name are the most reliable fields. The public index typically holds 50 to 150 unique posts per phrase before it is exhausted, so vary phrasings to go deeper on a topic.

What input does it take?

{
"query": "lab grown diamond",
"maxResults": 25,
"monitorMode": false
}
InputRequiredWhat it does
queryYesKeyword or phrase to search for in LinkedIn posts, for example artificial intelligence startup or SaaS pricing strategy
maxResultsNoCaps how many posts are returned (default 25, up to 200), which is how you cap cost. The index may hold fewer than this for a narrow phrase
monitorModeNoDeliver only posts not seen in a previous run on the same query, so a schedule never bills you twice for the same post

What data do you get back?

Five real records from a live run across three queries, "SaaS pricing strategy", "lab grown diamond" and "founder burnout", showing the range of how clean or messy author_name and author_headline come out depending on what LinkedIn's own search snippet contains:

[
{
"post_url": "https://www.linkedin.com/posts/raj-vardhman_saas-pricingstrategy-startuptips-activity-7295622726138871808-4eh9",
"author_name": "Raj Vardhman's Post",
"author_headline": "SAAS Pricing Strategy",
"author_profile_url": "https://www.linkedin.com/in/raj-vardhman",
"post_snippet": "Raj Vardhman's Post - SAAS Pricing Strategy LinkedIn - Raj Vardhman 4 reactions - 1 year ago SAAS Pricing Strategy: The Art of Getting It Right. Three pricing models that actually work: 1. Free trial with usage caps 2. Tiered per-seat...",
"scraped_at": "2026-09-09T01:15:13.514Z"
},
{
"post_url": "https://www.linkedin.com/posts/priya-menon-jewellery_labgrowndiamonds-sustainablejewellery-activity-7301884512309876224-8kqz",
"author_name": "Priya Menon",
"author_headline": "Founder at Studio Menon - Lab Grown Diamond Jewellery",
"author_profile_url": "https://www.linkedin.com/in/priya-menon-jewellery",
"post_snippet": "Priya Menon's Post LinkedIn - Priya Menon 12 reactions - 3 weeks ago Why we moved our entire collection to lab grown diamonds this year, and what our customers actually asked before they believed us...",
"scraped_at": "2026-09-09T01:18:47.902Z"
},
{
"post_url": "https://www.linkedin.com/posts/devika-rao-diamonds_lgd-labgrowndiamonds-jewellerybusiness-activity-7298214477610291201-3vhn",
"author_name": "Devika Rao",
"author_headline": "Category Lead, Lab Grown Diamonds",
"author_profile_url": "https://www.linkedin.com/in/devika-rao-diamonds",
"post_snippet": "Devika Rao's Post LinkedIn - Devika Rao 8 reactions - 2 months ago The lab grown diamond conversation has moved past price. Buyers now ask about grading reports and origin before they ask about cost...",
"scraped_at": "2026-09-09T01:20:02.336Z"
},
{
"post_url": "https://www.linkedin.com/posts/marcus-chen-founder_founderburnout-startuplife-mentalhealth-activity-7292018835117453313-9qpz",
"author_name": "Marcus Chen's Post",
"author_headline": "Founder Burnout",
"author_profile_url": "https://www.linkedin.com/in/marcus-chen-founder",
"post_snippet": "Marcus Chen's Post - Founder Burnout LinkedIn - Marcus Chen 21 reactions - 4 weeks ago I shut the company down for a week. Nobody died. Here is what actually happens when a founder disappears...",
"scraped_at": "2026-09-09T01:24:19.588Z"
},
{
"post_url": "https://www.linkedin.com/posts/anita-desai-coach_burnout-leadership-founders-activity-7289765201938765824-5mrx",
"author_name": "Anita Desai",
"post_snippet": "Anita Desai's Post LinkedIn - Anita Desai 6 reactions - 5 weeks ago Three founders told me this month they have not taken a full weekend off in over a year. That is not commitment, that is a warning sign...",
"scraped_at": "2026-09-09T01:25:47.113Z"
}
]

author_name and author_headline are extracted best effort from the search result title and often include LinkedIn's own boilerplate (such as "'s Post"), as shown in the first and fourth records above. The fifth record has no author_headline or author_profile_url because the search result for that post did not carry a resolvable headline or profile slug, those fields are dropped rather than sent as null when extraction comes up empty. post_url and author_name are the most reliable fields. A final _type: "summary" record is appended to every run with counts (posts found, charged).

Every post record contains these fields:

FieldDescription
🔗 post_urlCanonical LinkedIn post URL
🙍 author_nameName of the post author
💬 author_headlineAuthor's job title or headline when available
🔗 author_profile_urlBest effort LinkedIn profile URL for the author
📝 post_snippetText excerpt of the post from the search result
🕒 scraped_atISO timestamp when the record was captured

What are the limitations?

Worth knowing before you buy, so there are no surprises:

  • Coverage is public search visibility, not an exhaustive LinkedIn archive. You get the posts that are indexed for that phrase right now, typically 50 to 150 unique posts before the index is exhausted. Treat the result as a strong sample of the public conversation, not every post ever made on the topic.
  • Snippets are excerpts, not full posts. post_snippet comes from the search result, not the post body. Open post_url for the complete text.
  • Author fields are best effort. author_headline and author_profile_url are parsed from the result title and the post slug, and occasionally carry LinkedIn's own boilerplate or fail to resolve. post_url and author_name are the most reliable fields.
  • No engagement metrics. This actor returns the post and its author, not like/comment/share counts. For full profile detail on an author, chain the LinkedIn Profile Scraper onto author_profile_url.

What can you use it for?

Brand and product monitoring. Capture every public post mentioning your name, product, or launch. Schedule the actor on your keyword and diff new URLs against your previous dataset.

Lead generation. Reach out to people already discussing your topic publicly. Turn a topic like retention strategy or first hire into a warm outbound list.

Competitor watching. Track mentions of a rival's brand, launch, or campaign as they happen. Compare share of voice across weeks by counting unique authors per phrase.

Content and trend research. Study the trending post angles and hooks in your category. Surface the authors driving conversation on a subject before they saturate your feed.

How do I get started?

  1. Enter a search query, for example artificial intelligence startup or SaaS pricing strategy.
  2. Set maxResults (default 25, up to 200) to control cost.
  3. Click Start. The actor searches the public index and extracts each matching post.
  4. Export the dataset as JSON, CSV, or Excel, or pull it via API or MCP into your dashboard or agent.

Can I run it on a schedule?

Yes, with Apify's built-in Schedules. No code and no cron server of your own.

  1. Run the actor once with the input you want repeated, then click Save as a task at the top of the run form. This keeps your exact input attached for every future run.
  2. In the Apify Console, go to Schedules in the left sidebar, then Create new.
  3. Name it, set your timezone, and pick a frequency: a preset (hourly, daily, weekly) or a cron expression such as 0 6 * * * for daily at 6am.
  4. Under Actors or tasks to run, add the task you saved in step 1.
  5. Save. It then runs unattended, billed the same pay-per-post way as a manual run. Nothing is charged just for the schedule existing.

Prefer to automate the setup itself? Same thing via the API:

curl -X POST "https://api.apify.com/v2/schedules?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "linkedin-post-search-daily",
"cronExpression": "0 6 * * *",
"isEnabled": true,
"actions": [{ "type": "RUN_ACTOR", "actorId": "themineworks/linkedin-post-search" }]
}'

Full options, including time zones, run notifications and pausing, are in Apify's Schedules documentation.

What does Monitor mode do?

Set monitorMode: true and the actor remembers what it delivered last time, keyed on post_url. On the next scheduled run, only genuinely new posts are pushed and charged, so re-running the same query daily costs you for the new posts each day, not the whole feed every time. The summary record reports new_this_run and skipped_duplicates so you can see the dedup working. The first run establishes the baseline, every run after that is incremental. Pairs directly with a saved schedule: attach a task with monitorMode: true to a daily schedule and you have a standing "what's new" feed with no duplicate charges.

This actor reads only posts that LinkedIn has made publicly visible and that search engines have already indexed. It does not log in, does not use cookies, and does not access anything behind an authentication wall.

Courts in the United States have addressed public profile and content scraping directly. In hiQ Labs v. LinkedIn, the Ninth Circuit held that scraping publicly accessible data does not violate the Computer Fraud and Abuse Act. That said, this is general information and not legal advice. You remain responsible for how you use the data, including your obligations under GDPR, CCPA and similar laws when processing personal data such as an author's name or profile URL.

FAQ

Does this log in to LinkedIn or need cookies? No. It never sends a request to LinkedIn. There is nothing to log in to and no ban risk. All data comes from the public search index.

Why is the snippet not the full post? Snippets are excerpts from the search index, not the full post body. Open post_url for the complete post.

Why do I get fewer posts than expected? The public index typically holds a limited number of posts per phrase, often 50 to 150 unique posts before it is exhausted. Try varied phrasings to go deeper.

Are author profile URLs always accurate? They are extracted best effort from the post slug and may not always resolve. post_url and author_name are the most reliable fields.

Am I charged for a run that finds nothing? No. Empty searches, bot walls, and failed runs are never charged. The charge event fires only once a post record is actually in your dataset.

Can I monitor a topic continuously? Yes. Schedule the actor to re-run on your keyword with monitorMode: true and only genuinely new posts are delivered and charged.

Can I use it inside an AI agent? Yes. It is exposed as an MCP tool. See the section below.

Can I use LinkedIn Post Scraper through an MCP server? Yes. It is exposed as an MCP tool, so any MCP-compatible AI assistant, Claude, ChatGPT, or your own agent, can call it directly. See "Use in Claude, ChatGPT and any MCP agent" below for the paste-ready prompt and setup.

Use in Claude, ChatGPT and any MCP agent

Add it to Claude Code in one line:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=themineworks/linkedin-post-search"

Or point any MCP client at:

https://mcp.apify.com/?tools=themineworks/linkedin-post-search

Things an agent can ask for once connected:

  • "What are people saying on LinkedIn about lab grown diamonds this week? Summarize themes and link the top five posts."
  • "Find LinkedIn posts mentioning our competitor's product launch and list the authors."
  • "Search LinkedIn for 'SaaS pricing strategy' and put the results in a table with author and headline."

For multi-platform social research in one connection, use the Social & Market Research MCP server, eight tools behind one endpoint.

Copy this into your AI assistant

Paste the line below into ChatGPT, Claude, or any assistant connected to Apify's MCP, and it will run the job for you:

Use the Apify actor themineworks/linkedin-post-search to find the 25 most recent public LinkedIn posts mentioning "lab grown diamond" and list the author name, headline, and post URL for each. Return the results as a table.

Or call it programmatically with the Apify client:

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('themineworks/linkedin-post-search').call({
query: 'lab grown diamond',
maxResults: 25,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

Posts are the signal. Turn them into people, companies, and outreach with the full LinkedIn wedge:

Typical flow: post search finds the conversation, profile scraper enriches the individual authors, employees and company scrapers add the org context, and B2B Leads Finder adds business emails before outreach.


Disclaimer: This actor is an independent tool and is not affiliated with, endorsed by, or sponsored by LinkedIn Corporation. LinkedIn is a registered trademark of LinkedIn Corporation. All trademarks are the property of their respective owners. Use scraped public data in line with GDPR, CCPA, and your local laws.

Found a bug or have a feature request? Open an issue on the actor's Apify Console page or reach out through the Apify profile.