LinkedIn Company by Domain Scraper
Pricing
from $8.00 / 1,000 company founds
LinkedIn Company by Domain Scraper
Resolve company domains to public LinkedIn company pages with Google SERP evidence and confidence scoring. Cookieless, no LinkedIn login, MCP-ready.
Pricing
from $8.00 / 1,000 company founds
Rating
0.0
(0)
Developer
Khadin Akbar
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share
Turn a list of company website domains into public LinkedIn company page URLs — canonical link, slug, company name, and a confidence score for every input. Paste domains like stripe.com or https://www.hubspot.com; get structured rows back with honest outcome codes (FOUND, NO_MATCH, LOW_CONFIDENCE, and more). No LinkedIn login required.
Built for B2B enrichment, CRM cleanup, and AI-agent pipelines. Each run returns machine-readable JSON with optional Google Search evidence, so you can audit why a domain matched — or why it did not.
What data you get
| Field | Description |
|---|---|
inputDomain | The original domain string you supplied |
normalizedDomain | Cleaned hostname without www |
linkedinCompanyUrl | Canonical https://www.linkedin.com/company/{slug}/ |
linkedinSlug | The company's LinkedIn slug identifier |
companyName | Company name from SERP title (if available) |
source | Always google_serp |
confidence | 0–1 match confidence |
outcome | FOUND / NO_MATCH / LOW_CONFIDENCE / INVALID_INPUT / UPSTREAM_FAILED |
diagnostics | Array of per-query diagnostic objects |
errors | Any error messages for this row |
serpEvidence | (optional) Query, rank, title, and snippet that produced the match |
How it works
- Normalize each domain (strip protocol,
www, validate format). - Build two Google SERP queries:
site:linkedin.com/company "domain.com"and a keyword variant using the domain root. - Parse results with Cheerio for
linkedin.com/company/*links and score each candidate against the input domain (slug match, domain mention in snippet, keyword overlap, rank). - Assign an outcome code:
FOUND— confidence ≥minConfidence, chargescompany-foundPPE event.LOW_CONFIDENCE— match found but below threshold (row written, not charged).NO_MATCH— Google returned no LinkedIn company URLs.UPSTREAM_FAILED— all SERP requests failed.INVALID_INPUT— domain could not be parsed.
Input
{"domains": ["stripe.com", "https://www.notion.so"],"maxResultsPerDomain": 1,"includeSerpEvidence": true,"minConfidence": 0.6}
| Parameter | Type | Default | Description |
|---|---|---|---|
domains | string[] | — | Company domains or URLs to resolve |
maxResultsPerDomain | integer | 1 | Max LinkedIn company candidates per domain (1–5) |
includeSerpEvidence | boolean | true | Include SERP query/rank/title/snippet evidence |
minConfidence | number | 0.6 | Confidence threshold (0–1) below which rows are LOW_CONFIDENCE |
Example output row
{"inputDomain": "stripe.com","normalizedDomain": "stripe.com","linkedinCompanyUrl": "https://www.linkedin.com/company/stripe/","linkedinSlug": "stripe","companyName": "Stripe","source": "google_serp","confidence": 0.95,"outcome": "FOUND","diagnostics": [{"query": "site:linkedin.com/company \"stripe.com\"", "resultCount": 1}],"errors": [],"serpEvidence": [{"query": "site:linkedin.com/company \"stripe.com\"", "rank": 1, "title": "Stripe | LinkedIn", "snippet": "...", "resultUrl": "https://www.linkedin.com/company/stripe/"}]}
Pricing
Pay-per-event. Charged via Apify Pay per event + platform usage pass-through.
apify-actor-start: $0.00005 (one-time per run)company-found: $0.008 per successfully resolved LinkedIn company page
Rows with LOW_CONFIDENCE, NO_MATCH, INVALID_INPUT, and UPSTREAM_FAILED outcomes are not charged.
Limitations
- Resolution is based on Google SERP. If Google blocks or throttles the request, the domain returns
UPSTREAM_FAILED. - Confidence scoring uses keyword matching, not login-gated LinkedIn data. A domain with an unusual name or no SERP presence may return
NO_MATCHeven when a LinkedIn page exists. - Only public LinkedIn company pages reachable from Google are resolved. Private or invite-only pages are not accessible.
- Multi-brand or multi-entity domains (e.g., a holding company with many subsidiaries) may surface a parent company instead of a specific subsidiary.
Legal disclaimer
This actor uses publicly available Google Search results to locate public LinkedIn company pages. It does not scrape LinkedIn directly, bypass authentication, or access private data. Users are responsible for complying with Google's Terms of Service, LinkedIn's Terms of Service, and applicable data protection laws in their jurisdiction. Apify is not responsible for how users use the data retrieved.
Related actors
- LinkedIn Company Search Scraper — keyword/industry/location search for company pages
- LinkedIn Profile Search Scraper — find LinkedIn profiles by keyword and job title
- Email to LinkedIn Profile Scraper — resolve email addresses to public LinkedIn profiles
- Bulk Website Contact Extractor — extract emails and phones from company domains