LinkedIn Company Search Scraper avatar

LinkedIn Company Search Scraper

Pricing

from $5.00 / 1,000 company founds

Go to Apify Store
LinkedIn Company Search Scraper

LinkedIn Company Search Scraper

Search public LinkedIn company pages by keyword, industry and location. Each row has company name, LinkedIn URL and industry, with optional enrichment (employee count, HQ, website, founded year, followers) and an employee-count band filter. No login or cookies.

Pricing

from $5.00 / 1,000 company founds

Rating

0.0

(0)

Developer

Khadin Akbar

Khadin Akbar

Maintained by Community

Actor stats

0

Bookmarked

23

Total users

10

Monthly active users

16 hours ago

Last modified

Share

What is LinkedIn Company Search Scraper?

LinkedIn Company Search Scraper finds public LinkedIn company pages by keyword, industry and location, with no login or cookies. Each matched company becomes one dataset row with company name, LinkedIn URL, slug, industry and search rank. Turn on enrich to add public firmographics (employee count, size band, headquarters, website, founded year, followers, specialties) and filter the list by headcount with minEmployees / maxEmployees.

What you getFields
MatchcompanyName, linkedinUrl, slug, snippet, rank, query, source
Firmographics (with enrich)industry, employeeCount, companySize, companyType, founded, followerCount
Location and contact (with enrich)headquarters, city, state, country, website
Positioning (with enrich)description, specialties, slogan

Best fit

  • Prospect lists: find companies in a niche and city, then keep only a headcount band.
  • Market maps: count and compare companies in an industry and region.
  • CRM enrichment: get the LinkedIn URL, website and size for target accounts.
  • AI agents: one call returns flat company rows for ranking or outreach planning.

Start with this Actor for keyword discovery. If you already designed the search in Sales Navigator, use LinkedIn Sales Navigator Account Scraper instead to convert the Sales Navigator account URL.

Practical scenario

A founder wants SaaS companies in Berlin with 10 to 200 employees. She runs keywords: "SaaS", location: "Berlin", country: "de", enrich: true, minEmployees: 10, maxEmployees: 200. Companies outside the band are skipped and not charged. She sorts the export by employeeCount, opens website for the top matches, and passes the linkedinUrl list to the posts Actor below to see what each company is announcing.

Input

FieldTypeDefaultDescription
keywordsstringemptyFree-text terms, for example fintech payments or solar installer.
industrystringemptyIndustry phrase, for example Software Development.
locationstringemptyCity, region or country, for example Berlin.
countrystringusTwo-letter code for the search region, for example de.
maxResultsinteger25Companies to return and charge (1–500).
enrichbooleanfalseAdd public firmographics to every row (adds the company-enriched event).
minEmployeesinteger0Keep only companies with at least this many employees. Needs enrich.
maxEmployeesinteger0Keep only companies with at most this many employees. Needs enrich.

Provide at least one of keywords, industry or location.

{
"keywords": "renewable energy",
"location": "Germany",
"country": "de",
"maxResults": 20,
"enrich": true,
"minEmployees": 10,
"maxEmployees": 500
}

Output

One dataset row per matched public company page. Sample enriched row (description shortened):

{
"query": "site:linkedin.com/company renewable energy companies \"Renewable Energy\" Germany",
"companyName": "re.venture GmbH",
"slug": "re.venture-gmbh",
"linkedinUrl": "https://www.linkedin.com/company/re.venture-gmbh",
"rank": 2,
"source": "google-search+enrich",
"enriched": true,
"industry": "Renewable Energy Semiconductor Manufacturing",
"followerCount": 5288,
"employeeCount": 21,
"companySize": "11-50 employees",
"companyType": "Privately Held",
"founded": 2017,
"website": "http://www.reventure.de",
"headquarters": "Berlin, BE",
"city": "Berlin",
"country": "DE",
"description": "re.venture GmbH is a German company founded in Berlin by leading renewable energy experts...",
"slogan": "Generate. Capture. Balance. Deliver.",
"scrapedAt": "2026-10-01T12:35:05.562Z"
}

employeeCount is the count of members linked to the company page; companySize is the band the company states. Both come from the public page. Each run also writes OUTPUT and RUN_SUMMARY with an outcome (COMPLETE, VALID_EMPTY, INVALID_INPUT or UPSTREAM_FAILED), counts and companies skipped by the employee band.

Pricing

Pay per event, with Apify platform usage included. You pay the company-found event once for each company saved, the company-enriched event when enrich adds firmographics to that row, and the small apify-actor-start event. Companies skipped by minEmployees / maxEmployees are not charged, and maxResults caps company-found events. See the Pricing tab for current event prices.

Use with AI agents (MCP)

Actor identity: khadinakbar/linkedin-company-search-scraper.

Find 25 fintech companies in London on LinkedIn with 20 to 500 employees, and return their websites and headquarters.

{ "keywords": "fintech", "location": "London", "country": "gb", "maxResults": 25, "enrich": true, "minEmployees": 20, "maxEmployees": 500 }

Read OUTPUT.outcome first: VALID_EMPTY means the search had no matching public company pages (try broader keywords), and linkedinUrl is the stable identifier for follow-up calls.

API example

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('khadinakbar/linkedin-company-search-scraper').call({
keywords: 'solar installer',
location: 'Texas',
maxResults: 25,
enrich: true,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems({ clean: true });
console.log(items.map((c) => [c.companyName, c.employeeCount, c.website]));

Best results

  • Combine one niche keyword with a location; very broad searches return generic pages.
  • Use country to match the market (for example de for Germany) so local company pages rank.
  • Run once without enrich to check the list, then rerun with enrich and a headcount band.
  • Results come from public search, so a narrow niche may return fewer than maxResults companies.

Builder's note

I built this for discovery: finding companies you did not already know about. I found that most buyers immediately filter by size, so I made the headcount band run before billing: you pay only for companies inside your range.

Continue the workflow

FAQ

Do I need a LinkedIn account or cookies?

No. The Actor reads public search results and public company pages only.

Why is employeeCount different from companySize?

companySize is the band the company chose on LinkedIn; employeeCount counts members who list the company. Both are public; filter on whichever suits you (minEmployees / maxEmployees use employeeCount).

Can I search for people?

This Actor finds companies. For people, use LinkedIn People Search Scraper instead.

Responsible use

This Actor collects publicly available company information. Use it in line with LinkedIn's terms, privacy law and your own data policies. This Actor is not affiliated with or endorsed by LinkedIn.