LinkedIn Post Comments & Reactions Scraper
Pricing
from $2.00 / 1,000 comment results
LinkedIn Post Comments & Reactions Scraper
Scrape comments, commenter profiles and reaction counts from any public LinkedIn post, company page or profile. Export to CSV, Excel, JSON or XML.
Pricing
from $2.00 / 1,000 comment results
Rating
0.0
(0)
Developer
ParseForge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share

๐ฌ LinkedIn Post Comments & Reactions Scraper
๐ Export the conversation around any LinkedIn post in seconds. Paste a post link, a company page or a member profile and get back 23 structured columns per comment, including the commenter's name, profile URL, photo, exact comment timestamp and per-comment reaction count.
This Actor reads the publicly visible version of LinkedIn posts, the same page any logged out visitor sees, and turns it into a clean dataset. Every row is one comment, carried together with the full context of the post it belongs to: the author, the post text, the total reaction count, the total comment count and which reaction types people actually used. No login, no cookie, no session token, and nothing behind LinkedIn's sign in wall.
Give it a single post URL and it returns that post's public comment thread. Give it a company page such as linkedin.com/company/microsoft or a member profile such as linkedin.com/in/satyanadella and it expands the page into the 10 to 12 recent public posts LinkedIn advertises there, then harvests each one. Reposts are detected and collapsed automatically, so the same conversation never lands in your dataset twice.
| ๐ฏ Target Audience | ๐ก Primary Use Cases |
|---|---|
| B2B marketers and demand gen teams | Find warm leads who already engage with your category |
| Social media and content strategists | Measure which posts actually start conversations |
| Competitive intelligence analysts | Track sentiment on a rival's announcements |
| Recruiters and talent sourcers | Surface engaged professionals in a niche |
| Founders and creators | Understand what your audience replies to |
| Data teams and researchers | Build labelled social discourse datasets |
๐ What the LinkedIn Comments & Reactions Scraper does
- Accepts three kinds of LinkedIn URL in one run: post links, company pages and member profiles.
- Normalises every post format into a single canonical target, so
linkedin.com/posts/...,linkedin.com/feed/update/urn:li:activity:...and raw URNs all work. - Expands company pages and profiles into their recent public posts.
- Extracts every publicly rendered comment with its author identity, text, exact date and reaction count.
- Attaches post level engagement to every row: total reactions, total comments and the reaction types present.
- Resolves LinkedIn's internal IDs into real ISO timestamps, so you get
2026-07-28T11:16:16.016Zinstead of a vague "1mo". - Collapses repost chains so duplicated conversations are removed before they reach your dataset.
๐ก Why it matters: a reaction count tells you a post travelled. The comment thread tells you who cared enough to type, what they objected to, and which of them is worth a reply. That second signal is where the pipeline is, and it is the one most social exports throw away.
๐ฌ Full Demo (๐ง Coming soon)
๐ Output
Each dataset row is one comment, enriched with its parent post. 23 columns per row.
| Field | Type | Description |
|---|---|---|
๐ผ imageUrl | string | Commenter's profile photo |
๐ commentAuthorName | string | Display name of the commenter |
๐ commentAuthorProfileUrl | string | Canonical LinkedIn profile URL |
๐ commentId | string | LinkedIn's internal comment ID |
๐ฌ commentText | string | Full comment body |
๐
commentDate | string | Exact ISO 8601 timestamp of the comment |
โณ commentAge | string | Relative age as LinkedIn displays it |
๐ commentReactionCount | integer | Reactions on that specific comment |
๐ postUrl | string | Canonical public URL of the post |
๐ postId | string | LinkedIn activity ID |
๐ postDate | string | Exact ISO 8601 timestamp of the post |
โ๏ธ postAuthorName | string | Who published the post |
๐ postAuthorProfileUrl | string | Author's profile or company page |
๐ผ postAuthorImageUrl | string | Author's photo or company logo |
๐ postText | string | Full post body |
โค๏ธ postReactionCount | integer | Total reactions on the post |
๐จ postCommentCount | integer | Total comments on the post |
๐งฌ postShareUrn | string | Underlying share or UGC post URN |
๐ repostedBy | string | Who reposted it, or N/A |
๐ฅ sourceUrl | string | The URL you supplied |
๐ญ postTopReactionTypes | array | Reaction types present, such as LIKE, PRAISE, EMPATHY |
๐ scrapedAt | string | When the row was collected |
โ error | string | Populated only on failed rows |
Real sample records
{"imageUrl": "https://media.licdn.com/dms/image/v2/D4D03AQHR8UFO3oj_XA/profile-displayphoto-scale_400_400/B4DZ2AyvGbH8Ak-/0/1775982279191?e=2147483647&v=beta&t=Xi_PUmEns8qlfehf54XMhFydtXh9lOw2ruZopePdR9s","commentAuthorName": "Simon Falk","commentAuthorProfileUrl": "https://se.linkedin.com/in/yourfinestoutsimonfalk","commentId": "7487828267173830656","commentText": "Fascinating to see Microsoft emphasizing the separation of models, harnesses, context, and action space. It reinforces the idea that future AI systems will be differentiated less by the individual model and more by the architecture that governs cooperation, transparency, and trust.","commentDate": "2026-07-28T11:16:16.016Z","commentAge": "1mo","commentReactionCount": 6,"postUrl": "https://www.linkedin.com/posts/satyanadella_today-we-are-announcing-a-series-of-updates-activity-7487546696537923584-Itvi","postId": "7487546696537923584","postDate": "2026-07-27T16:37:24.345Z","postAuthorName": "Satya Nadella","postAuthorProfileUrl": "https://www.linkedin.com/in/satyanadella","postText": "Today, we are announcing a series of updates that give customers frontier-grade security at half the cost...","postReactionCount": 11195,"postCommentCount": 449,"postShareUrn": "urn:li:share:7487546693446488064","repostedBy": "N/A","sourceUrl": "https://www.linkedin.com/feed/update/urn:li:activity:7487546696537923584","postTopReactionTypes": ["LIKE", "PRAISE", "EMPATHY"],"scrapedAt": "2026-08-27T15:21:39.896Z","error": null}
{"commentAuthorName": "Tracy Levine","commentAuthorProfileUrl": "https://www.linkedin.com/in/tracylevine","commentId": "7487582616997711872","commentText": "Satya Nadella, Your team knows scanning doesn't stop frontier Agents...","commentDate": "2026-07-27T19:00:08.450Z","commentAge": "1mo","commentReactionCount": 17,"postId": "7487546696537923584","postAuthorName": "Satya Nadella","postReactionCount": 11195,"postCommentCount": 449,"postTopReactionTypes": ["LIKE", "PRAISE", "EMPATHY"],"scrapedAt": "2026-08-27T15:21:40.023Z","error": null}
{"commentAuthorName": "Kaan Can G.","commentAuthorProfileUrl": "https://tr.linkedin.com/in/kaancanguven","commentId": "7487548068180123648","commentText": "The bigger shift here is not simply a cheaper model. It is security becoming a coordinated system that can think...","commentDate": "2026-07-27T16:42:51.370Z","commentAge": "1mo","commentReactionCount": 27,"postId": "7487546696537923584","postAuthorName": "Satya Nadella","postReactionCount": 11195,"postCommentCount": 449,"postTopReactionTypes": ["LIKE", "PRAISE", "EMPATHY"],"scrapedAt": "2026-08-27T15:21:40.069Z","error": null}
โจ Why choose this Actor
- No credentials required. You never hand over a LinkedIn login, a session cookie or a
li_attoken. Nothing about your account is put at risk, because the Actor only reads what LinkedIn already serves to the public. - Exact timestamps, not guesses. LinkedIn shows "1mo". This Actor decodes LinkedIn's own internal IDs into precise ISO 8601 datetimes for both posts and comments, which makes time series analysis and joins actually possible.
- Three input types, one run. Mix post links, company pages and member profiles freely in the same job.
- Repost aware. LinkedIn assigns a fresh activity ID every time content is reshared. The Actor resolves each page down to its underlying content URN and drops repeats, so you do not pay for or analyse the same thread twice.
- Honest about its limits. LinkedIn publishes a maximum of 10 comments per post to logged out visitors. That ceiling is documented here rather than hidden, and the post level totals are still captured in full so you always know what proportion you are seeing.
- Fast and cheap. Plain HTTP against server rendered pages. No headless browser, no 4 GB container. A three post job completes in about two seconds.
- Clean, stable columns. Every field is populated or carries an explicit sentinel. There are no phantom always empty columns padding the schema.
๐ How it compares to alternatives
| This Actor | Cookie based LinkedIn scrapers | Manual copy and paste | |
|---|---|---|---|
| Requires your LinkedIn login | No | Yes | Yes |
| Risk to your account | None | Restriction or ban | Low |
| Exact comment timestamps | Yes | Sometimes | No |
| Company and profile expansion | Yes | Varies | No |
| Comments per post | Up to 10 public | All | All, slowly |
| Individual reactor identities | Aggregates only | Yes | Yes |
| Setup time | Paste a URL | Extract and refresh a session cookie | None |
| Speed | About 2 seconds for 3 posts | Slower, rate limited | Minutes per post |
If you need every one of 449 comments and the name of every single reactor, you need an authenticated tool and you need to accept the account risk that comes with it. If you need the visible conversation, the engagement totals and the reaction mix across many posts, quickly and safely, this is the right tool.
๐ How to use
- Create a free Apify account. New accounts include $5 of free platform credit, which is plenty to try this out: console.apify.com/sign-up
- Open the Actor and go to the Input tab.
- Add one or more LinkedIn URLs. Any of these work:
https://www.linkedin.com/posts/satyanadella_today-we-are-announcing-a-series-of-updates-activity-7487546696537923584-Itvihttps://www.linkedin.com/feed/update/urn:li:activity:7487546696537923584https://www.linkedin.com/company/microsofthttps://www.linkedin.com/in/satyanadella
- Set how many rows you want with Max Items.
- Click Start and watch the log.
- Open the Dataset tab and download as CSV, Excel, JSON or XML, or pull it straight from the API.
{"startUrls": [{ "url": "https://www.linkedin.com/company/microsoft" },{ "url": "https://www.linkedin.com/feed/update/urn:li:activity:7487546696537923584" }],"maxItems": 100,"maxPostsPerSource": 10}
๐ผ Business use cases
Social selling and warm lead generation
People who comment on a post about your problem space have publicly raised their hand. Run the Actor across a competitor's company page, collect everyone who engaged with their product announcements, and you have a list of named prospects with profile URLs who are already thinking about the category. Sort by commentReactionCount to find the commenters whose opinions the audience actually rewards, and start there.
Content strategy and post autopsies
Point the Actor at your own company page and pull the recent posts in one run. Because every row carries postReactionCount, postCommentCount and postTopReactionTypes, you can compute a comments to reactions ratio per post and see which formats provoke discussion rather than passive approval. A post with 11,195 reactions and 449 comments behaves very differently from one with the same reach and 12 comments, and the difference is where your editorial calendar should go.
Competitive and launch intelligence
When a rival ships something, the comment thread is the fastest unfiltered read on how it landed. Collect the threads under their launch posts, look at postTopReactionTypes to see whether the room reacted with PRAISE or with MAYBE, and read the top comments by reaction count to find the objections that resonated. That is your positioning brief, written by their own audience.
Talent sourcing in a niche
Technical posts attract technical commenters. Harvest the threads under posts about a specific stack, framework or research area, and you get a list of professionals who demonstrably follow that topic closely enough to comment substantively. commentText gives you the context to personalise outreach, and commentAuthorProfileUrl gives you the destination.
๐ Automating LinkedIn Comments & Reactions Scraper
- Make and Zapier: trigger a run on a schedule and route new comment rows into your CRM, so any engagement on a target account's posts creates a task automatically.
- Slack: post a daily digest of new comments on your company page into a marketing channel, so nobody has to remember to check.
- Airbyte: sync the dataset into Snowflake, BigQuery or Postgres and join comment activity against your existing account records.
- GitHub: schedule runs from Actions and commit snapshots for a versioned history of a discourse topic.
- Google Drive: drop a fresh CSV or Google Sheet into a shared folder after every run for non technical stakeholders.
- API and webhooks: every run emits a dataset ID. Subscribe to the run succeeded webhook and pull items directly from the Apify API into any system you already run.
๐ Beyond business use cases
- Research: build labelled corpora of professional discourse for studies on workplace sentiment, jargon diffusion or how expert communities respond to technology announcements.
- Personal: track which of your own posts genuinely started conversations, and keep a durable archive of the replies rather than losing them to the feed.
- Non profit: monitor how the public responds to campaign posts across partner organisations, and identify supporters who consistently engage and might advocate.
- Experimentation: the comment plus reaction pairing is a clean natural dataset for sentiment models, engagement prediction and text classification practice.
๐ค Ask an AI assistant about this scraper
Paste this into ChatGPT, Claude or any assistant to get help designing your run:
I am using the ParseForge LinkedIn Post Comments & Reactions Scraper on Apify. It accepts LinkedIn post URLs, company pages and member profiles, and returns one row per public comment with 23 fields including commentAuthorName, commentAuthorProfileUrl, commentText, commentDate, commentReactionCount, postReactionCount, postCommentCount and postTopReactionTypes. LinkedIn exposes at most 10 comments per post publicly. Help me design a run and an analysis to answer this question: [your question here].
โ Frequently Asked Questions
๐ Do I need a LinkedIn account or cookie? No. The Actor reads only the publicly rendered version of a post, exactly what an anonymous visitor sees. You never supply credentials, so your account is never exposed.
๐ข Why do I only get 10 comments on a post with hundreds?
That is LinkedIn's limit, not the Actor's. LinkedIn renders at most 10 comments to logged out visitors and puts the rest behind a sign in wall. The Actor still reports the true total in postCommentCount, so you always know what share you received.
๐ฅ Can I get the list of people who reacted?
Individual reactor identities are only available to logged in users, so no. You do get the exact total in postReactionCount and the set of reaction types used in postTopReactionTypes.
๐ Which URL formats are accepted?
Post links (linkedin.com/posts/...), feed update links (linkedin.com/feed/update/urn:li:activity:...), raw URNs, company pages (linkedin.com/company/...), showcase and school pages, and member profiles (linkedin.com/in/...).
๐ข How many posts do I get from a company page or profile? LinkedIn advertises roughly 10 to 12 recent public posts on those pages. Use Max posts per company or profile to take fewer. Values above 12 have no additional effect because there is nothing more to read.
โฑ Are the timestamps real or estimated?
Real. LinkedIn's activity and comment IDs encode the creation time, and the Actor decodes them into exact ISO 8601 datetimes. commentAge preserves LinkedIn's own relative wording alongside it.
๐ What happens with reposts?
LinkedIn issues a new activity ID each time content is reshared. The Actor resolves every page to its underlying content URN, skips duplicates, and records who reshared it in repostedBy.
๐ญ What if a post has no comments?
By default you still get one row carrying the post details and its reaction data, with the comment columns set to N/A. Turn off Keep posts that have no comments to receive comment rows only.
๐ Do I need a proxy? No. These pages are served without one. A proxy option is available if you run at high volume or start seeing blocked pages, and RESIDENTIAL is the most reliable group for LinkedIn.
๐ฅ What export formats are supported? CSV, Excel, JSON, XML, plus direct API access and integrations with Make, Zapier, Airbyte, Slack, Google Drive and more.
โ๏ธ Is this legal? The Actor collects only publicly available information that LinkedIn serves without authentication. You remain responsible for how you use the data, including compliance with GDPR, CCPA and any applicable local rules on personal data and outreach.
๐ Integrate with any app
Every run writes to an Apify dataset reachable through a REST API, so the output drops into whatever you already use. Native integrations cover Make, Zapier, Airbyte, Slack, Google Drive, GitHub, Google Sheets and webhooks, and the API covers everything else.
๐ Recommended Actors
- Lead Formatter - Clean & Enrich Leads - tidy and enrich the commenter list you just built.
- PR Newswire Press Release Scraper - pair announcement coverage with the social reaction to it.
- Pitchbook Scraper | Investor Email and Contact Data Extractor - go from an engaged commenter to firm level context.
- HubSpot Marketplace Scraper - map the tooling ecosystem your prospects already buy into.
- Goodreads Reviews Scraper - another review and comment dataset with the same clean output shape.
๐ก Pro Tip: browse the complete ParseForge collection.
๐ Need Help? Open our contact form
โ ๏ธ Disclaimer: independent tool, not affiliated with LinkedIn or Microsoft; only publicly available data.