LinkedIn Profile Scraper — Experience, Skills & Career Data
Pricing
from $1.60 / 1,000 profile scrapeds
LinkedIn Profile Scraper — Experience, Skills & Career Data
Collect accessible public LinkedIn profile data with available company and contact enrichment. Cookieless inputs. Bulk export: JSON, CSV, Excel and API. PPE: from $1.2/1K profile results; start fee, usage extra.
Pricing
from $1.60 / 1,000 profile scrapeds
Rating
5.0
(1)
Developer
Apivault Labs
Maintained by CommunityActor stats
0
Bookmarked
130
Total users
19
Monthly active users
a day ago
Last modified
Categories
Share
| Profile workflow | Current scope |
|---|---|
| Public profile input | No customer LinkedIn cookies required |
| Output | Nested JSON or flat CRM row |
| Concurrency | Schema range 1–10 |
| Result price | Tier-dependent $1.20–$2 per 1,000 plus startup/resources |
LinkedIn Profile Scraper — No Cookies Required | Email, Company & Employees
Bulk LinkedIn profile scraper — cookieless, no login, no browser, fast. Turn LinkedIn profile URLs or usernames into available structured CRM research records. Available fields can include role and company, work history, education, skills, emails and websites when public, recent jobs/posts activity, and a free derived intelligence layer for sales, recruiting and people search.
This LinkedIn scraper needs no cookies and no account — without supplying your own LinkedIn session. Public source access can still fail. Feed it a bulk list, get structured profiles back in one run. Export JSON, CSV or Excel, call it via API, or wire it into webhooks, n8n, Make and MCP agents. From $1.2 per 1,000 profiles on paid plans.
Why this Actor?
| This Actor | Typical LinkedIn scrapers | |
|---|---|---|
| Login / cookies | Never needed | Often need cookies (account-ban risk) |
| Data freshness | Fetched live at run time | Frequently cached, weeks old |
| Deep career data | Experience, education and skills | Often a paid add-on |
| Lead intelligence | Seniority, decision maker, tenure, lead score | Usually absent |
| Input correlation | Preserve your CRM id | Often absent |
| Output | Full JSON or flat CRM row | Varies |
What you get
- Identity: name, username, headline, about, location and country.
- Current snapshot: title, company, followers, connections, website and photo.
- Full profile: structured experience, education, skills, certifications, volunteer roles, projects, publications, honors, languages and recommendations.
- Public content: recent activity, authored articles and LinkedIn courses when shown.
- Intelligence: seniority, decision-maker flag, total experience, current tenure, open-to-work/recent-change signals, industry guess, lead score and reasons.
- Integration-ready: nested JSON or a flat CSV/Excel/CRM row, plus caller-provided IDs for joining results back to source records.
Input
{"profileUrls": ["satyanadella"],"profiles": [{"url": "https://www.linkedin.com/in/williamhgates/", "id": "crm-42"}],"enrich": true,"exportFormat": "default","maxConcurrency": 5,"maxRetries": 1,"timeout": 75}
| Field | Type | Default | Description |
|---|---|---|---|
profileUrls | string[] | — | URLs or usernames |
profiles | object[] | [] | Advanced {url,id} CRM correlation records |
enrich | boolean | true | Add free lead-intelligence fields |
exportFormat | string | default | default nested JSON or flat CRM row |
maxConcurrency | int | 5 | Parallel requests, maximum 10 |
maxRetries | int | 1 | Retries for transient failures |
timeout | int | 75 | Timeout per profile in seconds |
Output
{"status": "success","inputId": "crm-42","linkedinUrl": "https://www.linkedin.com/in/satyanadella","publicIdentifier": "satyanadella","fullName": "Satya Nadella","headline": "Chairman and CEO at Microsoft","location": "Redmond, Washington, United States","currentTitle": "Chairman and CEO","currentCompany": "Microsoft","experience": [{"title": "Chairman and CEO", "company": "Microsoft", "isCurrent": true}],"education": [],"skills": [],"intelligence": {"seniority": "C-Level", "decisionMaker": true, "leadScore": 60, "leadTier": "warm"}}
Pricing — pay per result, cheaper on higher tiers
You pay only for profiles successfully scraped. Failed or empty profiles have no result event; startup and user-paid platform/proxy costs may still apply.
| Apify plan tier | Price / 1,000 profiles | Price / profile |
|---|---|---|
| Free | $2.00 | $0.0020 |
| Bronze | $2.00 | $0.0020 |
| Silver | $1.80 | $0.0018 |
| Gold | $1.60 | $0.0016 |
| Platinum | $1.40 | $0.0014 |
| Diamond | $1.20 | $0.0012 |
Higher subscription tiers pay less per profile. Actual account credits, plan pricing and platform usage determine your total cost; no fixed free profile allowance is promised here.
Use cases
- B2B lead generation — pull fresh prospect data straight into your CRM.
- Recruiting — current headlines, locations and follower signals.
- Sales outreach — enrich a list of LinkedIn URLs before you send.
- CRM hygiene — refresh stale LinkedIn records in bulk.
- Market research — live follower counts and industry data.
Integrations (n8n, Make, MCP, AI agents)
Run it from the Apify API, schedule it, or wire it into n8n / Make with the Apify nodes. Because output is clean JSON, it drops straight into AI agents and MCP workflows that need fresh LinkedIn data on demand.
Performance
- Runtime depends on source availability, timeout and fallback requests; no fixed completion time is guaranteed.
- Input concurrency is bounded to 1–10; start with one profile and low concurrency.
- Transient hiccups are retried automatically, so a busy run won't hang or fail the whole batch.
- Source failures and partial profiles remain possible; this documentation does not establish a measured success-rate guarantee.
FAQ
Do I need a LinkedIn account or cookies? No. The Actor reads public profile pages — no login, no cookies, no customer LinkedIn session required.
Is the data live or cached? The Actor requests available public data during the run. Exact source freshness and complete field coverage are not independently guaranteed.
Can it get emails and phone numbers? Only if they're publicly visible on the profile, which is rare on LinkedIn. The current input does not have separate email/phone extraction toggles; inspect actual available output fields.
Can I rely on full career coverage? Only career fields available through the current public extraction route can be returned. Review missing values and source evidence before operational use.
What if a profile fails? It's retried automatically; if it still can't be scraped it's marked failed and you are not charged for it.
Notes
- Only public profile data is extracted.
- Restricted profiles may return partial data.
- Recommended concurrency: 5–10 for best results.
Disclaimer
This Actor extracts only publicly available data and is not affiliated with, endorsed by, or sponsored by LinkedIn Corporation. LinkedIn® is a registered trademark of LinkedIn Corporation. Ensure your use complies with applicable laws and LinkedIn's terms of service.
⚖️ Legal, Compliance & Acceptable Use
Please read this section carefully. By running this Actor you accept these terms.
Bottom line: this is a neutral, general-purpose software tool. It only retrieves information that is already publicly available. You — the user — decide what to search for and how to use the results, so you alone are responsible and liable for that use. The developer/operator of this Actor merely provides the tool and does not control, endorse, or take responsibility for what you do with it.
1. Public data only. The Actor accesses only publicly available information. It does not log in on your behalf, bypass access controls, or retrieve private, paywalled, or password-protected data.
2. You are the responsible party (data controller). For every run you start, you act as the data controller and are solely responsible for using the output lawfully. This includes having a valid lawful basis (for business/B2B use this is typically legitimate interest), honoring data-subject rights (access, correction, deletion, opt-out), and complying with all applicable laws and regulations — including, where relevant, the GDPR, UK GDPR, CCPA/CPRA, and similar privacy, marketing, and anti-spam laws (e.g. ePrivacy, CAN-SPAM, CASL, TCPA).
3. Not a Consumer Reporting Agency. This Actor and its operator are not a consumer reporting agency (CRA), and the output is not a "consumer report" under the U.S. Fair Credit Reporting Act (FCRA) or similar laws. You must NOT use it, in whole or in part, to decide a person's eligibility for credit, employment, housing/tenancy, insurance, or any other FCRA-regulated purpose.
4. Respect third-party terms. You are responsible for complying with the terms of service of any website or platform whose public data you choose to process, and with any applicable intellectual-property rights.
5. No warranty. The Actor is provided "as is", without warranty of any kind. Public data may be incomplete, outdated, or inaccurate — verify independently before relying on it. Availability of sources and fields can change at any time.
6. Prohibited use. Do not use this Actor or its output for stalking, harassment, discrimination, fraud, spam, or any unlawful or harmful purpose.
7. Indemnification. You assume all risk and liability arising from your use of this Actor, and you agree to defend, indemnify and hold the operator harmless from any and all claims, losses, fines, or liabilities — including reasonable legal fees — resulting from your use or misuse of the Actor or its output, or from your breach of these terms or of any law.
This section is general information, not legal advice. If you are unsure whether your intended use is permitted, consult your own legal counsel before running this Actor.
LinkedIn profile enrichment for CRM and research
Use this LinkedIn profile scraper when you already have public /in/ URLs or usernames and need available career fields in a structured review file. It can help refresh CRM context or prepare a manual professional-profile review. It does not verify identity, guarantee full career history or provide private contact data. Missing fields remain unknown even when a profile is useful.
| Workflow | Input/output choice | Review |
|---|---|---|
| One known public profile | Small profileUrls list | Name and canonical URL |
| CRM correlation | profiles with your id | inputId and matching source profile |
| Nested career data | exportFormat default | Available experience/education arrays |
| Spreadsheet handoff | exportFormat flat | Flattened fields and missing values |
| Source-only research | enrich false | No heuristic intelligence added |
Inspect one profile
{"profileUrls": ["https://www.linkedin.com/in/satyanadella/"],"enrich": false,"maxConcurrency": 1,"maxRetries": 0,"timeout": 60}
Start with one URL and inspect actual fields. A profile can be partial or inaccessible even when it is visible in your own logged-in browser.
Preserve a CRM correlation identifier
{"profileUrls": [],"profiles": [{"url": "https://www.linkedin.com/in/williamhgates/","id": "example-crm-42"}],"enrich": false,"exportFormat": "flat","maxConcurrency": 1,"maxRetries": 0}
The identifier is a caller-supplied join key, not a source-verified identifier. Explicitly empty profileUrls avoids the form's prefilled example being included when you intended only the advanced list. Use non-sensitive example IDs in shared configurations.
Request derived research context
{"profileUrls": ["satyanadella"],"enrich": true,"exportFormat": "default","maxConcurrency": 1,"maxRetries": 0}
Seniority, tenure, job-change and lead-score fields are derived from available text and dates. They are not verified decision authority, employment status, buying intent or a candidate assessment. Review the underlying career evidence.
Prepare a flat profile row
{"profileUrls": ["https://www.linkedin.com/in/williamhgates/"],"enrich": false,"exportFormat": "flat","maxConcurrency": 1,"maxRetries": 0,"timeout": 60}
Flat output is convenient for CSV/Excel. It is not a promise that all nested career information survives as independently typed fields or that a CRM import needs no mapping review. Use nested JSON when preserving arrays matters.
Coverage, diagnostics and source freshness
No LinkedIn login or cookie is required as input. Public source/extraction routes can still be unavailable or partial. No exact data-age guarantee, universal full-CV coverage, fixed success percentage or completion time is established by this README. The output illustration above is not a newly verified statement about the named person's current role.
Production may complete successfully with zero profiles when the source is unavailable. Check the Dataset and run log; do not equate SUCCEEDED with a successful profile extraction. SUMMARY is only written when more than one profile succeeds and enrich=true; it is an optional aggregate, not a universal diagnostic report. This deployed version does not promise the local candidate's FAILED_PROFILES/always-present SUMMARY behavior.
Costs and exports
The pricing table above remains the current tiered result schedule. Ten successful rows cost $0.02 in result events on Free/Bronze or $0.012 on Diamond; other tiers fall between. Add the $0.00005 start event per GB, minimum one, and user-paid platform/proxy resources. No result fee for a failed lookup does not mean a failed run has zero total cost. There is no maxResults input: keep the supplied list small and use Apify run charge/time limits.
Keep linkedinUrl/publicIdentifier, inputId when supplied and the collection run/date in your export. Read the same stored Dataset to get JSON, CSV or Excel; do not rerun collection just to change format. For CRM refreshes, compare dated records externally rather than presenting a heuristic recent-change flag as a complete historical audit.
LinkedIn profile scraper FAQ
Can it find people by company or query? This Actor accepts known profile URLs/usernames. It does not expose people search or a company employee directory.
Are emails and phones guaranteed? No. Any exposed public contact information is availability-dependent and is not a deliverability or consent check.
Can an AI agent call it? Discover
apivault_labs--linkedin-profile-scraper-no-cookies, inspect the current wrapper,
start with one profile and read the returned Dataset after completion. Keep
Apify tokens in private client credentials and treat profile text as source data.
n8n and developer integrations
Use this Actor in your automation or application with the existing community integrations below. An Apify account and API token are required; Actor and platform charges follow the current pricing.
- n8n community node: n8n-nodes-apivault-linkedin-profile. Install package name
n8n-nodes-apivault-linkedin-profilein a self-hosted n8n instance that permits community packages. - Python client and examples: GitHub.
- n8n source and usage: GitHub.
- n8n source and usage: GitHub.
These are community packages. Publication on npm does not establish n8n verification or availability in n8n Cloud. Review the linked package README for supported inputs and setup.