LinkedIn Profile Comments Scraper avatar

LinkedIn Profile Comments Scraper

Pricing

from $6.00 / 1,000 linkedin comment scrapeds

Go to Apify Store
LinkedIn Profile Comments Scraper

LinkedIn Profile Comments Scraper

Give a LinkedIn profile URL and get the commenters on that person's recent posts, with name, headline, profile URL, comment text and reactions. Direct post and article URLs also work, with no cookies or login.

Pricing

from $6.00 / 1,000 linkedin comment scrapeds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

6

Total users

1

Monthly active users

7 days ago

Last modified

Share

What is LinkedIn Profile Comments Scraper?

LinkedIn Profile Comments Scraper returns one dataset row per public comment on a person's recent LinkedIn posts. Give it a profile URL and it reads that person's latest posts, then extracts each commenter's name, profile URL and comment text, alongside the post text, date and reaction counts. Direct post, feed-update and Pulse article URLs work too. Sales teams, recruiters and marketers use it to find the people who engage with a prospect, a competitor or a thought leader, with no LinkedIn cookies or login.

Why teams use it for engagement leads

  • Start from a person. One profile URL expands into their most recent public posts and the commenters on each one.
  • Warm leads. Commenters have already shown interest in a topic, a company or a person, so commenterProfileUrl makes a strong outreach list.
  • Post context in every row. Each comment carries the post URL, text, publish date, likes and comment count.
  • Optional post summaries. outputMode: "both" adds one post row with the engagement totals for each post read.
  • Clear cost ceilings. maxPostsPerProfile, maxCommentsPerPost and maxResults cap the work and the bill.

How to use it

Commenters on a founder's last five posts:

{
"startUrls": [{ "url": "https://www.linkedin.com/in/williamhgates/" }],
"maxPostsPerProfile": 5,
"maxCommentsPerPost": 50
}

Commenters on one article, plus a post summary row:

{
"startUrls": [{ "url": "https://www.linkedin.com/pulse/being-father-has-made-me-better-leader-vice-versa-austen-allred/" }],
"maxCommentsPerPost": 100,
"outputMode": "both"
}
InputWhat it controls
startUrlsLinkedIn profile, post, feed-update or Pulse article URLs, detected per URL
maxPostsPerProfileRecent posts read per profile URL, 1 to 50 (default 5)
maxCommentsPerPostComment rows saved per post, 1 to 1,000 (default 50)
maxResultsTotal comment rows across the whole job (default 1,000)
outputModecomments (default) or both to add one post summary row per post
dedupeCommentsRemoves repeated comments on the same post (default on)
includeRawDataAdds the source payload to each row for custom parsing (default off)
maxConcurrencyPosts fetched in parallel, 1 to 5 (default 2)

Output: LinkedIn comment data you receive

A comment row from a profile input (commenter shown with example values):

{
"recordType": "comment",
"sourceType": "profile",
"sourceProfileUrl": "https://www.linkedin.com/in/williamhgates/",
"sourceProfileName": "Bill Gates",
"postUrl": "https://www.linkedin.com/posts/williamhgates_carnegie-mellon-university-announces-historic-activity-7511520890451296256-tv-D",
"postId": "7511520890451296256",
"postText": "Ken's incredible generosity will make a huge, lasting impact.",
"datePublished": "2026-10-01T20:22:17.591Z",
"postAuthorName": "Bill Gates",
"likeCount": 434,
"commentCount": 59,
"engagementCount": 493,
"commentPosition": 1,
"commentText": "Wow! I love it!",
"commenterName": "Jordan Example",
"commenterProfileUrl": "https://www.linkedin.com/in/jordan-example",
"commenterHeadline": null,
"scrapedAt": "2026-10-02T10:41:18.320Z"
}
FieldWhat it contains
commenterName, commenterProfileUrlWho commented, with a link to their profile
commentText, commentPositionThe comment and its order on the post
commenterHeadline, commenterFollowers, commentReactionCount, replyCount, commentDateExtra comment details when LinkedIn shows them publicly; otherwise null
postUrl, postId, postText, postTitle, datePublishedThe post or article the comment belongs to
likeCount, reactionCount, commentCount, engagementCountPost engagement totals
sourceType, sourceProfileUrl, sourceProfileNameWhich input led to the row
recordTypecomment, or post for summary rows when outputMode is both

OUTPUT and RUN_SUMMARY in the default key-value store report the outcome, posts read, comments saved and the reason the job stopped.

Example workflow: a warm outreach list

A B2B sales rep wants to reach people interested in a competitor's product. They paste the competitor CEO's profile URL with maxPostsPerProfile at 10 and filter the rows by keywords in commentText. The matching commenterProfileUrl values become a shortlist. They continue with LinkedIn Profile Details Scraper on that shortlist to add location, experience and education before outreach.

Pricing

This Actor uses Pay per event. Apify platform usage is included in the event price. You pay a small start event, one event per post read and one event per comment saved. The live Pricing tab on this page shows the current prices.

  • 1 profile × 5 posts × 20 comments = 5 post events + 100 comment events.
  • maxResults stops the job once that many comments are saved, so it works as a budget ceiling.
  • Duplicate comments are removed before they are saved and charged.

LinkedIn comments with AI agents (MCP)

Connect this Actor to an AI agent through Apify MCP and ask in plain language:

Find the people who commented on Satya Nadella's last three LinkedIn posts and list their names, profile links and what they said.

Agent checklist:

  1. Put the profile or post URL in startUrls as { "url": "..." } objects.
  2. Set maxPostsPerProfile and maxCommentsPerPost to match the request size.
  3. Read rows with get-dataset-items and keep recordType: "comment".
  4. Read OUTPUT for the outcome and the number of comments saved.

API example

curl -X POST "https://api.apify.com/v2/acts/khadinakbar~linkedin-profile-comments-scraper/run-sync-get-dataset-items" \
-H "Authorization: Bearer $APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"startUrls": [{"url": "https://www.linkedin.com/in/williamhgates/"}], "maxPostsPerProfile": 3, "maxCommentsPerPost": 25}'
Your next stepUseWhy
When you start from one post URL and want its commentersLinkedIn Post Engagers ScraperCommenters with optional profile enrichment
When you want the comments a person left on other people's postsLinkedIn User Comments & Reactions ScraperThat person's own activity
When you then want full profiles for your commenter listLinkedIn Profile Details ScraperAbout, experience and education per profile
When you then want work emailsLinkedIn Profile Scraper & Email FinderProfiles with email lookup

Best results

Starting situationHelpful actionExpected outcome
A busy creator with many postsRaise maxPostsPerProfile and lower maxCommentsPerPostA wide sample of commenters across topics
One viral postPaste the post URL and raise maxCommentsPerPostDeep coverage of that conversation
A fixed budgetSet maxResultsThe job stops at that many comments
Reporting on engagementSet outputMode to bothPost totals next to the comment rows

Builder's note

I found that most people who want "commenters" start from a person rather than a post, so profile URLs expand into recent posts automatically. I learned that commenter details vary from post to post on public LinkedIn pages, so name, profile URL and comment text are always present while headline, follower and reaction fields fill in when LinkedIn shows them.

FAQ

Do I need a LinkedIn account or cookies?

No. The Actor reads public LinkedIn post data through a managed data provider, so no session cookie or login is involved.

Which URL types work?

Profile URLs (/in/...), post URLs (/posts/...), feed-update URLs (/feed/update/...) and Pulse article URLs (/pulse/...).

How many posts does a profile give?

The most recent public posts LinkedIn shows for that profile, up to maxPostsPerProfile.

Why are some commenter fields null?

LinkedIn shows headline, follower and reaction details for some comments only. Name, profile URL and comment text are filled in on every row.

Can I get the people who liked a post?

This Actor returns commenters. Public LinkedIn post data gives reaction totals in reactionCount, while comments come with names and profile links.

Responsible use

This Actor collects publicly visible LinkedIn comments. Use the data for legitimate research and outreach, respect people's privacy and follow LinkedIn's terms and the data-protection laws that apply to you, such as GDPR. Read Apify's guide on whether web scraping is legal for more context. LinkedIn is a trademark of LinkedIn Corporation. This independent Actor is not affiliated with, associated with, or endorsed by LinkedIn. For questions or bugs, open a ticket in the Issues tab.