LinkedIn Profile Posts Scraper avatar

LinkedIn Profile Posts Scraper

Pricing

from $3.00 / 1,000 linkedin post scrapeds

Go to Apify Store
LinkedIn Profile Posts Scraper

LinkedIn Profile Posts Scraper

Scrape a person's public LinkedIn post history by profile URL: up to 1,000 posts per profile with text, date, reactions by type, comments, shares, media, hashtags and author. Date, likes and only-new filters. No login or cookies.

Pricing

from $3.00 / 1,000 linkedin post scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

69

Total users

18

Monthly active users

2 days ago

Last modified

Features

Limited permissions

Share

LinkedIn Profile Posts Scraper — Full Post History by Profile URL

Get a person's public LinkedIn posts from their profile URL: up to 1,000 posts per profile, newest first, each with full text, date, reactions (total and by type), comments, shares, images, video, articles, hashtags and mentions. No LinkedIn login, no cookies. Works with the Apify API, schedules and MCP agents.

What you get and why it matters

You sendYou getWhy it helps
One or more linkedin.com/in/... URLs or bare handlesOne row per post: text, date, reactions, comments, shares, media, hashtags, mentions, post type, repost flag, author name and headlineTrack what founders, prospects and creators publish and which posts get traction
Optional filtersOnly posts from the last N days, with at least N reactions or comments, only new since your last run, authored posts onlyPay only for the posts you actually keep

Posts are fetched 100 at a time and up to five profiles run at the same time, so a 100-profile list finishes in minutes. Duplicates, filtered posts, empty or private profiles and failed lookups are never billed.

Data fields

FieldMeaning
postUrl, postId, publishedAtLink, ID and publish time
text, hashtags, mentionsFull post text, hashtags and tagged people/companies
reactionCount, likeCount, reactionTypesTotal reactions, likes, and counts per reaction type
commentCount, shareCount, engagementCountComments, reposts and the sum of all engagement
postTypetext, image, video, article, document or repost
mediaUrl, imageUrls, videoUrl, articleUrl, documentTitleAttached media and links
isRepost, repostOriginalUrlWhether the row is a repost and what was reposted
authorName, authorHeadline, profileUrlThe profile owner
dataDepthfull (complete post with counts). preview marks a thin fallback row with no counts, used only if the full source is unavailable

What it costs

Pay per event plus Apify platform usage. Events: Actor start ($0.00005), each post saved, and (from 2026-12-06) a small fee once for each profile that returns posts. Duplicates, filtered posts, empty or private profiles and failures are never charged.

Until 2026-12-06From 2026-12-06 (Free plan; Bronze, Silver and Gold plans pay less per post)
Per post saved$0.003$0.0012 (Bronze $0.00108, Silver $0.00096, Gold and above $0.0009)
Once per profile that returns postsnone$0.0125
Example runUntil 2026-12-06From 2026-12-06 (Free plan)
One profile, latest 20 postsabout $0.06about $0.037
One profile, 100 postsabout $0.30about $0.133
25 profiles, 40 posts eachup to about $3.00up to about $1.51

Set Maximum posts per profile and the run's total cost limit to cap spending. The live Pricing tab always shows the current prices. Run time is about 7 seconds per 100 posts per profile.

What's new

  • 2026-12-06: lower per-post price with Bronze/Silver/Gold discounts and a small once-per-profile fee (see What it costs).
  • 2026-11-11: full post history (up to 1,000 posts per profile) with reaction counts in every row; five profiles at a time; date, minimum reactions/comments and only-new filters; hashtags, mentions, post type, video and article fields; time-limit safe finish (partial results are kept and billed only for saved rows).

Input

FieldUse
profileUrlsProfile URLs or handles, one per line
maxPostsPerProfile1–1,000, default 20
postedAfter, maxAgeDaysDate limits; paging stops when a whole page is older
minReactions, minCommentsKeep only posts above these counts
authoredOnly, includeRepostsChoose authored posts only, or drop reposts
onlyNewPostsReturn only posts newer than the last run with this option on, for scheduled monitoring
outputModefull or compact (smaller rows for agents)

Example input:

{
"profileUrls": ["https://www.linkedin.com/in/williamhgates/", "satyanadella"],
"maxPostsPerProfile": 50,
"maxAgeDays": 90,
"minReactions": 100,
"outputMode": "compact"
}

Use with AI agents (MCP)

Exact Actor: khadinakbar/linkedin-profile-posts-scraper. Give an agent one or more profile URLs; it receives flat rows plus a run summary (OUTPUT) with outcome (COMPLETE, PARTIAL, VALID_EMPTY, UPSTREAM_FAILED, INVALID_INPUT), counts and stop reason.

Get the last 30 days of posts from this LinkedIn profile, keep only posts with 50+ reactions, and summarize the main topics and what drove engagement.

API example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('khadinakbar/linkedin-profile-posts-scraper').call({
profileUrls: ['https://www.linkedin.com/in/williamhgates/'],
maxPostsPerProfile: 100,
maxAgeDays: 30,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items.length, items[0]);

Honest limits

  • Public posts only; private profiles, deleted posts and anything behind a login are not returned.
  • Counts are those shown on LinkedIn when the post was read.
  • It returns what LinkedIn shows publicly for the profile; a person with 12 public posts returns 12 rows.
  • If the full source is unavailable, the Actor falls back to a thin preview (up to 5 posts, no counts, dataDepth: preview) instead of failing.
  • Not a comment, member or follower scraper.

Pick the right Actor

JobActor
One person's full post history with engagementThis Actor
Quick recent posts for a long list of peopleLinkedIn Batch Profile Posts Scraper
Posts by keyword, company feed or exact post URLLinkedIn Posts Scraper
A company page's postsLinkedIn Company Posts Scraper
Profile details and contact dataLinkedIn Profile Details Scraper

FAQ

Can I pass a bare handle instead of a URL?
Yes. williamhgates is expanded to the full /in/ URL.

How many posts can I get?
Up to 1,000 per profile, newest first. Use the date or reaction filters to fetch fewer.

Am I billed for posts that fail my filters?
No. Only posts saved to the dataset are billed. Duplicates, filtered posts, empty profiles and failed lookups are free.

What if a run stops early?
Before the time limit the Actor stops starting new work, keeps every saved row and reports PARTIAL with profilesNotProcessed. Rerun the missing profiles.

Can I monitor new posts on a schedule?
Yes. Turn on onlyNewPosts and schedule the run; each run returns and bills only posts newer than the last one.

Does it return comments or who reacted?
No, it returns comment and reaction counts. It is not a comment or reactor scraper.

Responsible use

Use this Actor only for publicly available information, in line with applicable law, platform terms and the rights of the people whose posts you collect. Do not use it for harassment, unlawful profiling or spam, and handle personal data in line with privacy rules such as GDPR. This Actor is not affiliated with or endorsed by LinkedIn.

⌂ 换网址