Alfalfa

LinkedIn company scraper and API: company data as JSON, no login

Company size, the number of employees on LinkedIn, followers, industry, headquarters and every office are on the public company page of almost every business, and LinkedIn offers no open API to read them for a list of companies. This page shows how to get them as a table from page URLs, company names, websites or a keyword search with filters, what each field means, and where the public page stops.

Updated September 2026. Fields and limits measured on the live site.

What LinkedIn offers, and what it does not

RouteWhat you get
Official APIs (partner programs)Organization data for approved apps, mostly about pages you administer. No lookup of arbitrary companies, no bulk export.
Company search on the websiteFilters by location, industry and size, but results and filters need a login, and there is no export.
Public company pagesName, tagline, description, website, industry, company type, size band, employees on LinkedIn, followers, founded year, specialties, headquarters and office addresses, logo, recent posts, similar pages, and the number of open jobs. Visible without an account. This is what the scraper reads.

The scraper

The LinkedIn Company Scraper on Apify returns one record per company, with the field names the most used LinkedIn company Actors use, so an existing integration switches by changing the Actor name. Four ways in, mixed freely in one run:

Per company: name, universalName, linkedinUrl, id, tagline, description, website, industries, companyType, companySize, employeeCount, employeeCountRange, followerCount, foundedOn, specialities, headquarter and locations with country and state names, logo, backgroundCover, jobSearchUrl, openJobCount (the jobs the company lists on LinkedIn worldwide at the time of the run, with openJobCountText for figures LinkedIn rounds, such as 2,000+), similarOrganizations, affiliatedOrganizations and the recent posts with date, text, reactions, comments, images and shared posts.

Calling it from code

curl -X POST "https://api.apify.com/v2/acts/alfalfa~linkedin-company-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"searches":["stripe.com","hubspot.com","Revolut"],"includePosts":false}'

Fifteen websites come back in under half a minute. For longer lists start the run asynchronously and read the dataset when it finishes; schedules, webhooks and the n8n, Make and Zapier nodes work as for any Apify Actor. The API overview shows the pattern.

Things to know before you trust the numbers

Uses that pay for themselves

Questions people ask

Is this allowed?

Company pages are published to be found and are visible to anyone without an account. Reading public pages without logging in is the position US courts took in the hiQ v. LinkedIn cases. Use the data responsibly: company records are not personal data, but anything you add about people is covered by GDPR.

Why is it cheaper than other LinkedIn company scrapers?

A company page is a few dozen kilobytes and no account has to be kept alive, so the cost per thousand companies is cents. $1 per 1,000 on the free plan and $0.70 on the Business plan, posts included, no start fee; companies from a filtered search cost $1 per 1,000 more, because most pages a narrow filter checks do not pass it.

Does it include open jobs?

Yes. openJobCount gives the number of jobs the company lists on LinkedIn worldwide at the time of the run, at no extra charge; switch Include open jobs count off for a faster run. For the jobs themselves use the LinkedIn jobs scraper.

How do I get more than a few hundred companies from a search?

Split the search: one line per city, per industry or per wording. Every line runs as its own search and a company found twice is saved once.

Open the LinkedIn Company Scraper Read: LinkedIn jobs scraper