LinkedIn Company Scraper
Pricing
from $5.00 / 1,000 company profile delivereds
LinkedIn Company Scraper
LinkedIn Company Scraper with no login or cookies. Give it a URL, slug or company name and get industry, size, headquarters, founded year, website, specialties and followers. $0.005 per company.
Pricing
from $5.00 / 1,000 company profile delivereds
Rating
0.0
(0)
Developer
Agnes Maina
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
4 days ago
Last modified
Categories
Share
LinkedIn Company Scraper: company data from a URL or a name, no login
LinkedIn Company Scraper turns a LinkedIn company URL, a slug or a plain company name into structured company facts: industry, size, headquarters, founded year, website, specialties, followers and employees on LinkedIn. You pay $0.005 per company delivered plus $0.005 per run, and every not-found row is free with a reason.
Limits before you run it: up to 1,000 companies per run, no cookies and no login, and only the main company page is read, not the other LinkedIn page types. It returns company facts, not the employee list, and it will not charge you for a page that does not exist, for a page behind a login wall, or for a name that resolves to a different company.
What you get
One row per company you ask for, read from the public LinkedIn company page.
| Field | What it holds |
|---|---|
name | Company name as shown on LinkedIn |
tagline | The company's own tagline |
industry | Industry as LinkedIn lists it |
companySize | Size band, for example 5,001-10,000 |
employeesOnLinkedIn | People on LinkedIn who list this company as their employer |
headquarters, city, region, countryCode | Headquarters as listed, split out, with the country as ISO 3166 two letters |
founded | Year founded |
companyType | Privately Held, Public Company, Nonprofit and so on |
specialties | Specialties list, null when LinkedIn shows none |
website | Company website |
followers | LinkedIn followers |
about, logoUrl | The About text and the logo URL |
linkedinUrl, slug | The company page that was read, and its URL name, handy as a dedupe key |
input | What you typed, so you can join results to your list |
charged, reason | Whether the row was billed, and why |
scrapedAt | When the row was collected, ISO 8601 |
A RUN_SUMMARY record in the key-value store counts requested, delivered, charged, not found, blocked and name-mismatch rows.
Try it in 30 seconds
- Open the Actor page and click Try for free.
- The input is prefilled with a URL, a slug and a company name. Keep them or paste your own list.
- Click Start. Rows show up in the Companies table as each page is read.
The Apify free plan gives you $5 of platform credit every month, which at this price covers roughly 990 companies once run-start fees are counted. No credit card needed.
Example output
This is the Stripe row, parsed from the page saved on 2026-09-29 (the same page the test suite checks against):
{"input": "stripe","linkedinUrl": "https://www.linkedin.com/company/stripe","slug": "stripe","name": "Stripe","tagline": "Help increase the GDP of the internet.","industry": "Technology, Information and Internet","companySize": "5,001-10,000","employeesOnLinkedIn": 16622,"headquarters": "South San Francisco, California","city": "South San Francisco","region": "California","countryCode": "US","founded": 2010,"companyType": "Privately Held","specialties": null,"website": "https://stripe.com","followers": 1737436,"about": "Stripe builds programmable financial services. Millions of companies...","logoUrl": "https://media.licdn.com/dms/image/v2/...","charged": true,"reason": "company profile delivered","scrapedAt": "2026-09-29T13:02:14.637Z"}
Typing Kenya Airways gives the same shape: slug kenya-airways, industry Airlines and Aviation, size 1,001-5,000, 8,706 employees on LinkedIn, founded 1977, country KE.
Pricing
Pay per event, two events:
| Event | Price | When |
|---|---|---|
| Actor start | $0.005 | once per run |
| Company | $0.005 | per company delivered with name, industry, size and location present |
Worked example: a run of 1,000 companies that all resolve costs 1,000 x $0.005 + $0.005 = $5.005. If 40 of those have no LinkedIn page, you pay for 960, so $4.80 + $0.005 = $4.805.
You are not charged for a company when the page does not exist (reason: "company page not found"), the page loads without the facts block, for example behind a login wall (reason: "missing name, industry, size, location"), or you typed a name and the page found belongs to a different company (reason: "name does not match page (...)"). Those rows still land in the dataset with charged: false, so you can see exactly what was tried. Set a spending limit on the run and the Actor stops cleanly when it is reached.
How it works
- URLs and slugs go straight to the company page.
- A name is first turned into a likely slug (
Kenya Airwaysbecomeskenya-airways). If that page does not exist, or its name does not match what you typed, the Actor runs a Google search limited tolinkedin.com/companyand tries the first company slug it finds. - Each page is fetched through a US residential proxy with a fresh session per attempt, up to 3 attempts.
- Facts are parsed from the page's fact list, top card and structured data. If they are missing the row is marked unreadable and not charged.
Measured on 2026-09-29: 20 out of 20 mixed inputs delivered, including Safaricom, Procter & Gamble, Kenya Airways, Notion and Equity Bank.
Input
| Field | Type | Required | Notes |
|---|---|---|---|
companies | array of strings | Yes | 1 to 1,000 entries per run. Each entry is a company URL, a slug or a company name |
Accepted forms:
- URL:
https://www.linkedin.com/company/stripe(country subdomains such aske.linkedin.comwork too) - Slug:
stripe - Name:
Kenya Airways,Procter & Gamble
{"companies": ["https://www.linkedin.com/company/stripe","asana","Kenya Airways"]}
Use cases
- CRM enrichment. Push a column of company names from HubSpot or Salesforce, get industry, size band and HQ back, and fill the blanks.
- ABM account lists. Filter a target list by
companySizeandindustrybefore sales spends time on it. - Investor and market mapping. Pull founded year, company type, HQ country and follower counts for every company in a sector map.
- Lead scoring by size and industry.
employeesOnLinkedInandcompanySizemake a firmographic score without a paid data vendor. - Dedupe by slug. "P&G" and "Procter & Gamble" resolve to one
slug, a clean join key.
Integrations
Run it from the API with curl:
curl -X POST "https://api.apify.com/v2/acts/agnes.developer.queen~linkedin-company-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"companies": ["https://www.linkedin.com/company/stripe", "Kenya Airways"]}'
The same call works from Python and Node.js with the Apify client. In Make, n8n or Zapier, pick "Run an Actor", choose agnes.developer.queen/linkedin-company-scraper and map your company column to companies. Send results to Google Sheets with the Apify Sheets integration.
Add https://mcp.apify.com?actors=agnes.developer.queen/linkedin-company-scraper to any MCP client and an AI assistant can look up companies on demand.
FAQ
Can I scrape a LinkedIn company page without logging in?
Yes. It reads the public company page LinkedIn serves to logged-out visitors. You never hand over cookies, a session or an account, so there is no account to get restricted.
What if I only have the company name?
Type the name. The Actor guesses the slug, checks the page name against what you typed, and falls back to a Google lookup when the guess is wrong. The resolved linkedinUrl and slug come back on the row so you can verify the match.
Does it return employee count?
It returns two numbers: companySize, the band the company picked (for example 1,001-5,000), and employeesOnLinkedIn, the count of LinkedIn members who list the company as their employer. It does not return the list of employees.
Why was a company not charged?
Look at reason. A free row means the page does not exist, the page loaded without the facts block, or the page found belongs to a different company than the name you typed. You only pay when name, industry, size and location are all present.
How accurate is the name match, and can I run it in bulk?
Every significant word you typed, ignoring Inc, Ltd, PLC and Group, has to appear in the page name, or the page name has to sit fully inside what you typed. "Kenya Airways" matches "Kenya Airways PLC". "Twiga Foods" does not match a page called "Twiga Staffing", and that row comes back free. For exact results pass the company URL. Bulk runs take 1,000 companies, so split larger lists.
Where is the data stored, and does it work with other LinkedIn page types?
Results sit in your Apify dataset for the run. Export them as JSON, CSV, Excel or XML, or read them through the API. Only the main company page is read: other LinkedIn page types, such as school pages, have a different layout and return nothing useful.
Is scraping LinkedIn company pages legal?
The Actor only reads company pages that are publicly visible without logging in, and it collects company facts, not personal data. You are responsible for how you use the data and for complying with LinkedIn's terms, GDPR, CCPA and any other laws that apply to you.
Related Actors
- LinkedIn People Search Scraper finds the people at those companies by job title, billed only when the headline and the public profile confirm the match.
- B2B Leads Finder takes the same company names and adds email evidence for the leads it finds.
- LinkedIn New Hires Finder finds decision makers who joined a company recently.
- LinkedIn Ad Library Scraper returns the ads those companies run on LinkedIn.
Support
Found a company that comes back wrong or free when it should not? Open an issue on the Actor's Issues tab with the input you used and the run ID. Docs and examples: github.com/agnesthedeveloper/linkedin-company-scraper