Linkedin Company Employees Scraper Pro avatar

Linkedin Company Employees Scraper Pro

Pricing

from $2.99 / 1,000 results

Go to Apify Store
Linkedin Company Employees Scraper Pro

Linkedin Company Employees Scraper Pro

๐Ÿ‘ฅ LinkedIn Company Employees Scraper Pro extracts employee names, titles, locations, profile URLs, departments & seniority from LinkedIn company pages. ๐Ÿ” Ideal for recruiting, sales prospecting & HR analytics. ๐Ÿ“ฆ Export CSV/JSON. โšก Fast, accurate, scalable.

Pricing

from $2.99 / 1,000 results

Rating

0.0

(0)

Developer

SimpleAPI

SimpleAPI

Maintained by Community

Actor stats

0

Bookmarked

23

Total users

15

Monthly active users

5 days ago

Last modified

Share

Linkedin Company Employees Scraper Pro By School & Followers

A LinkedIn company employees scraper that discovers a company's public employee profiles, extracts identity, location, company and education data for each one, then keeps only the employees who match an alumni school filter and a minimum LinkedIn follower count you set. Built for recruiters, sales teams and B2B lead-generation workflows that need a warm-outreach angle (shared alma mater) and a visibility signal (follower count), not just a raw employee list.

What it does

Give it one or more LinkedIn company URLs/slugs, profile usernames, or plain keywords. For each company target the actor:

  1. Reads the company's own /, /people/, and /about/ pages for embedded employee profile links.
  2. Runs a site:linkedin.com/in/ "<company>" Google search to discover additional public employee profiles.
  3. Scrapes every discovered public /in/โ€ฆ profile page โ€” no LinkedIn login or cookie required โ€” for name, headline, location, current company, education, and follower count.
  4. If you set Alumni schools filter and/or Minimum follower count, drops any successfully-scraped profile that doesn't match before it's added to the dataset. Blocked/error profiles are never dropped by these filters โ€” they're still recorded as an error row so you always have full accounting of what was attempted.

Company-mode targets get both the company-page scrape and the Google search; a bare keyword or username target (no recognizable company URL) uses the Google search alone, exactly like the base scraper.

Why the alumni + follower filter

Buyers of a "LinkedIn company employees scraper" are usually building an outreach or lead list, and two signals repeatedly separate a cold list from a warm one:

  • Shared education โ€” reaching out to someone who studied at the same school as you (or your client) is one of the highest-response-rate cold-outreach openers.
  • LinkedIn follower count โ€” a real, page-sourced follower number (not a guess) tells you who's an active, visible voice at the company worth prioritizing first.

This actor surfaces both, computed for free from data the underlying profile-page fetch already downloads (see How the new data is extracted, below) โ€” no extra HTTP requests per profile, so it runs at the same speed and block-rate as a plain company-employees scrape.

Input

FieldTypeDefaultDescription
targets (required)array of strings["https://www.linkedin.com/company/microsoft"]LinkedIn company URLs/slugs, profile usernames, or keywords. Bulk input supported.
sort_orderstring enumrelevancerelevance / recent / connections โ€” kept for compatibility with the base scraper.
max_commentsinteger0Kept for compatibility; LinkedIn public pages do not expose comments.
proxyConfigurationproxy objectno proxyApify Proxy configuration.
maxEmployeesinteger20Max employee profiles scraped per company (1โ€“1000).
alumniSchoolsarray of strings[]Only keep employees whose LinkedIn education lists at least one of these schools, e.g. ["Stanford University", "MIT"]. Case-insensitive, partial match ("Stanford" matches "Stanford University"). Empty = keep everyone.
minFollowerCountinteger0Only keep employees with at least this many LinkedIn followers. 0 = keep everyone.

Example input

{
"targets": ["https://www.linkedin.com/company/microsoft"],
"maxEmployees": 25,
"alumniSchools": ["University of Washington"],
"minFollowerCount": 500
}

Output

Every successfully-scraped, filter-matching profile is pushed as one dataset row with these fields:

FieldTypeNotes
company_urlstringResolved company URL, or "" for keyword targets
profile_urlstringFinal (redirect-resolved) profile URL
fullname / first_name / last_namestring
headlinestring
public_identifierstringe.g. /in/johndoe
profile_picture_urlstring
locationobject{ country, city, full, country_code }
is_creator / is_influencer / is_premiumbooleanNot detected signals on the public page (always false)
created_timestampintegerUnix time the row was scraped
show_follower_countbooleanAlways true โ€” see follower_count for the real number
current_companystring
companies_detectedarrayEvery /company/ link found on the page
personal_websitestringFirst non-LinkedIn link found on the page
recommendations_receivedarray[{text, author, author_url}], when public
other_contact_detailsobject{ course_links: [...] }
contact_elementsobjectPage-chrome/UI detection detail (not employee contact data)
educationarrayNew. [{institution, institution_url, start_year, end_year}], [] when LinkedIn shows none for that profile
follower_countintegerNew. Real LinkedIn follower count, 0 when the page doesn't expose the counter

A blocked or failed profile is pushed instead as a 3-key error row: {"profile_url", "error", "created_timestamp"} โ€” never silently dropped, and never affected by the alumniSchools/minFollowerCount filters.

How the new data is extracted

Every public LinkedIn profile page ships one <script type="application/ld+json"> tag containing a schema.org Person node. The base scraper already downloads this tag on every profile fetch but never opens it. This variant reads two fields out of that same node, with zero additional HTTP requests:

  • alumniOf โ†’ education (school name, school URL, start/end year)
  • interactionStatistic.userInteractionCount โ†’ follower_count

Both are then used, after the fetch, to decide whether the row passes your alumniSchools/minFollowerCount filters โ€” filtering never triggers an extra request either.

Use cases

  • Recruiting / warm outreach โ€” find candidates at a target company who share your (or your client's) alma mater.
  • Sales prospecting โ€” prioritize outreach to LinkedIn-visible employees (higher follower count) at a target account first.
  • Alumni network mapping โ€” see how many people from a specific school work at a given company.
  • Talent-pool research โ€” combine company-employee discovery with an education filter without manually opening every profile.

Notes and limitations

  • All requests hit public LinkedIn profile pages with no login/cookie โ€” same mechanism as the base scraper. LinkedIn's own HTTP 999 rate-limit block still applies and is retried per the base's existing logic.
  • sort_order and max_comments are accepted for input compatibility but have no effect (LinkedIn's public pages don't support server-side sort or expose comments) โ€” same as the base actor.
  • proxyConfiguration is a real input field; the underlying fetch logic always uses a residential proxy internally regardless of your selection (inherited base behavior).
  • education and follower_count reflect only what LinkedIn's own public profile page discloses โ€” some profiles show neither.

LinkedIn company employees scraper, LinkedIn employee data extractor, LinkedIn alumni filter, LinkedIn follower count scraper, LinkedIn public profile scraper, LinkedIn school filter, LinkedIn education scraper, B2B lead generation, LinkedIn employee discovery, LinkedIn profile data export, LinkedIn scraper no login, company employee list scraper.