LinkedIn Post Tracker avatar

LinkedIn Post Tracker

Pricing

from $1.70 / 1,000 post collecteds

Go to Apify Store
LinkedIn Post Tracker

LinkedIn Post Tracker

Collects the LinkedIn posts a search engine has indexed for person profiles and company pages: one flat row per post with author, permalink, excerpt and publish date. No request is sent to LinkedIn and no login is used. Built for Clay.

Pricing

from $1.70 / 1,000 post collecteds

Rating

0.0

(0)

Developer

Mamba Labs

Mamba Labs

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

7 days ago

Last modified

Share

📣 What can LinkedIn Post Tracker do?

Point it at LinkedIn person profiles and company pages. It returns the posts a search engine has indexed for each one, as flat rows: permalink, author, a text excerpt, and the publish date. No request is sent to LinkedIn, and no cookie, account, or credential is used.

📦 What you get⚙️ Features and integrations
📝 One row per indexed post: permalink, author, excerpt, publish date
🔑 A stable post_id, so a feed posts each item exactly once
🛡️ Verified authorship: a post counts only when its permalink names the source
🧾 18 flat fields, snake_case, built for Clay
🚫 No request to LinkedIn, ever
📅 posted_since, filtered before anything is charged
🔎 Search index coverage, stated plainly below
⬇️ Export to JSON, CSV, Excel, HTML or XML

Bought by go to market and content teams tracking what a set of companies and executives has published.

🚫 This is not a live feed, an engagement tracker, or a lead database. Since 2026-10-12 it reads only what a search engine has indexed, and that is mostly older posts. On 2026-10-12, across three company pages and two person profiles, it found 46 posts and none was from the last 90 days; the newest was from 2025-10-10. There are no reaction counts, comment counts, media, or commenters.

💡 Why use LinkedIn Post Tracker?

If you need toRead this field
See what a list of companies and executives has publishedpost_text, published_at, author_type
Post each item to Slack or a CRM exactly oncepost_id, which is stable across runs
Open the post itselfpost_permalink

🔑 A stable primary key, and an exact publish date

post_id is LinkedIn's activity URN, read from the permalink. It is stable across runs and safe as a primary key. published_at is decoded from that same id: LinkedIn activity ids carry the time they were created, so the date is exact even when the search snippet carries none.

What changed on 2026-10-12

Until 2026-10-12 this actor fetched profile, company, and post pages from linkedin.com. It no longer sends any request to LinkedIn. These came only from those pages and are no longer in the output: post_media_url, reaction_count, comment_count, commenters_collected, commenters_available, reactors_collected, reactors_status, and every commenter row with its fields (engagement_type, reaction_type, comment_text, comment_like_count, person_name, person_profile_url, person_headline, engaged_at). The inputs collect_commenters, collect_reactors, max_engagers_per_post, and use_residential_proxy are gone with them, and the commenter event no longer exists.

📋 What data can LinkedIn Post Tracker extract?

Every row carries 18 flat fields, told apart by row_type.

FieldTypeMeaning
row_typestringpost or notice. Filter notice out before loading a table.
post_idstringThe activity URN. Stable across runs, safe as a primary key.
post_permalinkstringThe post URL. It names the author's slug, which is how authorship is verified.
author_namestring | nullThe author as the search result title shows it, or null when the title does not name it.
author_urlstringThe source profile or company URL, the join key back to your list.
author_typestringperson or company.
post_textstring | nullThe excerpt the search engine shows, not the full post. Null when the indexed page carries only LinkedIn's sign in text.
published_atstringISO 8601 publish time, decoded from the activity id.
degradedbooleanTrue when the row could not be produced normally, for example the search was refused.
degradation_reasonstring | nullWhy, in plain words.
source_urlstring | nullThe profile or company URL this row came from.
source_typestring | nullperson or company.
collected_atstringISO 8601 time this row was collected.
statusstringWhat happened on this row, from the status values below.
noticestring | nullA plain-English message on notice rows.
row_statusstringok or error on every row. error is a degraded notice row.
error_reasonstring | nullWhy the row is an error, in plain words. Null on an ok row.
billable_events_jsonstringThe charges this row caused, for example [{"event":"post-collected","count":1}]; [] on a free row such as a notice.

⚠️ false and null mean different things on every row. false is a measurement: the actor looked and the answer was no. null is the absence of one. A refused search comes back with degraded: true and a plain-language reason, never as "no posts". no_posts_found after a search that answered means the index lists no post by that author, which is not the same as the author never posting.

🛠️ How to see what a company or executive has published on LinkedIn

  1. Put your targets in profile_urls or company_urls. Person profiles look like https://www.linkedin.com/in/williamhgates, company pages like https://www.linkedin.com/company/microsoft. Country subdomains are fine.
  2. Set posted_since to skip older posts before anything is charged.
  3. Deduplicate downstream on post_id.

🧪 Using it in Clay

Add an Apify enrichment column and map your source column to profile_urls or company_urls. The actor returns many rows for one input row, so use Write to Other Table to send post rows to a posts table filtered to row_type = post.

💵 How much does it cost to track LinkedIn posts?

Pay per event. Each run carries Apify's apify-actor-start event once; everything else is charged per row of output.

EventFires whenPrice
post-collectedOnce per post row returned, after posted_since has filtered$0.0020
apify-actor-startOnce per run, per gigabyte of memory. Set by Apify, not by us$0.00005

Every event at every Apify tier, in dollars:

EventFREEBRONZESILVERGOLD
post-collected0.00200.00190.00180.0017

💳 What you are billed for. posted_since filters before anything is charged, and notice rows are free. The search runs over Apify's residential proxy, which Apify bills to the run as platform usage.

⌨️ Input

Full options are on the Input tab.

FieldTypeWhat it does
profile_urlsarrayPerson profiles, like https://www.linkedin.com/in/williamhgates. Country subdomains are fine.
company_urlsarrayCompany pages, like https://www.linkedin.com/company/microsoft.
posted_sincestringISO date. Posts published before this are skipped before anything is charged.
max_charge_usdnumberOptional spend cap for the run, in USD. The run starts no post whose charge would cross it and writes one free max_charge_reached notice row. Empty means no cap of your own.

Example input:

{
"company_urls": ["https://www.linkedin.com/company/microsoft"],
"profile_urls": ["https://www.linkedin.com/in/williamhgates"],
"posted_since": "2026-09-01"
}

Stopping at your maximum charge: when a run reaches the maximum cost per run you set in Apify, or your max_charge_usd, it starts no new post, keeps every row already charged, and writes one free notice row with status max_charge_reached.

📤 Output

Exports to JSON, CSV, Excel, HTML or XML.

  • post is one row per indexed LinkedIn post.
  • notice is a run-level or source-level message. Filter these out before loading a table.

Status values

ok, no_posts_found, source_unavailable (the search was refused), fetch_failed, no_input, free_tier_exhausted, free_tier_unmetered, sources_truncated, posts_truncated, max_charge_reached.

💡 Tips

  • Set posted_since on every scheduled run. It filters before anything is charged.
  • Deduplicate on post_id, never on the permalink.
  • Treat the output as a sample of what a source published, not the complete feed.

🎁 Free plan

Free Apify plan users get 50 posts a month. Paid plans are uncapped. When the allowance runs out the run stops and says so on a row rather than returning a quietly short result.

⚠️ Known limits

  • Only indexed posts, mostly old ones. A search engine indexes a fraction of LinkedIn posts. On 2026-10-12, 46 posts across five sources were found and none was from the last 90 days. The newest indexed Stripe post found was from 2024.
  • The text is an excerpt, cut by the search engine, and sometimes absent. Sometimes the excerpt is a comment under the post rather than the post itself.
  • No reactions, comments, commenters, or media. They came only from LinkedIn pages.
  • 200 sources per run and 50 posts per source. Hitting either emits a sources_truncated or posts_truncated row saying how many were left out.

❓ FAQ

Does it visit LinkedIn? No. Since 2026-10-12 it sends no request to linkedin.com. Posts come from search results that link to them.

Why are recent posts missing? A post appears only after a search engine indexes it, which can take months or never happen. On 2026-10-12 none of 46 posts found across five sources was from the last 90 days.

How is authorship verified? A LinkedIn post URL starts with the author's slug, for example linkedin.com/posts/stripe_.... A result counts only when that slug is the source's own.

Is post_id safe to use as a primary key? Yes. It is the activity URN and it is stable across runs.

Is this affiliated with LinkedIn? No. See the disclaimer in Support.

🧩 Want other GTM data?

Mamba Labs builds a fleet of GTM enrichment actors that share one flat, Clay-ready output convention, so their rows join on company_domain with no cleaning step:

🔔 Account Hiring Watch🕵️ Agent Accessibility Auditor
🤖 AI Tooling Detector📡 GTM Signals Aggregator
🚀 Prospect Engine📝 Publishing Frequency Tracker
🦋 Bluesky Brand Presence Mapper🔀 Career Change Signal Engine
⏩ Sequencer Lead Push🔄 Company Change Event Feed
📇 Company Contact Details Extractor🧭 Company Discovery List Builder
🏢 Company Firmographic Enricher🪪 Company Identity Resolver
🌐 Company Social Presence Mapper🏷️ Contact Classifier
📈 Influencer Change Monitor🔎 Influencer Finder
🧾 Influencer Lead List Builder👤 Influencer Profile Scraper
📬 Domain Deliverability Checker🔗 Domain to LinkedIn URL Resolver
🛒 Ecommerce Platform Profiler✉️ Work Email Waterfall
🎪 Event Presence Index⚖️ Expert Witness Directory
💵 Company Funding Record💰 Funding and Press Signal Scanner
🐙 GitHub Organization Signal Scanner🧑‍💼 GTM Hiring Signal Scraper
📋 Job Posting Monitor🧱 Tech Stack Signal Detector
🎯 ICP Fit Scorer🔑 Job Board Keyword Signal Scanner
🧳 Job Change Tracker🏛️ Legal Entity Resolver
📰 Link in Bio Scraper and Newsletter Detector💼 LinkedIn Company Page Mapper
📢 Meta Ad Library Monitor📸 Instagram Facebook Brand Presence Mapper
🆕 New Hire Finder📮 Outbound Stack Detector
📄 Page Finder and Extractor🧑 People Finder & Email Verifier
📌 Pinterest Brand Presence Mapper🏆 Government Contract Award Monitor
📅 Reporting Window Finder👽 Reddit Brand Presence Mapper
⭐ Trustpilot Reputation Enricher🤝 Influencer Talent Agency Lookup
👥 Team Page People Extractor🎵 TikTok Brand Presence Mapper
📊 Website Traffic Rank Estimator🏅 Workplace Program Detector
✖️ X Brand Presence Mapper▶️ YouTube Channel Stats Extractor

Every actor in the suite takes a domain or a company and returns one flat row, so they stack in the same Clay table without reshaping anything.

🛠️ Need something custom built for you or your team? Tell us what you are trying to find and we will build it. Talk to Mamba Labs.

🆘 Support

Questions, bugs and feature requests go in the Issues tab on the actor page.

ℹ️ Sourcing and legal. Everything collected comes from public search engine results that link to LinkedIn posts. No request is sent to LinkedIn, and no account or cookie is used. This actor is unofficial and is not affiliated with, sponsored by, or endorsed by LinkedIn or Microsoft. Post rows by a person profile name that person. When you run this actor you are the data controller for that personal data and Apify is the processor. Your lawful basis for collecting and using it is yours to establish. We do not advise on it and nothing here is legal advice.

Built by Mamba Labs.