LinkedIn Company Search - Find Companies, No Cookies
Pricing
Pay per usage
LinkedIn Company Search - Find Companies, No Cookies
Find LinkedIn companies by keyword, industry and location without a login, then pull their full public profile: website, phone, employee count, followers, HQ, specialties, industries and funding. HTTP-first engine. Export CSV, Excel, JSON.
Pricing
Pay per usage
Rating
0.0
(0)
Developer
Andrew Babo
Maintained by CommunityActor stats
0
Bookmarked
449
Total users
84
Monthly active users
10 days ago
Last modified
Categories
Share
LinkedIn Company Search — Find Companies, No Cookies
Discover LinkedIn company pages matching a keyword, location or industry, then enrich them into full company records. No login, no account, no li_at cookie.
How discovery works without a login
LinkedIn's own company search requires an account, so this actor rebuilds the result set from public sources:
- Search engine results for
site:linkedin.com/companywith your keyword, location and industry - LinkedIn job postings — every job card carries its hiring company's page
- LinkedIn's public company sitemap (optional,
useSitemap)
Candidates are de-duplicated by company slug before enrichment.
Measured head-to-head (real runs, not estimates)
Query fintech in Singapore, full mode, 15 companies, cold cache:
| This actor | harvestapi/linkedin-company-search | |
|---|---|---|
| Time | 16.4 s | 5.4 s |
| Cost per 1,000 companies | $0.35 | $4.07 |
| Field coverage | 100% on name, description, website, size, followers, type, industries, locations, HQ | same, minus HQ |
| Blocked requests | 0 | 0 |
About 11x cheaper. Result relevance differs by design: this actor returns operating fintech companies (Airwallex, Stripe, Binance, Coinhako, StraitsX), while pure name matching tends to surface associations and events with "Fintech" in the title.
Input
{"search": "logistics","locations": ["Singapore"],"industries": ["Transportation"],"mode": "full","maxItems": 500}
short— returns the discovered company list (name, LinkedIn URL, snippet) with no extra requests. Cheapest way to build a target list.full— scrapes each company page for the complete record.
Full record fields
name, universalName, linkedinUrl, logo, tagline, description, website, phone, industries, specialities, companyType, employeeCount, employeeCountRange, followerCount, foundedOn, headquarter, locations, fundingData, similarOrganizations, jobSearchUrl.
Every enriched company is cached for 30 days, so repeated or overlapping searches cost far less on the second run.
Honest limits without a cookie
Discovery is a reconstruction of LinkedIn's index, not a copy of it: recall depends on what search engines, job postings and the sitemap expose. Filters are applied to the query, so results are broad rather than exactly matching LinkedIn's internal filter semantics. Employee lists and contact emails are not available to logged-out visitors.
Proxy
Use Apify residential proxies. Sessions are paced and warmed up, and any IP returning a 999 is rotated out.
Output
CSV, Excel, JSON, JSONL or API. Run statistics — candidates discovered, companies scraped, blocked requests, per-field coverage — are in the key-value store under STATS.
Full pagination and LinkedIn filters (new)
The search now walks every source page by page until your maxItems is met or the sources
are drained — asking for 50 returns 50. When it cannot, STATS.stopReason says why:
reachedMaxItems, exhausted, blocked or timeout.
New filters for pipelines that split work by country × industry × size:
industryIds— LinkedIn industry codes (e.g.96IT Services,133Transportation & Logistics,42Financial Services). They widen discovery and are applied to the scraped profile.companySize— LinkedIn size codes (A1,B2-10,C11-50,D51-200,E201-500,F501-1000,G1001-5000,H5001-10000,I10001+) or plain ranges (11-50,1001-5000,10001+). Both spellings behave identically. Companies whose headcount LinkedIn does not publish are kept; setstrictCompanySize: trueto drop them. Unrecognised buckets are logged and ignored instead of emptying the result.
When filters remove every candidate the run still ends SUCCEEDED with
stopReason: filteredOut, plus candidates, rejectedBySize and rejectedByIndustry
in STATS so a pipeline can tell "nothing found" from "everything filtered out".
Measured filter runs (Singapore software, 20 requested, build 0.1.10):
companySize: ["C","D"] → 16 companies, every headcount inside 11-200, 47s, $1.31/1,000;
industryIds: ["4"] → 10 companies, all Software Development;
both together → 1 company; impossible combination → SUCCEEDED, 0 rows, filteredOut.
Unfiltered 50-company run is unchanged: 50/50, website 100%, employeeCount 100%, $0.29/1,000.
Measured run (Singapore logistics, 50 requested): 50 returned, website 98%,
employeeCount 100%, 0 blocked, ≈ $0.49 per 1,000 companies.
foundedOn is { year, month, day } and employeeCountRange is { start, end },
matching harvestapi. includeRunSummary is off by default.
Phone: logged-out LinkedIn company pages carry no phone number (verified, including the
/about tab), so this field stays empty unless you supply liAtCookie.
For AI agents (MCP-ready)
This actor is built to be called by AI agents. It works out of the box with the Apify MCP Server — add it to Claude Desktop, Cursor or any MCP client: the agent can build company lists on its own.
{"mcpServers": {"linkedin-company-search": {"url": "https://mcp.apify.com/?actors=andrew_babo/linkedin-company-search","headers": { "Authorization": "Bearer <YOUR_APIFY_TOKEN>" }}}}
Agent skill (paste into your agent's instructions)
Use the "linkedin-company-search" tool to DISCOVER companies matching akeyword, industry, location or headcount band and return their publicLinkedIn profile data — for market maps, ICP lists and account research.If you already have the company URLs, use "linkedin-company" instead.HOW TO CALL- { "search": "fintech", "locations": ["Singapore"], "maxItems": 50 }- Narrow with "industries" / "industryIds" and "companySize"("strictCompanySize": true to drop companies with unknown headcount).- "maxItems" is the cost driver — request only what the user needs.- "mode": "full" returns full profiles; use the lighter mode when onlynames and URLs are needed.OUTPUT CONTRACT- One row per company: name, LinkedIn URL, industry, size, location,website, description.- Empty results are a valid answer — say no companies matched the filtersand suggest loosening them; never fabricate company names.