LinkedIn Profile Scraper avatar

LinkedIn Profile Scraper

Pricing

Pay per usage

Go to Apify Store
LinkedIn Profile Scraper

LinkedIn Profile Scraper

Pull structured profile facts from any public LinkedIn member URL without a cookie or login. Each row carries name, headline, location, current company, current title, profile summary, top experience, top education, top skills, and profile photo. JSON. Pay per profile.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Ken M

Ken M

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 hours ago

Last modified

Share

LinkedIn Profile Scraper (No Login Required)

Pull structured profile facts from any public LinkedIn member URL. No cookies. No login. No Sales Navigator seat. Each row ships the member name, headline, location, current company, current title, public summary, top experience, top education, top skills, and profile photo. Pay per profile.

Built for B2B sales teams, recruiters, agencies, founders, and CRM enrichment pipelines that need clean structured contact records for prospecting, account research, and lead scoring.

Keywords this actor ranks for: linkedin profile scraper, linkedin people scraper, linkedin scraper no cookie, linkedin profile api, scrape linkedin profile without login, linkedin contact enrichment, linkedin lead scraper, linkedin headline scraper, linkedin experience scraper, linkedin education scraper, linkedin skills scraper, linkedin no login.


Why this actor

Other LinkedIn profile scrapersThis actor
Need your session cookieZero cookies, zero login
Risk your account on every runTouches only public profile pages
Single big text blobName, headline, location, current title, current company, summary all parsed into discrete fields
Experience and education skippedTop experience and education entries shipped per row
No skills surfacedTop public skills shipped as an array

How it works

flowchart LR
A[Profile URL] --> B[Public profile page<br/>no auth needed]
B --> C[Parse JSON-LD<br/>top card and section blocks]
C --> D[Normalize into discrete fields]
D --> E[Push one row per profile]
E --> F[(JSON CSV Excel API)]

The actor hits the public linkedin.com/in/{slug} page through a residential proxy and pulls JSON-LD plus Open Graph meta plus DOM selectors. No cookie passes through the actor at any stage.


What you get per row

flowchart LR
R[Profile row] --> R1[Identity<br/>slug url name photo]
R --> R2[Pitch<br/>headline summary location]
R --> R3[Current role<br/>currentTitle currentCompany]
R --> R4[Career<br/>experience education]
R --> R5[Skill graph<br/>skills]
R --> R6[Reach<br/>followerCount connectionCount]

Pipe straight into a CRM, an account scoring model, or an SDR sequencing tool.


Quick start

Enrich a list of contacts

{
"profileUrls": [
"https://www.linkedin.com/in/williamhgates",
"https://www.linkedin.com/in/satyanadella",
"https://www.linkedin.com/in/jeffweiner08"
]
}

Sales prospecting (skip skills to keep rows lean)

{
"profileUrls": ["https://www.linkedin.com/in/williamhgates"],
"includeExperience": true,
"includeEducation": true,
"includeSkills": false
}

Recruiter sourcing (full career graph)

{
"profileUrls": [
"https://www.linkedin.com/in/satyanadella",
"https://www.linkedin.com/in/sundarpichai"
],
"includeExperience": true,
"includeEducation": true,
"includeSkills": true
}

Sample output

{
"slug": "satyanadella",
"url": "https://www.linkedin.com/in/satyanadella",
"name": "Satya Nadella",
"headline": "Chairman and CEO at Microsoft",
"location": "Redmond, Washington, United States",
"currentTitle": "Chairman and CEO",
"currentCompany": "Microsoft",
"summary": "As chairman and CEO of Microsoft, I define my mission...",
"photoUrl": "https://media.licdn.com/dms/image/...",
"followerCount": 11000000,
"connectionCount": 500,
"experience": [
{
"title": "Chairman and CEO",
"company": "Microsoft",
"dateRange": "Feb 2014 - Present",
"location": "Greater Seattle Area",
"description": null
}
],
"education": [
{
"school": "The University of Chicago Booth School of Business",
"degree": "MBA",
"field": null,
"dateRange": null
}
],
"skills": ["Cloud Computing", "Enterprise Software", "Leadership"],
"scrapedAt": "2026-05-08T10:00:00.000Z"
}

Who uses this

RoleUse case
B2B salesEnrich a target prospect list with title, company, location before outreach
RevOpsBackfill missing contact-level fields in a CRM without paying a data vendor seat
RecruiterScore candidates by experience and education before reaching out
FounderResearch target hires and advisors before booking a call
InvestorPull founder and exec backgrounds for diligence packets
ABM leadCluster contacts by current title and seniority for tiered plays

Input reference

FieldTypeWhat it does
profileUrlsstring[]LinkedIn member URLs or bare slugs. Required.
includeExperiencebooleanKeep the experience array on each row. Default true.
includeEducationbooleanKeep the education array on each row. Default true.
includeSkillsbooleanKeep the skills array on each row. Default true.
concurrencyintegerProfiles processed in parallel. Six is the safe default.
proxyConfigurationobjectApify proxy. Residential is required at any meaningful volume.

API call

curl -X POST \
"https://api.apify.com/v2/acts/YOUR_USER~linkedin-profile-scraper/runs?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"profileUrls": [
"https://www.linkedin.com/in/williamhgates",
"https://www.linkedin.com/in/satyanadella"
]
}'

Pricing

The first three profiles per run are free so you can validate output before paying. After that, each profile row is charged. No surprise add on charges.


FAQ

No. The actor only touches public profile pages. Your account is never touched.

What fields ship if a profile is partly hidden?

LinkedIn varies how much it shows anonymous viewers. Name, headline, location, current title, current company, profile photo, and summary ship reliably. Experience and education depth depends on what the public page renders.

Can I pass bare usernames instead of full URLs?

Yes. williamhgates and /in/williamhgates are accepted alongside the full https://www.linkedin.com/in/williamhgates form.

How fresh is the data?

Each run hits the live profile page, so headline, current role, and recent experience reflect what LinkedIn renders at scrape time. Schedule weekly runs to track changes over time.

Why is connectionCount capped at 500?

LinkedIn publicly displays connection counts as "500+" once a member crosses that threshold. The parsed value reflects exactly what LinkedIn shows.

Is scraping LinkedIn allowed?

This actor reads HTML any anonymous web visitor can see. Respect LinkedIn's terms and rate limit sensibly. Do not redistribute data you have no lawful basis to process.


  • LinkedIn Company Profile Scraper — pull industry, headcount, HQ, and founded year for the company a contact works at
  • LinkedIn Profile & Company Post Tracker — scrape posts from any profile or company without a cookie
  • LinkedIn Hiring Tracker & Salary Intelligence — parsed salary, tech stack, and seniority on every job row
  • LinkedIn Pulse Articles Scraper — long form articles by author or topic
  • Lead Enrichment Pipeline — multi source enrichment for a list of company domains