LinkedIn Company Scraper – Employees, Followers & Firmographics avatar

LinkedIn Company Scraper – Employees, Followers & Firmographics

Pricing

from $4.00 / 1,000 results

Go to Apify Store
LinkedIn Company Scraper – Employees, Followers & Firmographics

LinkedIn Company Scraper – Employees, Followers & Firmographics

Scrape public LinkedIn company pages — no login, no cookies. Get exact employee count, followers, website domain, HQ address, description & logo as clean JSON/CSV/Excel. For B2B lead-gen, TAM sizing & firmographic enrichment.

Pricing

from $4.00 / 1,000 results

Rating

0.0

(0)

Developer

Berkan Kaplan

Berkan Kaplan

Maintained by Community

Actor stats

11

Bookmarked

32

Total users

5

Monthly active users

7 days ago

Last modified

Share

LinkedIn Company Scraper — firmographics & company data

LinkedIn Company Scraper — Employees, Followers & Firmographics

Turn any company's public LinkedIn page into clean, structured firmographic JSON — no login, no cookies, no account. Feed it company handles or URLs and get back exact employee count, follower reach, industry, specialties, founded year, company type, website domain, HQ address, an open-jobs signal, logo and social links — one flat row per company, ready for CRM, lead-gen and TAM work.

Public data only — this reads the logged-out, publicly visible company page. No authentication, no session, nothing to log in to. JSON / CSV / Excel / API out.

  • 🏢 Exact employee count — the real headcount LinkedIn shows, not just a size bucket — ideal for TAM sizing and ICP scoring.
  • 📊 35+ firmographic fields — industry, specialties, founded year, company type, size band, followers, open jobs, HQ, logo & social links.
  • 🔓 No login, no cookies — reads the public, logged-out company page; nothing to authenticate and no credentials to leak.
  • 🔗 Website domain as a merge key — the clean B2B join key to enrich, dedupe and match against your other data sources.

Quick start (API)

Enrich three companies in one call — paste handles, full URLs, or linkedin.com/company/...:

curl -X POST "https://api.apify.com/v2/acts/foxlabs~linkedin-company-scraper/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "companies": ["microsoft", "https://www.linkedin.com/company/stripe/", "apify"], "maxResults": 100 }'

Prefer no code? Open the Input tab, paste your companies (one per line), and click Start — then download the results as JSON, CSV or Excel.

What you get

One clean, flat record per company. A field only appears when LinkedIn publishes it — empty values are dropped, never guessed.

FieldTypeDescription
namestringCompany name
slugstringLinkedIn company handle (the /company/<slug> part)
linkedinUrlstringCanonical LinkedIn company URL
websitestringCompany website domain (e.g. microsoft.com) — the clean merge key
websiteUrlstringFull company website URL as listed
industrystringPrimary industry / sector
companyTypestringCompany type (e.g. Public Company, Privately Held, Nonprofit)
companySizestringLinkedIn's headcount label (e.g. 10,001+ employees)
companySizeBucketstringStandard size band derived from headcount: 1-1010001+
employeeCountintegerExact employee count LinkedIn reports (not a bucket)
employeeCountFormattedstringHeadcount with thousands separators (e.g. 232,244)
employeeCountCompactstringCompact headcount (e.g. 232.2K)
followersintegerLinkedIn follower count
followersCompactstringCompact follower count (e.g. 28.3M)
specialtiesstring[]Company specialties / focus areas
specialtiesTextstringSpecialties joined into one string (A · B · C)
foundedintegerFounding year
descriptionstringCompany description (from the page's structured data)
aboutstringLong-form About / overview text
sloganstringCompany tagline / slogan
jobCountintegerNumber of open jobs detected on the page
phonestringPublic phone number, when the page lists one
addressStreetstringHQ street address
addressLocalitystringHQ city
addressRegionstringHQ state / region
addressPostalCodestringHQ postal code
addressCountrystringHQ country code
headquartersstringHQ location label, when shown
logoUrlstringCompany logo image URL
crunchbaseUrlstringLinked Crunchbase profile, when present
twitterUrlstringLinked X / Twitter profile, when present
facebookUrlstringLinked Facebook page, when present
keywordsstring[]Page keyword tags, when present
sourcestringAlways LinkedIn (public)
sourceCountrystringHQ country code (provenance)
scrapedAtIsostringISO 8601 timestamp of the scrape

A company that couldn't be fetched (private, empty or blocked after retries) is written with an error field instead of the firmographics, so nothing silently disappears from your dataset.

Sample output

Illustrative record (field names and shapes are exactly what the Actor emits; values shown for a large company):

{
"slug": "microsoft",
"linkedinUrl": "https://www.linkedin.com/company/microsoft",
"name": "Microsoft",
"website": "microsoft.com",
"websiteUrl": "https://news.microsoft.com/",
"industry": "Software Development",
"companyType": "Public Company",
"companySize": "10,001+ employees",
"companySizeBucket": "10001+",
"employeeCount": 232244,
"employeeCountFormatted": "232,244",
"employeeCountCompact": "232.2K",
"followers": 28300000,
"followersCompact": "28.3M",
"specialties": ["Business Software", "Developer Tools", "Cloud Computing", "Productivity"],
"specialtiesText": "Business Software · Developer Tools · Cloud Computing · Productivity",
"founded": 1975,
"description": "Every company has a mission. What's ours? To empower every person and every organization to achieve more.",
"slogan": "Empower every person and organization to achieve more",
"jobCount": 4821,
"addressLocality": "Redmond",
"addressRegion": "WA",
"addressCountry": "US",
"headquarters": "Redmond, Washington",
"logoUrl": "https://media.licdn.com/dms/image/.../company-logo_200_200.png",
"crunchbaseUrl": "https://www.crunchbase.com/organization/microsoft",
"keywords": ["cloud", "ai", "productivity", "developer tools"],
"source": "LinkedIn (public)",
"sourceCountry": "US",
"scrapedAtIso": "2026-07-05T12:34:56.789Z"
}

Input & filters

This is an enrichment / lookup Actor: you bring the companies, it returns their firmographics. LinkedIn has no official public search API, so there are no keyword or industry filters — instead you supply an exact list and get precise, one-to-one results.

  • companies (required) — the companies to scrape, one per line. Accepts any mix of:
    • a bare handle — microsoft
    • a full URL — https://www.linkedin.com/company/stripe/
    • a short form — linkedin.com/company/apify
  • maxResults — cap the number of companies scraped in a run (default 1000, up to 100,000). Duplicates are removed before counting.
  • proxyConfiguration — Apify Proxy (automatic) is enough for public company pages and keeps cost low; switch to residential only if you hit blocks at very high volume.

Tip: use the company's exact handle or full URL (https://www.linkedin.com/company/anthropicresearch/), not a guessed name — a short handle can resolve to a different namesake company.

Example inputs (copy & paste)

// 1) Enrich a list of target accounts (handles + URLs mixed freely)
{ "companies": ["microsoft", "stripe", "apify", "https://www.linkedin.com/company/openai/"] }
// 2) Exact full URLs — avoid a short handle resolving to a namesake company
{ "companies": ["https://www.linkedin.com/company/microsoft/", "https://www.linkedin.com/company/stripe/"] }
// 3) Small batch with a hard cap (keep cost tiny)
{ "companies": ["notion", "figma", "linear"], "maxResults": 50 }
// 4) One-off — a single company by its exact handle
{ "companies": ["anthropicresearch"] }
// 5) High-volume run over residential proxy
{ "companies": ["microsoft", "stripe", "apify"], "proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] } }
// 6) Bulk list on the automatic proxy pool, capped
{ "companies": ["microsoft", "stripe", "apify", "openai", "datadog"], "maxResults": 5000, "proxyConfiguration": { "useApifyProxy": true } }

Use cases

  • B2B lead generation & firmographic enrichment. You have a list of target accounts. Feed their handles/URLs and get a CRM-ready row per company — industry, exact headcount, size band, website domain and HQ — so reps prioritise by fit instead of hand-researching each one.
  • TAM / market sizing. Pull exact employee counts (not just buckets) plus HQ country across a company list to size a segment and rank accounts by headcount.
  • CRM enrichment & cleanup. Already have LinkedIn URLs in your CRM? Turn each one into employee size, website domain, industry, founded year and HQ to fill the gaps — missing fields are simply absent, never fabricated.
  • ICP & account scoring. Filter and score on companySizeBucket, industry and founded to flag which accounts match your ideal-customer profile before outreach.
  • Competitive & market research. Track industry, specialties, founding year and the open-jobs signal (jobCount) across a set of competitors to read growth and focus.
  • ABM list building. Use the clean website domain as the join key to dedupe, merge and match companies against your other B2B data sources.

Performance & throughput

Each company is fetched individually from its public LinkedIn page and parsed on the fly, so there's no giant download to wait on — rows stream into the dataset as they complete. Every company is retried up to 5 times across fresh proxy sessions to push past transient blocks, and you can pull up to 100,000 companies in a single run. Overall speed depends on your Apify plan and proxy pool, and on how aggressively LinkedIn is rate-limiting at the time — there are no external API keys or quotas to manage.

Integrations

JavaScript (apify-client):

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('foxlabs/linkedin-company-scraper').call({
companies: ['microsoft', 'stripe', 'https://www.linkedin.com/company/apify/'],
maxResults: 500,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items[0].name, items[0].employeeCount, items[0].website);

Python (apify-client):

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("foxlabs/linkedin-company-scraper").call(run_input={
"companies": ["microsoft", "stripe", "https://www.linkedin.com/company/apify/"],
"maxResults": 500,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item.get("name"), item.get("employeeCount"), item.get("website"))

Also works with Make / n8n / Zapier (Apify app → run this Actor, map the input), scheduled runs, webhooks, and the Apify MCP server so AI agents can call it as a tool.

Data quality

  • Identity is always there. Every successful row has name, linkedinUrl and slug.
  • Depth follows disclosure. Firmographic fields (industry, specialties, founded year, employee count, followers…) are only as complete as what each company chooses to publish on its public page. Large, active companies fill nearly everything; small or bare pages return less.
  • Never guessed. Missing values are dropped from the record rather than set to a placeholder, so any field that is present is a real, page-sourced value.
  • Failures are explicit. A company that can't be fetched is written with an error field, so gaps are visible instead of silent.

Pricing

This Actor runs on the Apify platform — you pay for the platform usage a run consumes, and there's an Apify free tier to evaluate the full field set before you scale. No LinkedIn account, API key or third-party subscription is required. See the Actor's pricing panel on Apify for the current plan.

FAQ

Do I need a LinkedIn login or cookies? No. The Actor reads the public, logged-out company page only — no account, no session, no cookies.

Is this the official LinkedIn API? No. LinkedIn has no official public company API; this tool parses the structured data on the public page. It is not affiliated with LinkedIn.

Can I search LinkedIn by keyword or industry? No — there's no public search API to power that. You supply the companies (handles or URLs) and the Actor enriches exactly that list, one-to-one.

Where do I get company handles? From the company's LinkedIn URL — the part after /company/ (e.g. microsoft). You can also paste the full URL, or pull URLs straight from your CRM or the company's website.

Why did a company return only a few fields? Depth depends on what that company publishes publicly. Missing values are omitted (never invented), so a sparse page yields a sparse — but honest — row.

Does it return personal or employee data? No. It returns company-level firmographics only — no people lists, no employee profiles, no emails.

What export formats are available? JSON, CSV, Excel, or via the Apify API and integrations.

How many companies can I scrape in one run? Up to 100,000 via maxResults. Duplicate inputs are de-duplicated first.

Is there a rate limit? No external key or quota — throughput is bounded by your Apify plan and proxy pool. Each company is retried up to 5 times to ride out transient blocks.

Can a handle resolve to the wrong company? Only if you guess it. Use the exact handle or full LinkedIn URL and results are one-to-one.

Troubleshooting

  • A row has an error field / a company failed → the page was private, empty, or blocked after 5 retries. Check the handle is exact (open the LinkedIn URL in a browser), or switch proxyConfiguration to residential for high-volume runs.
  • Fewer fields than expected → the company didn't publish them. Empty values are dropped, never fabricated — a missing field means LinkedIn didn't show it.
  • The wrong company came back → a short handle matched a namesake. Use the full https://www.linkedin.com/company/<handle>/ URL for an exact match.
  • 0 results / everything failed → your inputs aren't valid LinkedIn company references (each must resolve to a real /company/<handle>), or you're being rate-limited at volume — try residential proxy.
  • Public data only. The Actor reads logged-out, publicly visible company pages — no authentication, no cookies, no session.
  • Not affiliated. This is an independent tool and is not affiliated with, endorsed by, or sponsored by LinkedIn Corporation. LinkedIn® is a registered trademark of LinkedIn Corporation.
  • No official API. There is no public LinkedIn company API; the Actor parses the public page's structured data, so page-layout changes can affect specific fields.
  • Company-level only. No personal or employee data, and no email addresses, are collected.
  • Your responsibility. You are responsible for using the output lawfully and in line with applicable terms, LinkedIn's User Agreement, and privacy law (GDPR / CCPA, legitimate-interest rules). Provided as-is; this is not legal advice.

Support

Questions, a field you'd like added, or a custom build? Open the Issues tab on this Actor, or email info@foxlabs.com.tr. We reply fast.

If this Actor saves you time, a ⭐ review really helps.

Changelog

0.3 — 2026-07-16

  • Ultimate beneficial owner (KYB). Each company is now resolved to its ultimate beneficial owner — a real person or a cross-border parent — by walking UK holding-company ownership chains (Companies House PSC + GLEIF). See who really controls each company (e.g. one owned via layers by a US or private-equity parent). Confidence-gated: the owner is attached only when resolved with high confidence, never guessed. New includeOwnership option (on by default).

0.2 — 2026-07-05

  • Documented the full deep-firmographic field set now emitted (industry, company type, specialties, founded year, open-jobs count, phone, Crunchbase/X/Facebook links, keywords, HQ) on top of the original headcount/followers/website core.
  • Reworked docs: API quick-start, complete field table, sample output, JS/Python/Make/MCP integration snippets, FAQ & troubleshooting.

0.1.1 — 2026-07-05

  • Hardened output handling so an edge-case value can never trip dataset-schema validation.

0.1.0 — 2026-06-09

  • Initial release: public LinkedIn company pages → clean firmographic JSON (exact employee count, company size band, followers, website domain, HQ address, description, logo). Cookieless, JSON/CSV/Excel.

Part of the foXLabs data platform — a suite of public-data company, contact, firmographic, procurement and AI-search intelligence scrapers. Browse the full Actor suite and free how-to guides at data.foxlabs.com.tr.